Hey Yanen!
1) It seems you're trying to work with rooms created by yourself, instead of using Construct's own room structure. Is there a reason for doing that? Construct Multiplayer object can already create rooms and sort the messages on those rooms to people who are connected to them. Instead of using a constant for ROOM_NAME you should have a variable or an array with all rooms you want to exist. When players connect you shoul let them pick a room, or assign them one according to your needs. I'm not sure how you want it to work.
2) I'm not sure I get what you want here, but it seems you are trying to achieve something like the IRC interactions, like, for instance, to click on a player's name on the list and execute a command to that player is that it? In this case you'd have to implement all commands for the host and give peers actions that sends the host requests for those commands on the selected player.
3) Depends. If we're talking about basic chat functionality, no. If you want to give the players other "abilities", like a shared whiteboard, for instance, which would be very useful for a RPG chatroom, yes.
Hope that helped. Good luck with your project. I'd really love to see it working when you're finished.
Cheers!