Simple & Customisable RSS Client for IRC
.screens | ||
commands | ||
config | ||
.dockerignore | ||
.gitignore | ||
bot.js | ||
docker-compose.yml | ||
Dockerfile | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md |
Mercury
Simple & Customisable RSS Client for IRC.
This bot is not completed, expect bugs/crashes/errors. Use in production is disadvised at this stage.
Commands
m!feed [USER/FEED/ALIAS] [ENTRIES]
- Return the last x amount of entries from any RSS feed or your own saved feeds (if you have saved feeds)m!twitter [USER] [ENTRIES]
- Return the last x amount of tweets from a particular user.m!opt [CATEGORY] [OPTION] [VALUE]
- Control bot options, see wiki for info on usage.
Deployment
- Install Docker (required) and Docker Compose (optional, but strongly recommended, this guide assumes you have it)
- Rename
config/example.default.json
toconfig/default.json
and modify it accordingly. A list of variables and their descriptions can be found in this repos wiki. You do not need to do anything withexample.usersettings.json
unless you wish to predefine settings prior to the bots first start, the usersettings file will be made when any options are set at runtime. - Run
docker compose up
to begin. Append-d
to start in the background and--build
if you make any changes to any files.
Support
If you need assistance with installation or usage, join #5000 on irc.supernets.org
TODO
Once the following are completed, I will consider this project functional and ready to use in production.
- Grab RSS feeds via URL
- Allow users to save feeds and easily grab them all at once (needs tweaking still but mostly done)
- Alias support
- Grab feeds at set intervals and post new content in a set channel
- Migrate from a JSON file to a DB for user settings
- Extensive testing and applicable error handling, also more descriptive error messages
- Ensure wiki is updated
- Publish Docker image so the client does not need to be built by end users
License
This software is licensed under the ISC License, its full text can be found here.
Some required packages may be using licenses other than the ISC License. A full
list of packages can be found in package-lock.json
and their licenses can be
found on their respective homepages/repositories.