From ac179689c5b343720b4a0e8b0ba42ac12e00ca78 Mon Sep 17 00:00:00 2001 From: Kevin Smith Date: Thu, 29 Mar 2018 08:31:45 +0100 Subject: [PATCH 1/2] Address various issues mentioned in xsf@ --- inbox/im-ng.xml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/inbox/im-ng.xml b/inbox/im-ng.xml index bc7da583..9ffb564d 100644 --- a/inbox/im-ng.xml +++ b/inbox/im-ng.xml @@ -24,6 +24,12 @@ IM-NG &ksmith; + + 0.0.2 + 2018-03-29 + kis +

Fix various slips, mention reflection.

+
0.0.1 2018-03-28 @@ -90,7 +96,6 @@ to='benvolio@shakespeare.example' id='342' type='chat'> - I neither know it nor can learn of him ]]>

When an entity wants to send a non-error message to be received exclusively by a single resource, they include an <im-ng xmlns='urn:xmpp:im-ng:0'> element in the message. An IM-NG server receiving this MUST then send it to only the specified resource, if available, or respond with an error consistent with RFC-6121 ("return an error stanza to the sender, which SHOULD be <service-unavailable/>").

@@ -106,8 +111,9 @@

Any message of normal type, or type 'chat', 'groupchat' or 'headline' sent to a bare JID is distributed to all IM-NG clients (error messages sent to the bare JID are in response to server-generated stanzas, and so are not routed to clients).

+

A message of type error, sent to a full JID without an <im-ng xmlns='urn:xmpp:im-ng:0'> element is to be distributed to all IM-NG clients

Any message that is routed to all IM-NG clients is stored in the MAM archive, where available, and any message that would not be routed to all IM-NG clients is not stored in the MAM archive

-

In order for interoperatility with other entities (contacts, remote servers etc.) that don't support IM-NG, old-style full-JID messages also need to be handled. When a server receives a message with type other than normal or 'chat' that does not contain an <im-ng xmlns='urn:xmpp:im-ng:0'> element are routed by the above rules as if they were sent to the bare JID

+

In order for interoperability with other entities (contacts, remote servers etc.) that don't support IM-NG, old-style full-JID messages also need to be handled. When a server receives a message with type other than than 'groupchat' or 'headline' that does not contain an <im-ng xmlns='urn:xmpp:im-ng:0'> element it is to be routed by the above rules as if they were sent to the bare JID

A client activating IM-NG MUST NOT also activate Carbons.

An IM-NG client SHOULD send all IM-related messages to bare JIDs (as full-JID messages would not be distributed appropriately).

An IM-NG client SHOULD ignore any IM-related messages that are sent to a full-JID with an <im-ng xmlns='urn:xmpp:im-ng:0'> element (see Security Considerations).

From aadcc2d325b08007060abedc476d5f27b0c81695 Mon Sep 17 00:00:00 2001 From: Kevin Smith Date: Thu, 29 Mar 2018 08:45:27 +0100 Subject: [PATCH 2/2] Reflect messages This doesn't wrap them in a forward, which is something that needs discussion --- inbox/im-ng.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/inbox/im-ng.xml b/inbox/im-ng.xml index 9ffb564d..f44f3bbd 100644 --- a/inbox/im-ng.xml +++ b/inbox/im-ng.xml @@ -89,7 +89,7 @@ type='result'/>]]> -

When an entity wants to send a non-error message to be handled by all a user's IM-NG clients they will send it to the user's bare JID, which the receiving server then MUST send to all IM-NG resources.

+

When an entity wants to send a non-error message to be handled by all a user's IM-NG clients they will send it to the user's bare JID, which the receiving server then MUST send to all the contact's IM-NG resources, and the sending server must reflect to all the user's IM-NG resources.

A client activating IM-NG MUST NOT also activate Carbons.

An IM-NG client SHOULD send all IM-related messages to bare JIDs (as full-JID messages would not be distributed appropriately).

An IM-NG client SHOULD ignore any IM-related messages that are sent to a full-JID with an <im-ng xmlns='urn:xmpp:im-ng:0'> element (see Security Considerations).

+

When reflecting an IM-NG client's outbound bare-JID messages, the server SHOULD reflect the archived version (i.e. after any transforms have taken place).