1.5.29 • Published 8 months ago

goat-bot-v2 v1.5.29

Weekly downloads
-
License
MIT
Repository
github
Last release
8 months ago

📝 Note

  • This is a messenger chat bot using a personal account, using an unofficial api (Origin here) and this may lead to facebook account being locked due to spam or other reasons.
  • So, I recommend using a clone account (one that you're willing to throw away at any time)
  • I am not responsible for any problems that may arise from using this bot.

🚧 Requirement

📝 Tutorial

Tutorial has been uploaded on YouTube

Summary instructions:

💡 How it works?

  • The bot uses the unofficial facebook api to send and receive messages from the user.
  • When having a new event (message, reaction, new user join, user leave chat box,...) the bot will emit an event to the handlerEvents.
  • The handlerEvents will handle the event and execute the command:

    • onStart:

      • the handler will check if user call a command or not.
      • if yes, it will check if user banned or mode admin box only is turned on or not, if not, it will execute the command.
      • next, it will check the permission of the user.
      • next, it will check if the countdown of command is over or not.
      • finally, it will execute the command and log information to the console.
    • onChat:

      • the handler will run when the user sends a message.
      • it will check permission of the user.
      • the handler will execute the command, if it return a function or async function then it willl check user banned or mode admin box only is turned on or not, if not, it will call the function and log information to the console.
    • onFirstChat:

      • the handler will run when get the first message from the chat box since the bot started.
      • the way it works is like onChat.
    • onReaction:

      • the handler will run when the user reacts to a message has messageID is set in GoatBot.onReaction as follows:
        				```javascript
        				// example:	
        				global.GoatBot.onReaction.set(msg.messageID, {
        					messageID: msg.messageID,
        					commandName,
        					// ... and more
        				});
        				```
      • the handler will automatically add method delete, if this method is called, it will delete the message from the set.
      • next, it will check permission of the user and execute if the user has permission and log information to the console.
    • onReply:

      • the handler will run when the user replies to a message has messageID is set in GoatBot.onReply as follows:
        				```javascript
        				// example:
        				global.GoatBot.onReply.set(msg.messageID, {
        					messageID: msg.messageID,
        					commandName,
        					// ... and more
        				});
        				```
      • the handler will automatically add method delete, if this method is called, it will delete the message from the set.
      • next, it will check permission of the user and execute if the user has permission and log information to the console.
    • onEvent:

      • the handler will run when the user has a new event type event (new user join, user leave chat box, change admin box,...)
        				```javascript
        				// example:
        				global.GoatBot.onEvent.set(msg.messageID, {
        					messageID: msg.messageID,
        					commandName,
        					// ... and more
        				});
        				```
        				- it will loop through all `onEvent` and get the command determined by the key `commandName` and execute the `onEvent` in that command.
        				- if it return a `function` or `async function` then it will call the function and `log` information to the console.
    • handlerEvent:

      • the handler will run when the user has a new event type event (new user join, user leave chat box, change admin box,...)
      • it will get all the eventCommand set in GoatBot.eventCommands (scripts placed in the scripts/events folder)
      • it will loop through all eventCommands and run the onStart in that command.
      • if it return a function or async function then it will call the function and log information to the console.

🔔 How to get notification when have new update?

  • Click on the Watch button in the upper right corner of the screen and select Custom and select Pull requests and Releases and click Apply to get notified when there is a new update.

🆙 How to Update

Tutorial has been uploaded on YouTube

🛠️ How to create new commands

💭 Support

If you have major coding issues with this bot, please join and ask for help.

📚 Support Languages in source code

  • Currently, the bot supports 2 languages:
  • en: English
  • vi: Vietnamese

  • Change language in config.json file

  • You can customize the language in the folder languages/, languages/cmds/ and languages/events/

📌 Common Problems

DO NOT USE THE ORIGINAL UNDERGRADUATE VERSION

  • The use of unknown source code can lead to the device being infected with viruses, malware, hacked social accounts, banks, ...
  • Goat-Bot-V2 is only published at https://github.com/ntkhang03/Goat-Bot-V2, all other sources, all forks from other github, replit,... are fake, violate policy
  • If you use from other sources (whether accidentally or intentionally) it means that you are in violation and will be banned without notice

📸 Screenshots

  • Bot

    • Rank card:

    • Rankup notification:

    • Custom rank card:

  • Dashboard

Copyright (C)

📜 License

VIETNAMESE

  • Nếu bạn vi phạm bất kỳ quy tắc nào, bạn sẽ bị cấm sử dụng dự án của tôi
  • Không bán mã nguồn của tôi
  • Không tự xưng là chủ sở hữu của mã nguồn của tôi
  • Không kiếm tiền từ mã nguồn của tôi (chẳng hạn như: mua bán lệnh, mua bán/cho thuê bot, kêu gọi quyên góp, v.v.)
  • Không xóa/sửa đổi credit (tên tác giả) trong mã nguồn của tôi

ENGLISH

  • If you violate any rules, you will be banned from using my project
  • Don't sell my source code
  • Don't claim my source code as your own
  • Do not monetize my source code (such as: buy and sell commands, buy and sell bots, call for donations, etc.)
  • Don't remove/edit my credits (author name) in my source code