{"id":21467135,"url":"https://github.com/snoopycodex/snoopbot-v2","last_synced_at":"2025-07-15T05:31:18.327Z","repository":{"id":203301125,"uuid":"709188038","full_name":"SnoopyCodeX/snoopbot-v2","owner":"SnoopyCodeX","description":"SnoopBot is a facebook chatbot that is made using nodejs, typescript and the unofficial facebook chat api","archived":false,"fork":false,"pushed_at":"2024-11-19T23:56:13.000Z","size":7615,"stargazers_count":8,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-20T00:34:12.681Z","etag":null,"topics":["bot","chatbot","facebook-chat-bot","nodejs","typescript","unofficial-facebook-chat-api"],"latest_commit_sha":null,"homepage":"https://snoopycodex.github.io/snoopbot-v2/DOCS.html","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SnoopyCodeX.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":"2023-10-24T07:50:57.000Z","updated_at":"2024-11-19T23:56:17.000Z","dependencies_parsed_at":null,"dependency_job_id":"96539854-57e5-4930-ae14-1aa4699c5a45","html_url":"https://github.com/SnoopyCodeX/snoopbot-v2","commit_stats":null,"previous_names":["snoopycodex/snoopbot-v2"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SnoopyCodeX%2Fsnoopbot-v2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SnoopyCodeX%2Fsnoopbot-v2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SnoopyCodeX%2Fsnoopbot-v2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SnoopyCodeX%2Fsnoopbot-v2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SnoopyCodeX","download_url":"https://codeload.github.com/SnoopyCodeX/snoopbot-v2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226017131,"owners_count":17560466,"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","chatbot","facebook-chat-bot","nodejs","typescript","unofficial-facebook-chat-api"],"created_at":"2024-11-23T08:16:47.496Z","updated_at":"2024-11-23T08:16:48.112Z","avatar_url":"https://github.com/SnoopyCodeX.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SnoopBot v2\n\n**SnoopBot v2** is an opensource **facebook messenger chatbot** that is made for educational purposes only. This chatbbot can be customized to your liking.\n\n## Techs Used\n\n- NodeJS\n- Typescript\n- Puppeteer JS\n- Express JS\n- Axios\n\n![Preview](./screenshots/preview.png)\n\n## Available commands of SnoopBot\n| Command | Usage | Description |\n|:-------:|:-----:|:------------|\n| `/play` | `/play \u003csong\u003e` | Searches for the song and sends it to the thread |\n| `/qr-code` | `/qr-code \u003ctext\u003e` | Encodes a text into a qr code and sends it to the thread |\n| `/ris` | `/ris \u003cimage-url: optional\u003e` | Perform a reverse image search and sends the result to the thread |\n| `/help` | `/help` | Displays help information about the commands |\n\n## Commands that only bot administrators can use\n| Command | Usage | Description |\n|:-------:|:-----:|:------------|\n| `/admin` | `/admin \u003cpromote\\|demote\\|list\u003e \u003c@you \\| [@person1, @person2...]\u003e` | Promotes/Demotes user(s) as bot administrators in the thread or list bot administrators in the thread |\n| `/join` | `/join` | Adds the current thread to the whitelist. Threads that are not in the whitelist will be ignored by SnoopBot and will not respond to any commands **unless** the sender is a bot administrator or owner |\n| `/leave` | `/leave` | Removes the current thread from the whitelist. |\n| `/permission` | `/permission \u003cgrant\\|revoke\u003e \u003call \\| [@command1, @command2...]\u003e \u003c@all \\| [@person1, @person2...]\u003e` | Grants or revokes user(s) for permission to all or specific command(s) **except for admin only commands** |\n| `/settings` | `/settings \u003coption\u003e \u003cvalue\u003e \\| /settings list` | Update SnoopBot's settings in the current thread. Type `/settings list` to see all of SnoopBot's settings. |\n\n## Automatic features of SnoopBot\n| Feature | Status | Description |\n|:-------:|:------:|:------------|\n| Anti Unsend | `Disabled` by default | Resends the unsent message back to the thread |\n| Auto Greet | `Disabled` by default | Automatically sends a greeting or farewell message when a user joins/leaves a thread |\n\n## Cloning SnoopBot\n\n```bash\ngit clone https://github.com/SnoopyCodeX/snoopbot-v2\n```\n\n## Running locally\n\nDownload dependencies\n\n```bash\nnpm install\n```\n\nRename \u003ckbd\u003e\u003csamp\u003e.env.development\u003c/samp\u003e\u003c/kbd\u003e to \u003ckbd\u003e\u003csamp\u003e.env\u003c/samp\u003e\u003c/kbd\u003e and configure the following:\n\n```bash\n# For facebook authentication\n# Add your facebook account email and password here\nFB_EMAIL=\nFB_PASS=\n\n# For downloading profile picture using facebook's api\n# One of SnoopBot's feature needs to download a user's profile picture using\n# facebook graph api. Go to https://developers.facebook.com to get yours.\nFB_ACCESS_TOKEN=\n\n# Set this to false if you're deploying this to replit.com\nIS_LOCAL=true\n\n# Your secret key for encrypting/decrypting the `state.session` file\nCRYPT_SECRET_KEY='mysupersecretkey'\n```\n\nDelete the existing \u003ckbd\u003e\u003csamp\u003estate.session\u003c/samp\u003e\u003c/kbd\u003e file so that SnoopBot will create a new one for you\nbased on your facebook account credentials.\n\nThen run:\n\n```bash\nnpm run start\n```\n\n## Contributing\n\nYou may fork this repository and create a pull request. See the [Docs](./DOCS.md) on how to work with this repository.\n\n## Credits\n\n- [Jerson Carin](https://github.com/jersoncarin)\n- [itsmenewbie03](https://github.com/itsmenewbie03)\n- [Unofficial Facebook API](https://github.com/VangBanLaNhat/fca-unofficial)\n\n## License\n\n```\nBSD 3-Clause License\n\nCopyright (c) 2023, SnoopyCodeX\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n1. Redistributions of source code must retain the above copyright notice, this\n   list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright notice,\n   this list of conditions and the following disclaimer in the documentation\n   and/or other materials provided with the distribution.\n\n3. Neither the name of the copyright holder nor the names of its\n   contributors may be used to endorse or promote products derived from\n   this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsnoopycodex%2Fsnoopbot-v2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsnoopycodex%2Fsnoopbot-v2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsnoopycodex%2Fsnoopbot-v2/lists"}