このメソッドでグループ メッセージを受信できません。
- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message
{
NSLog(@"Message received description === %@",[message description]);
}
-(void)sendGroupMessage:(NSString *)NameOfGroup :(NSString *)Msg
{
[xmppRoom sendMessageWithBody:Msg];
NSXMLElement *x = [NSXMLElement elementWithName:NameOfGroup xmlns:XMPPMUCNamespace];
XMPPMessage *message = [XMPPMessage message];
[message addAttributeWithName:@"to" stringValue:[NSString stringWithFormat:@"%@",NameOfGroup]];
[message addChild:x];
NSLog(@"x in Invite === %@",x);
[xmppRoom sendMessage:message];
}
-(void)setUpRoom:(NSString *)ChatRoomJID
{
NSString *Strng=[NSString stringWithFormat:@"Abc@conference.localhost"];
ChatRoomJID=Strng;
XMPPRoomMemoryStorage *roomMemoryStorage = [[XMPPRoomMemoryStorage alloc] init];
XMPPJID *roomJID = [XMPPJID jidWithString:ChatRoomJID];
xmppRoom = [[XMPPRoom alloc] initWithRoomStorage:roomMemoryStorage jid:roomJID dispatchQueue:dispatch_get_main_queue()];
[xmppRoom activate:xmppStream];
[xmppRoom addDelegate:self delegateQueue:dispatch_get_main_queue()];
[xmppRoom joinRoomUsingNickname:self.UserID
history:nil
password:nil];
[self performSelector:@selector(ConfigureNewRoom:) withObject:nil afterDelay:4];
}
まず、新しいグループを作成し、招待状を送信して、招待されたすべてのユーザーに対してもそれを受け入れます。そのグループでメッセージを送信すると、すべての人がメッセージを正常に受信しましたが、アプリを停止して再度実行し、xmpp でログインしてグループでメッセージを送信すると、参加しているユーザーにメッセージが配信されません。
ログアウトしてxmppサーバーに再度ログインし、以前に作成したグループでメッセージを送信する必要がある場合、このエラーメッセージが表示されました
<message xmlns="jabber:client" from="dharmraj123@conference.localhost" to="revoz1wwbzji1e1481005747@localhost/1824017799289652742921131" type="error"><body>1 Message</body><error code="406" type="modify"><not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"></not-acceptable><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">Only occupants are allowed to send messages to the conference</text></error></message>