For room invitations and declines, implement XMPPMUCDelegate
and its methods -xmppMUC:didReceiveRoomInvitation:
and -xmppMUC:didReceiveRoomInvitationDecline:
.
To get the room JID, invoke [message from]
;
To join the room, instantiate an XMPPRoom
and invoke -joinRoomUsingNickname:history:
.
Then have your room delegate class implement XMPPRoomDelegate
, and implement some of the delegate methods to handle receiving messages in the room.
It looks like there isn't at present a more automatic way to respond to invitations.
Update: The delegate callbacks now receive the room JID as a parameter, clarifying the semantics a bit.
- (void)xmppMUC:(XMPPMUC *)sender roomJID:(XMPPJID *) roomJID didReceiveInvitation:(XMPPMessage *)message;
- (void)xmppMUC:(XMPPMUC *)sender roomJID:(XMPPJID *) roomJID didReceiveInvitationDecline:(XMPPMessage *)message;