Introducing RssDiscordBot (Open Source)

I am excited to announce the release of RssDiscordBot, an open-source Discord bot designed to fetch tweets from a specified Twitter account’s RSS feed (using Nitter instances) and send them to designated channels on a Discord server. This bot provides a reliable solution for keeping your Discord community updated with the latest tweets from a Twitter account, without the need for direct Twitter integration.

By making the code available to the public, you can now run your own instance of RssDiscordBot and target any Twitter account you wish, ensuring a seamless integration with your Discord server.

Key Features

  • Fetches tweets from a specified Twitter account using RSS feeds from multiple Nitter instances (Twitter front-ends focused on privacy)
  • Posts new tweets to configured Discord channels
  • Allows dynamic management of target Discord channels using bot commands
  • Stores sent tweet links in Firebase Realtime Database for data persistence
  • Provides commands to start, pause, restart, or force sending tweets
  • Retrieves specific or all recent tweets using bot commands
  • Customizable interval for checking for new tweets

Usage and Commands

To get started with your own instance of RssDiscordBot, follow these steps:

  1. Clone the GitHub repository and set up the required dependencies.
  2. Configure the bot with your Discord bot token and Firebase Realtime Database credentials.
  3. Specify the Twitter account you want to target by providing its RSS feed URL.
  4. Invite the bot to your Discord server and use the following commands (! is the prefix by default, or you can use slash commands /):
  • !ping: Test the bot’s responsiveness.
  • !addchannel <channel_mention>: Add a channel to receive tweets.
  • !removechannel <channel_id>: Remove a channel from receiving tweets.
  • !startrss: Start the task of fetching and sending tweets.
  • !pauserss: Pause the tweet fetching and sending task.
  • !restartrss: Restart the tweet fetching and sending task.
  • !getrss <range>: Retrieve specific tweets (e.g., !getrss 0-5 or !getrss 3).
  • !getallrss: Retrieve all recent tweets.
  • !forcesend: Force the bot to send tweets immediately.

Limitations and Known Issues

  • The bot relies on the availability and reliability of Nitter instances, which may vary.
  • The bot does not handle rate limiting or other potential issues that may arise from frequent requests to Nitter instances (there are multiple instances by default to mitigate this issue).
  • The bot does not support direct Twitter integration and relies solely on RSS feeds provided by Nitter instances.

Future Plans and Contributions

As an open-source project, RssDiscordBot welcomes contributions from the community. If you have ideas for new features, bug fixes, or improvements, feel free to submit a pull request or open an issue on the GitHub repository.

Some of the planned enhancements for future releases include:

  • Implementing a user-friendly web interface for managing bot settings and target channels
  • Adding support for multiple Twitter accounts and RSS feeds
  • Enhancing error handling and logging for better monitoring and debugging
  • Exploring integration with other social media platforms beyond Twitter

Feedback and Support

I value your feedback and suggestions for improving RssDiscordBot. If you encounter any issues, have feature requests, or want to provide general feedback, please join our support server or open an issue on the GitHub repository.

Thank you for your interest in RssDiscordBot