{"id":13486347,"url":"https://github.com/jacklul/inlinegamesbot","last_synced_at":"2025-04-13T07:51:32.108Z","repository":{"id":38109456,"uuid":"77286764","full_name":"jacklul/inlinegamesbot","owner":"jacklul","description":"A Telegram bot providing games that can be played in any chat via inline keyboards.","archived":false,"fork":false,"pushed_at":"2025-01-20T13:10:27.000Z","size":1191,"stargazers_count":120,"open_issues_count":0,"forks_count":119,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-04T05:45:28.639Z","etag":null,"topics":["bot","games","php-telegram-bot","telegram","telegram-bot"],"latest_commit_sha":null,"homepage":"https://telegram.me/inlinegamesbot","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jacklul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"2016-12-24T14:29:44.000Z","updated_at":"2025-03-06T03:57:12.000Z","dependencies_parsed_at":"2023-02-17T03:31:13.047Z","dependency_job_id":"f0967181-99e3-484c-b915-ec5dcaf6bb16","html_url":"https://github.com/jacklul/inlinegamesbot","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/jacklul%2Finlinegamesbot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacklul%2Finlinegamesbot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacklul%2Finlinegamesbot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacklul%2Finlinegamesbot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jacklul","download_url":"https://codeload.github.com/jacklul/inlinegamesbot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248681494,"owners_count":21144700,"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","games","php-telegram-bot","telegram","telegram-bot"],"created_at":"2024-07-31T18:00:44.382Z","updated_at":"2025-04-13T07:51:32.078Z","avatar_url":"https://github.com/jacklul.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# Inline Games [![License](https://img.shields.io/github/license/jacklul/inlinegamesbot.svg)](https://github.com/jacklul/inlinegamesbot/blob/master/LICENSE) [![Telegram](https://img.shields.io/badge/Telegram-%40inlinegamesbot-blue.svg)](https://telegram.me/inlinegamesbot)\n\nA Telegram bot that provides real-time multiplayer games that can be played in any chat.\n\nYou can see the bot in action by messaging [@inlinegamesbot](https://telegram.me/inlinegamesbot).\n\nThe bot is currently hosted at [DOM Cloud](https://domcloud.co).\n\n#### Currently available games:\n\n- Tic-Tac-Toe\n- Tic-Tac-Four ([@DO97](https://github.com/DO97))\n- Elephant XO ([@DO97](https://github.com/DO97))\n- Connect Four\n- Rock-Paper-Scissors\n- Rock-Paper-Scissors-Lizard-Spock ([@DO97](https://github.com/DO97))\n- Russian Roulette\n- Checkers\n- Pool Checkers\n\n## Deploying\n\n### Heroku\n\n\u003cdetails\u003e\n  \u003csummary\u003eInstructions\u003c/summary\u003e\n\nUse this button to begin deployment:  \n[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/jacklul/inlinegamesbot)\n\nAssuming everything was entered correctly your bot should be instantly working - if it's not you should try running `php bin/console post-install` inside the app.\n\nYou will also want to add **Heroku Scheduler** addon and set up a hourly task to run the following command to clean up expired games from the database:\n- `php bin/console cron`\n\n_If this command times out too fast try using something like this instead: `php -d max_execution_time=2700 bin/console cron`_\n\n\u003c/details\u003e\n\n### Google Cloud Platform\n\n\u003cdetails\u003e\n  \u003csummary\u003eInstructions\u003c/summary\u003e\n\n- Install dependencies with `composer install`\n- Copy `env_variables.example.yaml` into `env_variables.yaml` and fill out the details\n- Run the deployment command: `gcloud app deploy --project YOUR-PROJECT-NAME-HERE app.yaml cron.yaml`\n- Visit `https://YOUR-PROJECT-NAME-HERE.appspot.com/admin?a=post-install` to perform post-install tasks\n\n\u003c/details\u003e\n\n### Fly.io\n\n\u003cdetails\u003e\n  \u003csummary\u003eInstructions\u003c/summary\u003e\n\n- `flyctl apps create`\n- `flyctl volumes create data --size=1`\n- `flyctl secrets set BOT_TOKEN=`\n- `flyctl secrets set BOT_USERNAME=`\n- `flyctl secrets set BOT_WEBHOOK=YOUR-APP-NAME.fly.dev`\n- `flyctl secrets set BOT_SECRET=`\n- If you want to use web+worker setup you have to replace `web:` line in `Procfile`\n- `flyctl deploy`\n\n\u003c/details\u003e\n\n### DOM Cloud\n\n\u003cdetails\u003e\n  \u003csummary\u003eInstructions\u003c/summary\u003e\n\n- Copy `.env.example` into `.env` and fill out the details\n- Upload `.env` and `crontab` to `/home/\u003cyour-website-name\u003e/config` directory on the FTP\n  - `crontab` will require modifications - use full paths to the script - e.g.: `/home/\u003cyour-website-name\u003e/public_html/bin/console`\n- Run this deployment task:\n```\nsource: 'https://github.com/jacklul/inlinegamesbot'\ncommands:\n  - 'test -f ../config/.env \u0026\u0026 cp -f ../config/.env .'\n  - 'test -f ../config/config.php \u0026\u0026 cp -f ../config/config.php . || exit 0'\n  - 'composer install --no-dev --optimize-autoloader --ignore-platform-reqs'\n  - 'php bin/console install'\n  - 'php bin/console set'\n  - 'test -f ../config/crontab \u0026\u0026 cat ../config/crontab | crontab - || exit 0'\nfeatures:\n  - ssl\n  - 'php 7.4'\n```\n\n\u003c/details\u003e\n\n## Note on translations\n\nTranslations support is implemented but it is not used mainly because translated text would be displayed to both players - this could be problematic in \"gaming\" groups - people setting language that other player can't understand!\n\n## Contributing\n\nSee [CONTRIBUTING](CONTRIBUTING.md) for more information.\n\n## License\n\nSee [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacklul%2Finlinegamesbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjacklul%2Finlinegamesbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacklul%2Finlinegamesbot/lists"}