A Bot that Forwards Tweets to Telegram using Airtable as a database.

Overview

Twitter Telegram Forward

A Bot that Forwards Tweets to Telegram using Airtable as a Database.

Features:

  • Handles multiple twitter and telegram channels.
  • Custom delay for each entry.
  • Automatically embeds images and videos to telegram.
  • ReTweets can be enabled or disabled.
  • Sends telegram messages with silent notifications.

Setup

Airtable Database

  1. Create an (Airtable Account
  2. Create a new Workspace.
  3. Add a new base and import the "Twitter Telegram.csv" file. Or create from scratch using the template below:
        id(Single Line Text),Twitter(Single Line Text),Telegram(Single Line Text),Tweet-ID(Single Line Text),
        RT(Checkbox),Silent(Checkbox),Delay(Number)
    
  4. Get the Airtable ID:
    • pressing the "?" icon near "HELP" (Top Right).
    • Clicking on "API Documentation".
    • Copy the ID in the middle of the page after the words "The ID of this base is ".
    • Add the ID to the DB_AIRTABLE_ID in the config file. Note: Omit the do at the end.
  5. Get your Airtable API Key:

Telegram Bot

  1. You can create a new bot via (@BotFather).
  2. Add the Bot token you got to the BOT_TOKEN in the config file.

Twitter API

  1. You will need an Application-only authentication token from Twitter (more info here). Optionally, you can provide a user access token and secret. You can get this by creating a Twitter App here.

Bear in mind that if you don't have added a mobile phone to your Twitter account you'll get this:

You must add your mobile phone to your Twitter profile before creating an application. Please read https://support.twitter.com/articles/110250-adding-your-mobile-number-to-your-account-via-web for more information.

  1. Get a consumer key, consumer secret, access token and access token secret (the latter two are optional), fill in your config.py.

Running the Bot

  1. pip install -r requirements.txt
  2. Run it! python main.py (Check the Filling the Airtable Base section before.)

Filling the Airtable Base

  • Both Twitter and Telegram fields should start with @.
  • Private channels or normal user chats can also be used. You can get the ID using @JsonDumpBot.
    • No need to start with a @ in this case.
  • The Tweet-ID field can be left empty. On the first run, the bot will fill it with the latest tweet ID.
  • RT Field need to be checked in order to forward Retweets.
  • Delay field is in seconds. If left empty, it will be set to 360 seconds.
  • After adding a new row in the airtable, the bot needs to be restarted. If a row is changed, the bot does NOT need to be restarted.

TODO

  • Create Heroku Auto Setup.
  • Setup Cron in order to keep bot running
  • Create Logic for Replies (Only forward user threads).
Owner
George Bakev
Full Stack Developer. Python and React. I Like Automation, OSINT and Machine Learning.
George Bakev
Simple spam bot made in python

Simple Spam Bot A Simple and easy way to be the most hated person between your friends, All you have to do is spam the group chat using this bot until

Kareem Osama 6 Sep 05, 2022
Gorrabot is a bot made to automate checks and processes in the development process.

Gorrabot is a Gitlab bot made to automate checks and processes in the Faraday development. Features Check that the CHANGELOG is modified By default, m

Faraday 7 Dec 14, 2022
A Telegram bot to download posts, videos, reels, IGTV and a user profile picture from Instagram!

Telegram Bot A telegram bot to download media from Instagram! No API Key or Login Needed! Requirements You must have python installed (of course) You

Simon Farah 2 Apr 10, 2022
Discord Crypto Payment Cards Selfbot

A Discord selfbot that serves the purpose of displaying text and QR versions of your BTC, LTC & ETH payment information for easy and simple commercial or personal transactions.

2 Apr 12, 2022
Draw your telegram bot in draw.io and generate its code

README Contents: Draw your bot Install requirements Registering a telegram bot Draw bot Start point Message block Single choice block Functions block

DENIS TSITKO 23 Nov 09, 2022
Infrastructure template and Jupyter notebooks for running RoseTTAFold on AWS Batch.

AWS RoseTTAFold Infrastructure template and Jupyter notebooks for running RoseTTAFold on AWS Batch. Overview Proteins are large biomolecules that play

AWS Samples 20 May 10, 2022
This is a tutorial on how to make a Discord Bot using the discord.py library

HowToMakeADiscordBot This Github repository is here to help you code a Discord Bot using the discord.py library! 1 - Setup: Download the code inside t

Baz 1 Oct 31, 2021
A generative art library for NFT avatar and collectible projects.

Generative NFT Art Introduction The generative-art-nft repository is a library for creating generative art. It was developed for the purpose of creati

Rounak Banik 657 Jan 02, 2023
MAASTA is a wrapper to create an Ansible inventory for MAAS instances that are provisioned by Terraform.

MAASTA is a wrapper to create an Ansible inventory for MAAS instances that are provisioned by Terraform.

Saeid Bostandoust 144 Dec 16, 2022
Python binding for Microsoft LightGBM

pyLightGBM: python binding for Microsoft LightGBM Features: Regression, Classification (binary, multi class) Feature importance (clf.feature_importanc

Ardalan 330 Nov 18, 2022
Manage gmail account using python, forget about imap and just code what you supposed to do.

GGmail Manage gmail account using python, forget about imap and just code what you supposed to do. Help See documentation for more details. Install In

Dylan Do Amaral 6 Sep 23, 2022
Deepl - DeepL Free API For Python

DeepL DeepL Free API Notice Since I don't want to make my AuthKey public, if you

Vincent Young 4 Apr 11, 2022
A GitHub Actions repo for tracking the dummies sending free money to Alex Jones + co.

A GitHub Actions repo for tracking the dummies sending free money to Alex Jones + co.

Egarok 2 Jul 20, 2022
Quickly and efficiently delete your entire tweet history with the help of your Twitter archive without worrying about the pointless 3200 tweet limit imposed by Twitter.

Twitter Nuke Quickly and efficiently delete your entire tweet history with the help of your Twitter archive without worrying about the puny and pointl

Mayur Bhoi 73 Dec 12, 2022
AWS DeepRacer Free Student Workshop: Run faster by using your custom waypoints

AWS DeepRacer Free Student Workshop: Run faster by using your custom waypoints Reward Function Template for waypoints def reward_function(params):

Yuen Cheuk Lam 88 Nov 27, 2022
Easy & powerful bot to check if your all Telegram bots are working or not

Easy & powerful bot to check if your all Telegram bots are working or not. This bot status bot updates every 105 minutes & runs for 24x7 hours.

35 Dec 30, 2022
A light wrapper around FedEx's SOAP API.

Python FedEx SOAP API Module Author: Greg Taylor, Radek Wojcik Maintainer: Python FedEx Developers License: BSD Status: Stable What is it? A light wra

155 Dec 16, 2022
Scratch2py or S2py is a easy to use, versatile tool to communicate with the Scratch API Based of Scratch2py

Scratch2py Scratch2py or S2py is a easy to use, versatile tool to communicate with the Scratch API Based of Scratch2py Installation Run this command i

2 Jan 13, 2022
ShadowClone allows you to distribute your long running tasks dynamically across thousands of serverless functions and gives you the results within seconds where it would have taken hours to complete

ShadowClone allows you to distribute your long running tasks dynamically across thousands of serverless functions and gives you the results within seconds where it would have taken hours to complete

240 Jan 06, 2023
arweave-nft-uploader is a Python tool to improve the experience of uploading NFTs to the Arweave storage for use with the Metaplex Candy Machine.

arweave-nft-uploader arweave-nft-uploader is a Python tool to improve the experience of uploading NFTs to the Arweave storage for use with the Metaple

0xEnrico 84 Dec 26, 2022