Generic API for building plug.dj bots
A generic API for creating plug.dj bots.
NOTE: Currently not supporting facebook login.
Run the following:
npm install plugapi --production
You can choose to instantiate the instance both sync or async.
var PlugAPI = require'plugapi';var bot ="email": """password": "";botconnect'roomslug'; // The part afterboton'roomJoin'console.log"Joined " + room;;
var PlugAPI = require'plugapi';"email": """password": ""botconnect'roomslug'; // The part afterboton'roomJoin'console.log"Joined " + room;;;
Here are some bots using this API.
|BeavisBot||I <3 the 80's and 90's|
|-DnB-||Drum & Bass|
Have a bot that uses the API? Let me know!
You can listen on essentially any event that plug emits.
// basic chat handler to show incoming chats formatted nicelyboton'chat'if datatype == 'emote'console.logdatafrom + datamessage;elseconsole.logdatafrom + "> " + datamessage;;
Here's an example for automatic reconnecting on errors / close events!
var botconnectROOM; ;boton'close' reconnect;boton'error' reconnect;
Read about some of the events on the wiki.
Read about the actions on the wiki.
- Clone repository to empty folder.
- Cd to the repository.
npm installto set up the environment.
- Edit your code.
gruntto compile the code and test.
- After it's bug free, you may submit it as a Pull Request to the main repo.
Since Plug.dj cuts off chat messages at 250 characters, you can choose to have your bot split up chat messages into multiple lines:
var bot = auth;botmultiLine = true; // Set to true to enable multi line chat. Default is falsebotmultiLineLimit = 5; // Set to the maximum number of lines the bot should split messages up into. Any text beyond this number will just be omitted. Default is 5.
You can start up a TCP server the bot will listen to, for remote administration
bottcpListen6666 'localhost';boton'tcpConnect'// executed when someone telnets into localhost port 6666;boton'tcpMessage'// Use socket.write, for example, to send output back to the telnet session// 'msg' is whatever was entered by the user in the telnet session;