1
Ich habe zwei Geräte mit der gleichen Benutzer-ID und Passwort angemeldet, so wenn Zielgerät Stimme oder Bild an Client senden. Das Gerät erhält die Zielnachricht, aber ein anderes Gerät nicht die Zielnachricht erhalten. weil die Ressourcen-ID beim Anmelden auf zwei Geräten geändert wird. Seine Darstellung Fehlermeldung 503()XMPP-Ressource-ID bekommen Änderung während der Anmeldung mehr als ein Gerät
(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];
}
Dieser Beitrag enthält keine einzige Frage. Bitte aktualisieren Sie Ihren Beitrag. XMPP Resourceparts sind für jede Verbindung/jedes Gerät einzigartig. – Flow
Ändern der Ressource ist das erwartete Verhalten. Abhängig von Ihrer XMPP-Konfiguration können Sie das Routing so konfigurieren, dass Pachets an jede Ressource für eine bestimmte Zieladresse gesendet werden (z. B. Openfire hat eine solche Konfigurationsmöglichkeit) – Antoniossss