So, I decided to post the code to my Facebook Instant Games Bot to save other devs a lot of research and time. The bot is written using node.js, you will need to set up a hosting service that will run your bot. I chose Digital Ocean to host mine because Droplets are super simple to set up and cheap as chips. I service 5 games with the single bot and I never go over my $5 per month limit. If you do sign up with them then please use my referral link, you get $10 of free credit.
This bot server can handle many games at once, simply add new games to the pages.js source file. Click this link to download the bot.
Files in this archive include:
- bot.js – The main bot which accepts requests and creates new players
- bot_none_cluster.js – None cluster version of bot.js (can be used with pm2 -i option)
- crawler – Crawls through the database checking for players that need to be messaged and messages them, also removes players that do not respond from the database
- messaging.js – Sends messages out to players
- pages.js – Stores page data
- node bot.js – Runs the bot which listens for connections and adds players to the database
- node crawler.js – Periodically crawls through the database finding players that need to be messaged and sends them a message
Note that you will need to set up both node and redis on your server in order for the bot to work. Performance wise the bot is incredibly fast. I am servicing 5 games with mine and using only 1% CPU.