{"id":23091796,"url":"https://github.com/tgbot-collection/teletweet","last_synced_at":"2025-08-16T09:30:42.635Z","repository":{"id":45971233,"uuid":"305641928","full_name":"tgbot-collection/TeleTweet","owner":"tgbot-collection","description":"🦉 A telegram Twitter bot that will allow you send tweets!","archived":false,"fork":false,"pushed_at":"2024-01-15T20:07:10.000Z","size":11841,"stargazers_count":54,"open_issues_count":0,"forks_count":17,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-05-01T19:57:13.447Z","etag":null,"topics":["bot-tweet-message","telegram-twitter-bot","telegrambot","tweets","twitter-bot","video-tweet"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tgbot-collection.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-10-20T08:33:32.000Z","updated_at":"2024-04-12T13:57:50.000Z","dependencies_parsed_at":"2023-11-15T17:40:53.592Z","dependency_job_id":null,"html_url":"https://github.com/tgbot-collection/TeleTweet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tgbot-collection%2FTeleTweet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tgbot-collection%2FTeleTweet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tgbot-collection%2FTeleTweet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tgbot-collection%2FTeleTweet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tgbot-collection","download_url":"https://codeload.github.com/tgbot-collection/TeleTweet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230026485,"owners_count":18161609,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot-tweet-message","telegram-twitter-bot","telegrambot","tweets","twitter-bot","video-tweet"],"created_at":"2024-12-16T21:20:04.371Z","updated_at":"2024-12-16T21:20:05.152Z","avatar_url":"https://github.com/tgbot-collection.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TwitterBot\n\n🦉 A telegram Twitter bot that will allow you to send tweets!\n\nSupports Twitter API v2! 🎉🎉🎉🎉🎉🎉\n\n# This bot runs perfectly on DartNode!\n\n\u003ca href=\"https://dartnode.com/?via=benny\"\u003e\u003cimg src=\"assets/dartnode.png\" width=\"500px\"  alt=\"DartNode\"/\u003e\u003c/a\u003e\n\nFind out more on [DartNode](https://dartnode.com/?via=benny)\n\n# Features\n\nAll the following features rely on authorized users.\n\n* send text tweet\n* send tweet with one photo(photo and document are supported.)\n* reply bot tweet message to add more tweets to this thread\n* reply `/delete` to delete tweet\n* ~~send any video tweet to download the video~~ If you have Basic or Access subscription, you can download video tweet.\n* send pictures as media group, it will result in multiple photos in your tweet(max photo restrictions is 4)\n\n# Commands\n\n```\nstart - Start using it today\nsign_in - Go to sign in with Twitter\nsign_off - sign off from Twitter\nhelp - What is this bot\nping - Status about this bot\ndelete - Delete tweet\n```\n\n# Usage\n\n## Screenshots\n\nThe most simple way to tweet!\n\n![](assets/tweet.png)\n\n## Sign in\n\nChat with [this bot](https://t.me/tele_tweetbot), and go to oauth by its instruction:\n![](assets/intro.png)\n\nCopy and paste the auth code to this bot. And you're good to go!\n\n## Tweet\n\n### New thread tweet\n\nSend any text message, photo/photo as file with caption will send tweet with photos.\n\n![](assets/tweet_web.png)\n\n### Reply to this thread\n\nReply to bot's tweet message,\n\n![](assets/thread-bot.png)\n\nand you'll consult in a series of thread.\n\n![](assets/thread-web.png)\n\n## Delete tweet\n\nReply command `/delete` to bot's message and it will delete this tweet for you.\n\n![](assets/delete.png)\n\n## Download tweet video\n\n**ONLY WORKS IF YOU HAVE BASIC OR PRO SUBSCRIOTION**\n\nYou could just send any video tweet, such as this one\n\nhttps://twitter.com/BennyThinks/status/1306081739660427264?s=20\n\nThe bot will first determine if this is a video tweet, if the answer is yes,\nit will ask what do you want to do with it:\n\n![](assets/download_or_tweet.png)\n\nDepending on your choice, this bot will download this video or retweet.\n\n![](assets/video_choice.png)\n\n## multiple photo mode\n\n**Group feature requires a newer version of Telegram**\nJust send a group of photos, add some captions if you want to, and hit send.\n![](assets/multi_photo.jpg)\n\n**Warning: if you send more than four photos in a group, this bot will only send first four photos in a tweet**\n\n# General deployment\n\nThis bot use oauth, so you need to apply an app, setup callback url.\n\n## Setup Twitter Developer\n\n1. Apply a Twitter Developer account https://developer.twitter.com/en/portal/dashboard\n2. Create a project\n3. Create an app and attach it to your project. Remember API key and API secret key!\n4. User authentication settings, Click Edit and enable OAuth\n5. App permissions Read/Write, Web App, Automated App or Bot, Callback `http://127.0.0.1:8888/callback`\n\n## Setup Telegram APP ID\n\nGet it from https://core.telegram.org/\n\n## Run Web server\n\n```shell script\nvim twauth.py\n# change this three lines to your own\n# CONSUMER_KEY ---\u003e API key\n# CONSUMER_SECRET ---\u003e API secret key\nAPP_CONSUMER_KEY = os.environ.get(\"CONSUMER_KEY\") or '1'\nAPP_CONSUMER_SECRET = os.environ.get(\"CONSUMER_SECRET\") or '2'\ncallback_url = os.environ.get(\"CALLBACK_URL\") or \"http://127.0.0.1:8888/callback\"\n\n# run it\npython3 twauth.py\n```\n\nOpen `http://127.0.0.1:8888` in your browser and follow the instructions.\n\n## Run Bot\n\n```shell script\ngit clone https://github.com/tgbot-collection/TeleTweet/\ncd TeleTweet\npip3 install -r requirements.txt\nvim teletweet/config.py\n# setup bot token, consumer key, consumer secret, app id, app secret\npython3 teletweet/bot.py\n```\n\nIf you want the bot to be only available to you, please setup `ALLOW_USER` with your own Telegram User ID.\nUse `,` to separate.\n\nSend `/sign_in` to bot,paste your auth code, and you're good to go!\n\n# Docker\n\nYou can run/develop using docker. You can refer to `docker-compose.yml`\n\n```shell\necho \"{}\"\u003e env/auth.json\nvim env/teletweet.env\n# set up below config\nBOT_TOKEN = os.getenv(\"TOKEN\", \"fghjk789\")\nAPP_ID = os.getenv(\"APP_ID\", \"456fgh78\")\nAPP_HASH = os.getenv(\"APP_HASH\", \"456gfhj78\")\n\nCONSUMER_KEY = os.getenv(\"CONSUMER_KEY\", \"456fghj78\")\nCONSUMER_SECRET = os.getenv(\"CONSUMER_SECRET\", \"45678fghj\")\n\ndocker-compose up -d\n\n```\n\n# Plans\n\n- [x] support multi-user, based on oauth\n- [x] help\n- [x] about\n- [x] start\n- [x] multi photo\n\n# Credits\n\n* [twauth-web](https://github.com/twitterdev/twauth-web)\n\n# License\n\nGPL 2.0__\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftgbot-collection%2Fteletweet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftgbot-collection%2Fteletweet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftgbot-collection%2Fteletweet/lists"}