Extending our chat bot to work with an MUC
The next thing we're going to do is extend our chat bot to connect to the MUC room so that it can respond to group messages and private messages as well as continue to respond to one-to-one chat messages.
Now, as we know, MUC messages simply involve a change in type from chat to groupchat (or messages remain as chat but are delivered from an MUC JID in the case of a private message), so responding to messages should be easy. If receiving a group chat message, we'll probably want to add the sender's nickname in the response so that they know it's a response to them (most clients will flag a mention of the user's nickname to them) and only respond to queries that mention the bot's nickname. The only other task we then need to perform is joining the chat room in the first place.
The first thing we'll do is add another method call when the bot detects that it is online, and then send out a presence stanza in order to join the room:
client.on('online',...