{"id":15042152,"url":"https://github.com/sealedsaucer/online-forever","last_synced_at":"2025-05-15T21:01:45.122Z","repository":{"id":44139765,"uuid":"383721309","full_name":"SealedSaucer/Online-Forever","owner":"SealedSaucer","description":"Make Your Discord Account 24/7 Online!","archived":false,"fork":false,"pushed_at":"2024-09-22T01:13:58.000Z","size":100,"stargazers_count":981,"open_issues_count":2,"forks_count":496,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-04-13T04:58:00.273Z","etag":null,"topics":["bot","discord","discord-account","discord-accounts","discord-api","discord-bot","discord-py","discord-python","discord-self-bot","discord-selfbot","discord-selfbots","discord-websocket","discordapp","dpy","make-your-discord-account-24-7","py","python","requests","sealedsaucer","websocket"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/watch?v=-soq0pOqP_4","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SealedSaucer.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-07T08:04:39.000Z","updated_at":"2025-04-10T11:20:01.000Z","dependencies_parsed_at":"2024-11-28T14:01:18.314Z","dependency_job_id":"11cd82e6-6e07-41e5-a92a-421239f847a4","html_url":"https://github.com/SealedSaucer/Online-Forever","commit_stats":{"total_commits":84,"total_committers":6,"mean_commits":14.0,"dds":0.08333333333333337,"last_synced_commit":"3aed9c47df8de9cdf3bcf6930d8bfb78a1c66858"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SealedSaucer%2FOnline-Forever","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SealedSaucer%2FOnline-Forever/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SealedSaucer%2FOnline-Forever/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SealedSaucer%2FOnline-Forever/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SealedSaucer","download_url":"https://codeload.github.com/SealedSaucer/Online-Forever/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248665761,"owners_count":21142123,"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","discord","discord-account","discord-accounts","discord-api","discord-bot","discord-py","discord-python","discord-self-bot","discord-selfbot","discord-selfbots","discord-websocket","discordapp","dpy","make-your-discord-account-24-7","py","python","requests","sealedsaucer","websocket"],"created_at":"2024-09-24T20:46:55.003Z","updated_at":"2025-05-15T21:01:45.068Z","avatar_url":"https://github.com/SealedSaucer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv id=\"SealedSaucer\" align=\"center\"\u003e\n    \u003ch1\u003eOnline Forever\u003c/h1\u003e\n    \u003cp\u003eMake Your Discord Account 24/7 Online!\u003c/p\u003e\n    \u003ca href=\"https://github.com/SealedSaucer/Online-Forever/blob/main/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/SealedSaucer/Online-Forever?style=for-the-badge\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://sealedsaucer.sell.app\"\u003e\u003cimg src=\"https://img.shields.io/badge/SHOP-CLICK HERE-5e40e4?style=for-the-badge\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://phantom.fr.to/verify\"\u003e\u003cimg src=\"https://img.shields.io/badge/contact-click me-05babf?style=for-the-badge\"\u003e\u003c/a\u003e\n    \u003cbr\u003e\n    \u003cimg src=\"https://i.imgur.com/N61T21L.png\" height=\"210\"\u003e\n\u003c/div\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\nIf you want to online tokens in bulk, consider checking out my store: \u003cb\u003e\u003ca href=\"https://sealedsaucer.sell.app\"\u003eclick here\u003c/a\u003e\u003c/b\u003e! ☄️\n\u003cbr\u003e\n⭐ Feel free to star the repository if this helped you!\n\u003c/p\u003e\n\n## Disclaimer\nBy using this code, you are automating your Discord Account. This is against Discord's Terms of Service and Community Guidelines. If not used properly, your account(s) might get suspended or terminated by Discord. I, the developer, am not responsible for any consequences that may arise from the use of this code. Use this software at your own risk and responsibility. Learn more about \u003ca href=\"https://discord.com/terms\"\u003eDiscord's Terms of Service\u003c/a\u003e and \u003ca href=\"https://discord.com/guidelines\"\u003eCommunity Guidelines\u003c/a\u003e.\n#### This repository is in no way affiliated with, authorized, maintained, sponsored, or endorsed by Discord Inc. (discord.com) or any of its affiliates or subsidiaries.\n\n## Warning\n**DO \u003cins\u003eNOT\u003c/ins\u003e GIVE YOUR DISCORD TOKENS TO ANYONE.**\n#### Giving your token to someone else will give them the ability to log into your account without the password or 2FA.\n\n## Features\n- Secure [🔒]\n- Supports Custom Status\n- Account will stay 24/7 online (if you set it up correctly)\n- Supports all three status modes (Online, Idle, Do Not Disturb)\n- Can be used almost on any platform that supports [Python](https://python.org)\n\n## Obtaining Your Token ([Video Guide](https://www.youtube.com/watch?v=sYGdDLLu8cU))\nYou will need an user token inorder to use this code. You can obtain it by doing the following:\n1. Logging in to your discord account\n2. Pressing `Ctrl+Shift+I` to open Chrome Developer Tools\n3. Go to the `Network` Tab\n4. Keep it open and refresh the page\n5. Type `/api` in the filter search box\n6. Click the entry that has `science` as the `Name`\n7. On the sub-menu, go to `Headers`\n8. Scroll down till you see an entry named `Authorization`. Copy the line next to it.\n9. This is your token, \u003cins\u003e**DO NOT GIVE IT TO ANYONE**\u003c/ins\u003e.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"10px\" width=\"10000px\" src=\"https://i.imgur.com/w6MUcN8.png\"/\u003e\n\u003c/p\u003e\n\n## 🛠️ Installation\n### · Replit\n#### The code inside the repository was originally made to be hostable on [Replit](https://replit.com), but due to a recent ban on all repositories that are against Discord's ToS, you won't be able to import this repository directly to Replit anymore.\n#### Here's a workaround to solve that issue:\n1. Click [here](https://github.com/SealedSaucer/Online-Forever/archive/refs/heads/main.zip) to download the latest version of this code.\n2. Unzip the file\n3. Create a new Python repl on [Replit](https://replit.com)\n4. Upload the files into the repl (Just drag and drop it into the files sidebar)\n5. Overwrite the files if a prompt pops-up\n6. Add your token inside Secrets ([Guide](https://docs.replit.com/programming-ide/workspace-features/storing-sensitive-information-environment-variables)) with `TOKEN` as the key and your token as the value ([Video](https://youtu.be/sYGdDLLu8cU))\n7. Modify both the status mode and custom status, if you want to make any adjustments\n8. Run the repl\n9. Add your repl url to an uptime monitor ([Video](https://youtu.be/dVIjpCqnZXE))\n\n### · Docker\n\nThis repository includes a `Dockerfile` and a `docker-compose.yml` file. Since pre-built images are not available, you'll need to build them yourself.\n\n### · Local Installation\n1. Install [Python](https://python.org/downloads) on your machine (Make sure you add it to [PATH](https://i.imgur.com/Ukl6HdQ.png))\n2. Copy the code below\n\u003cdetails\u003e\n\u003csummary\u003e Click here to view the code, and click again to close it\u003c/summary\u003e\n\u003cbr\u003e\n\n```py\nimport sys\nimport json\nimport time\nimport requests\nimport websocket\n\nstatus = \"online\"\n\ncustom_status = \"youtube.com/@SealedSaucer\" #If you don't need a custom status on your profile, just put \"\" instead of \"youtube.com/@SealedSaucer\"\n\nusertoken = \"Add your token here\"\n\nheaders = {\"Authorization\": usertoken, \"Content-Type\": \"application/json\"}\n\nvalidate = requests.get('https://discordapp.com/api/v9/users/@me', headers=headers)\nif validate.status_code != 200:\n  print(\"[ERROR] Your token might be invalid. Please check it again.\")\n  sys.exit()\n\nuserinfo = requests.get('https://discordapp.com/api/v9/users/@me', headers=headers).json()\nusername = userinfo[\"username\"]\ndiscriminator = userinfo[\"discriminator\"]\nuserid = userinfo[\"id\"]\n\ndef onliner(token, status):\n    ws = websocket.WebSocket()\n    ws.connect(\"wss://gateway.discord.gg/?v=9\u0026encoding=json\")\n    start = json.loads(ws.recv())\n    heartbeat = start[\"d\"][\"heartbeat_interval\"]\n    auth = {\n        \"op\": 2,\n        \"d\": {\n            \"token\": token,\n            \"properties\": {\n                \"$os\": \"Windows 10\",\n                \"$browser\": \"Google Chrome\",\n                \"$device\": \"Windows\",\n            },\n            \"presence\": {\"status\": status, \"afk\": False},\n        },\n        \"s\": None,\n        \"t\": None,\n    }\n    ws.send(json.dumps(auth))\n    cstatus = {\n        \"op\": 3,\n        \"d\": {\n            \"since\": 0,\n            \"activities\": [\n                {\n                    \"type\": 4,\n                    \"state\": custom_status,\n                    \"name\": \"Custom Status\",\n                    \"id\": \"custom\",\n                    #Uncomment the below lines if you want an emoji in the status\n                    #\"emoji\": {\n                        #\"name\": \"emoji name\",\n                        #\"id\": \"emoji id\",\n                        #\"animated\": False,\n                    #},\n                }\n            ],\n            \"status\": status,\n            \"afk\": False,\n        },\n    }\n    ws.send(json.dumps(cstatus))\n    online = {\"op\": 1, \"d\": \"None\"}\n    time.sleep(heartbeat / 1000)\n    ws.send(json.dumps(online))\n\ndef run_onliner():\n  print(f\"Logged in as {username}#{discriminator} ({userid}).\")\n  while True:\n    onliner(usertoken, status)\n    time.sleep(50)\n\nrun_onliner()\n\n```\n\u003c/details\u003e\n\n3. Create a new Python file and paste the code into it\n4. Modify both the status mode and custom status, if you want to make any adjustments\n5. Save the file\n6. Create a `requirements.txt` file and copy and paste the file contents inside [requirements.txt](https://github.com/SealedSaucer/Online-Forever/blob/main/requirements.txt) without the `Flask` module\n7. Save the file\n8. Open command prompt where both the files are present and run `pip install -r requirements.txt`\n9. Once the packages are downloaded, either double-click the python file in order to run it or open command prompt where the python file is present and run `python filename.py`\n\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"10px\" width=\"10000px\" src=\"https://i.imgur.com/w6MUcN8.png\"/\u003e\n\u003c/p\u003e\n\n## 🔧 Known Errors And Fixes\n### [Discord] Status is not changing\n\n\u003e Just wait for a few minutes. It takes some time for Discord to refresh your status.\n\n### [Replit] This repository could not be accessed, try again later/This repository possibly violates our Terms of Service. Contact support if you believe this is a mistake.\n\n\u003e As I mentioned before, due to a recent ban on all repositories that are against Discord's ToS, you won't be able to import this repository directly to Replit anymore. Follow \u003ca href=\"https://github.com/SealedSaucer/Online-Forever#heres-a-workaround-to-solve-that-issue\"\u003ethis\u003c/a\u003e workaround to host the code on Replit.\n\n### [Replit] sh: line 1: python3: command not found\n\n\u003e You cloned it into a bash repl. Make sure you select \"Python\" from the languages list when you create the repl.\n\n### [Replit] Cloudflare Error/Temporarily banned from accessing Discord's API\n\n\u003e This happens because repls have Shared Public IP Addresses, and some Replit Users abuse the platform to spam (through self bots or nukers). Whenever Discord sees lots of invalid requests coming from a single IP address, it will use Cloudflare to temporarily block any incoming requests.\n\n\u003e Fix:\n\u003e - Go to shell\n\u003e - Enter \u003ccode\u003ekill 1\u003c/code\u003e\n\u003e - Wait for the repl to reload\n\u003e - Run the repl again\n\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"10px\" width=\"10000px\" src=\"https://i.imgur.com/w6MUcN8.png\"/\u003e\n\u003c/p\u003e\n\n## 🛟 Help and Support\nIf you have any issues or doubts regarding this, feel free to [contact me](https://phantom.fr.to/verify).\n\n---\n\n\u003cp align=\"center\"\u003eOnline Forever is licensed under GNU General Public License ❤️\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsealedsaucer%2Fonline-forever","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsealedsaucer%2Fonline-forever","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsealedsaucer%2Fonline-forever/lists"}