1
同じユーザーIDとパスワードを持つ2つのデバイスにログインしているため、宛先デバイスが音声または画像をクライアントに送信した。宛先メッセージを取得します。これは、2つのデバイスにログインするときにリソースIDが変化しているためです。その示すエラーメッセージ503()ログイン中にXMPPリソースIDが変更される
(NSString *)full
{
if (user)
{
if (resource)
{
//----- here i am getting the resource ID -------
[[NSUserDefaults standardUserDefaults]setObject:resource forKey:@"GETRESOURCE"];
[[NSUserDefaults standardUserDefaults]synchronize];
return [NSString stringWithFormat:@"%@@%@/%@", user, domain, resource];
}
else
{
return [NSString stringWithFormat:@"%@@%@", user, domain];
}
} else {
if (resource)
return [NSString stringWithFormat:@"%@/%@", domain, resource];
else
return domain;
}
}
(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
CGFloat maxCompression = 0.1f;
NSData *imageData = UIImageJPEGRepresentation([info objectForKey:UIImagePickerControllerOriginalImage], maxCompression);
[messageType addObject:@"1"];
//---- now implementing the resource id here i getting 503 Error----
NSString *resourceStr = [[NSUserDefaults standardUserDefaults] valueForKey:@"GETRESOURCE"];
XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@/%@", receiver, resourceStr]];
[fileTransfer initiateFileTransferTo:jid withData:imageData];
self.willSendImage = [UIImage imageWithData:imageData];
[messageArray addObject:[NSDictionary dictionaryWithObject:self.willSendImage forKey:@"image"]];
[self.timestamps addObject:[NSDate date]];
NSDate *currDate = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
[dateFormatter setDateFormat:@"YYYY-MM-dd HH:mm:ss Z"];
NSString *dateString = [dateFormatter stringFromDate:currDate];
[dbHandler insertChatHistory:@"image" imageData:imageData receiveType:2 mediaType:2 receiverName:titleName date:dateString];
[self finishSend];
[JSMessageSoundEffect playMessageSentSound];
[self scrollToBottomAnimated:YES];
[self reloadMessages];
[self dismissViewControllerAnimated:YES completion:NULL];
}
このポストのために働いSTRINGとして画像を送信します。あなたの投稿を更新してください。 XMPP Resourcepartはすべての接続/デバイスで一意です。 – Flow
リソースの変更は予期される動作です。あなたのXMPP設定に依存して、指定された宛先アドレス(例えば、Openfireはそのような設定能力を持っている)に対して、 – Antoniossss