A product of Tempest Solutions
This software is developed and maintained by Tempest Solutions, a company regulated by UK and international laws and regulations. Cross-Platform Chat Bot, along with Server Companion and Clan Commander, are official products of Tempest Solutions.
This bot enables seamless communication between Discord and Telegram platforms. Users can chat across platforms while maintaining their native chat experience. Messages sent in a designated Discord channel are automatically forwarded to a linked Telegram chat, and vice versa.
- Two-way message relay between Discord and Telegram
- Admin-only configuration via Discord slash commands
- Persistent configuration storage
- Platform-specific message formatting
- Easy setup and configuration
- Python 3.8 or higher
- nextcord (discord.py is discontinued)
- python-telegram-bot (v20 or higher)
- python-dotenv
- httpx
- Clone this repository
git clone https://github.com/Tempest-Solutions-Company/xchat- Install required packages
If you only need Discord functionality, you can install with:
pip install nextcord python-dotenvFor full cross-platform functionality including Telegram:
pip install nextcord python-telegram-bot>=20.0 python-dotenv httpx- Create and configure the
.envfile
DISCORD_TOKEN=your_discord_bot_token_here
TELEGRAM_TOKEN=your_telegram_bot_token_here
- Go to Discord Developer Portal
- Create a new application
- Go to the Bot section and create a bot
- Enable the following Privileged Gateway Intents:
- Message Content Intent
- Server Members Intent
- Presence Intent
- Copy the bot token to your
.envfile - Generate an invite link with the following permissions:
- Send Messages
- Read Messages/View Channels
- Manage Messages
- Embed Links
- Add the bot to your server using the generated invite link
- Message @BotFather on Telegram
- Create a new bot using the
/newbotcommand - Copy the bot token to your
.envfile - (Optional but recommended) Disable privacy mode:
- Send
/mybotsto BotFather - Select your bot
- Choose "Bot Settings"
- Select "Group Privacy"
- Select "Turn off"
- Send
All configuration slash commands in this bot require Discord Administrator permissions. This is by design to prevent unauthorized users from changing your bot's configuration. Only server administrators can run the setup and configuration commands.
- Run the bot using
python main.py - In Discord, go to the channel you want to use for cross-platform chat
- Use the command
/set_chat_channel #your-channel-name(requires administrator permissions) - The bot will confirm the channel has been set up
- In Discord, use the command
/telegram_invite_link(requires administrator permissions) - Add the bot to your Telegram group using the provided link
- Make the bot an admin in the Telegram group (this is important!)
- Send a message in the Telegram group
- In your Telegram group, send the command
/chatidor/id - The bot will reply with the chat ID (usually looks like
-123456789) - Copy this chat ID
- In Discord, use the command
/link_telegram -123456789(replace with your actual chat ID) - The bot will confirm the successful linking
- Test the connection by sending a message in Discord and checking if it appears in Telegram
- Send a message in Telegram and check if it appears in Discord
/status- Show the current status of your cross-platform integration/set_chat_channel- Set the Discord channel for cross-platform chat/link_telegram- Link a Telegram chat to the current Discord channel/telegram_invite_link- Get an invite link for your Telegram bot
/reset_telegram_config- Reset all Telegram chat configurations/explain_crosschat- Learn how the cross-platform chat works
-
Messages not being relayed:
- Make sure the bot is an admin in your Telegram group
- Verify that you're using the correct channel in Discord
- Check that the chat ID format is correct (group IDs usually start with a minus sign)
-
Privacy Mode Issues:
- By default, Telegram bots have privacy mode enabled
- Either make the bot an admin in the group OR
- Disable privacy mode via BotFather
-
Command errors:
- Verify you have admin permissions in Discord
- Check that the bot has necessary permissions
-
Getting the right Chat ID:
- Group chat IDs typically start with a minus sign (e.g.,
-1001234567890) - Make sure to include the minus sign when linking the chat
- Group chat IDs typically start with a minus sign (e.g.,
This software is copyright © Tempest Solutions 1997-2025.
All rights reserved. This software is provided for use under the following conditions:
- You may use and modify this software for personal or organizational purposes
- You may not redistribute this software without explicit permission
- You must maintain all branding and attribution in user-facing elements
The "Powered by Tempest Solutions" branding in message footers must be maintained in all deployments and modifications of this software.
All messages relayed through this bot include a footer with "Powered by Tempest Solutions" which links to https://tempest-solutions.org.uk. This branding must be maintained as per the license agreement and company requirements.
For licensing inquiries or commercial use permission:
- Website: https://tempest-solutions.org.uk