We have developed some middleware that handles some errors. When it does, it reverses the from and to elements and adds an error element to form an "error message". But the jabber server is kicking the remote user out of the chat room where the original message came from.
Original message: <message xmlns="jabber:client" from="[EMAIL PROTECTED]/reluser1" id="Gh7px-26" to="[EMAIL PROTECTED]/TransVerse" type="groupchat" xml:lang="en"><body xml:lang="en">confidential message 9</body><x xmlns="urn:us:gov:ic:ism:v2" classification="U" declassManualReview="true" ownerProducer="USA" x-label_bg_color="#006400" x-label_fg_color="#FFFFFF" x-portionMarking="U" x-securityBanner="UNCLASSIFIED" xml:lang="en"/><addresses xmlns="http://jabber.org/protocol/address"><address delivered="true" jid="[EMAIL PROTECTED]/BuddySpace2.5Plus JFCOM/J9" type="to"/><address delivered="true" jid="[EMAIL PROTECTED]/TransVerse" type="to"/></addresses></message> [Error detected and handled] Returned "error message": <message xmlns="jabber:client" from="[EMAIL PROTECTED]/TransVerse" id="Gh7px-26" to="[EMAIL PROTECTED]/reluser1" type="error" xml:lang="en"><body xml:lang="en">confidential message 9</body><addresses xmlns="http://jabber.org/protocol/address"><address delivered="true" jid="[EMAIL PROTECTED]/BuddySpace2.5Plus JFCOM/J9" type="to"/><address delivered="true" jid="[EMAIL PROTECTED]/TransVerse" type="to"/></addresses><error type="cancel" code="404"><remote-server-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">Message rejected by DSG</text></error><x xmlns="urn:us:gov:ic:ism:v2" classification="U" declassManualReview="true" ownerProducer="USA" x-label_bg_color="#006400" x-label_fg_color="#FFFFFF" x-portionMarking="U" x-securityBanner="UNCLASSIFIED" xml:lang="en"/></message> The next packet that gets sent is a presence-unavailable packet from the jabber server, kicking out remote user ([EMAIL PROTECTED]) from the local chat room ([EMAIL PROTECTED]): <presence xmlns="jabber:client" from="[EMAIL PROTECTED]/secuser1" id="heAq5-27" to="[EMAIL PROTECTED]/BuddySpace2.5Plus JFCOM/J9" type="unavailable" xml:lang="en"><status>Online</status><priority>0</priority><x xmlns="http://jabber.org/protocol/muc#user"><item affiliation="none" jid="[EMAIL PROTECTED]/TransVerse" role="none"/></x><x xmlns="urn:us:gov:ic:ism:v2" classification="U" ownerProducer="USA" x-label_bg_color="#006400" x-label_fg_color="#FFFFFF" x-portionMarking="U" x-securityBanner="UNCLASSIFIED" xml:lang="en"/><addresses xmlns="http://jabber.org/protocol/address"><address delivered="true" jid="[EMAIL PROTECTED]/BuddySpace2.5Plus JFCOM/J9" type="to"/><address delivered="true" jid="[EMAIL PROTECTED]/TransVerse" type="to"/></addresses></presence> It doesn't seem to matter which error code I send back, my remote user (secuser1) gets kicked out of my local chat room (relroom). The "error message" never makes it to my XMPP client (Transverse). Any ideas? What can I do so that the remote user (secuser) doesn't get kicked out and my "error message" makes it to my XMPP client (Transverse)? Thanks, Tom K. Tom Kalafut I3/CG Crew Member Trident Systems Inc. [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> (919)388-1264 ============ The opinions expressed in this e-mail may not necessarily reflect the opinions of Trident Systems Inc.
