A bot to synchronise chat between an DC hub and a Telegram supergroup. Tags: NMDC Written in Go [go-get]code.ivysaur.me/nmdc-telegramfrontend git https://git.ivysaur.me/code.ivysaur.me/nmdc-telegramfrontend.git[/go-get] =FEATURES= - Supports NMDC / NMDCS / ADC / ADCS hubs - Automatically upload photos/files/videos/audio/stickers to a Contented server for DC users - Fallback upload to thumbnail-only if exceeding declared Contented file size limit - Convert telegram quoted messages to DC quoting style - Exclude messages from multiple hub nicks (e.g. `Hub-Security` / `PtokaX` and helper bots) - Standalone binary - PM with native users - Get native userlist inside the telegram group chat - Option for length requirement on native nick - Disconnect telegram users who fail to log in to the upstream hub =SETUP= Create a new telegram bot - Use BotFather to create a new bot - Use BotFather to disable its privacy mode for group chats - Use BotFather to add commands (that appear in the groupchat). Recommendation: `userlist - List native online users` Create a telegram group - Manually create a group chat and add the bot to it - Convert group chat to supergroup - Grant bot to be an administrator (including ability to add more administrators) - Settings > "Who can add members" > Only administrators - Create an invite link Handover to nmdc-telegramfrontend - Run this bot with no -GroupChatID, to learn the groupchat ID - Post a test message in the group chat, to discover the groupchat ID - Leave the group chat (long press on mobile, can't do it on desktop) - Run this bot with -GroupChatID for normal operation =USAGE= Chat with the bot to enter/leave the synchronised channel. Sometimes the telegram invite links can take a few minutes to activate, especially if there has been unusual activity (e.g. frequent join/parts) =CHANGELOG= 2018-06-10 1.0.1 - Send DC captions on TG photos and voice clips - Send DC message when sharing a TG contact - Fix a cosmetic issue with missing format specifier in log message 2018-06-09 1.0.0 - Initial public release 2018-06-03 - Private beta