You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "wan jian ming (JIRA)" <ji...@apache.org> on 2012/11/20 06:49:58 UTC

[jira] [Created] (VYSPER-333) presence message should bring the resource information of one user;

wan jian ming created VYSPER-333:
------------------------------------

             Summary: presence message should bring the resource information of one user;
                 Key: VYSPER-333
                 URL: https://issues.apache.org/jira/browse/VYSPER-333
             Project: VYSPER
          Issue Type: Bug
          Components: stanza routing
    Affects Versions: 0.7
         Environment: normal environment;
            Reporter: wan jian ming


when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Assigned] (VYSPER-333) Presence probes not properly handled for multiple sessions

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bernd Fondermann reassigned VYSPER-333:
---------------------------------------

    Assignee: Bernd Fondermann
    
> Presence probes not properly handled for multiple sessions
> ----------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: core protocol
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>            Assignee: Bernd Fondermann
>
> presence probes are not properly handled. ( http://tools.ietf.org/html/rfc6121#section-4.3 )
> As long as only one resource is active, everything looks fine. 
> But if more than one resource is active for a session, this should apply:
> 1. If presence probe is for the bare JID, *all* resource's presences should be returned.
> 2. If presence probe is for a full JID, *only that* resource's presence should be returned.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13500867#comment-13500867 ] 

wan jian ming commented on VYSPER-333:
--------------------------------------

As I know, xmpp allowed one loginID  login to the system from different devices.
then, let me describe problem more clearly. assume A is me, B is a friend of mine. now I need my client to show the status of B correctly. let me talk in two scenarios; (tested with vysper 0.7 and smack client)
1. no B is login, A logins first, then one B logins, its status shows correctly on A, then another B login from another device. then B logout out one by one. the client of A can show B offline.
from the package , i see two presence packages get after each other;
<presence xmlns="jabber:client" from="B@test.com/3b8b646c999d4c88bfc0eb63aaae58d2" to="A@teset.com"><priority>10</priority></presence>
<presence xmlns="jabber:client" from="B@test.com/58d68c4a768a44e9800f2dba4d1e238c" to="A@teset.com"><priority>10</priority></presence>

2. two logins of B  are on line before A is on line. now A comes on line. on the client of A, it shows the status of B correctly, but as B logout one by one, the status on A can't be show correctly.
the presence package get in this scenario is :
<presence xmlns="jabber:client" from="B@test.com" to="A@teset.com/58d68c4a768a44e9800f2dba4d1e238c"></presence>
<presence xmlns="jabber:client" from="B@test.com" to="A@teset.com/58d68c4a768a44e9800f2dba4d1e238c"></presence>

As there is no resource in the JID, so the client can't distinction the two. so can't show its status correctly, when B logout;

if you still think this is correct in vysper, then could you give some advice on how to let the client show the status correctly.


                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (VYSPER-333) Presence probes not properly handled for multiple sessions

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bernd Fondermann updated VYSPER-333:
------------------------------------

    Component/s:     (was: stanza routing)
                 core protocol
    Description: 
presence probes are not properly handled. ( http://tools.ietf.org/html/rfc6121#section-4.3 )
As long as only one resource is active, everything looks fine. 
But if more than one resource is active for a session, this should apply:
1. If presence probe is for the bare JID, *all* resource's presences should be returned.
2. If presence probe is for a full JID, *only that* resource's presence should be returned.

  was:
when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

        Summary: Presence probes not properly handled for multiple sessions  (was: presence message should bring the resource information of one user;)
    
> Presence probes not properly handled for multiple sessions
> ----------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: core protocol
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> presence probes are not properly handled. ( http://tools.ietf.org/html/rfc6121#section-4.3 )
> As long as only one resource is active, everything looks fine. 
> But if more than one resource is active for a session, this should apply:
> 1. If presence probe is for the bare JID, *all* resource's presences should be returned.
> 2. If presence probe is for a full JID, *only that* resource's presence should be returned.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501653#comment-13501653 ] 

wan jian ming commented on VYSPER-333:
--------------------------------------

sorry, sir:

         I read the rfc621, in 4.3.2.  Server Processing of Inbound Presence Probe; bullet 4 is the scenario that I described above. it required the full JIDs, but in vysper,  the from is just bare JID;
4.  Else, if the contact has at least one available resource, then
       the server MUST reply to the presence probe by sending to the
       user the full XML of the last presence stanza with no 'to'
       attribute received by the server from each of the contact's
       available resources.  Here the 'from' addresses are the full JIDs
       of each available resource.


also in bullet 4 of 4.3.2.. it asked to send unavailabe message to user. vysper send nothing. any way, it seems that it doesn't matter;



                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501653#comment-13501653 ] 

wan jian ming edited comment on VYSPER-333 at 11/21/12 1:59 AM:
----------------------------------------------------------------

sorry, sir:

         I read the rfc621, in 4.3.2.  Server Processing of Inbound Presence Probe; bullet 4 is the scenario that I described above. it required the full JIDs, but in vysper,  the from is just bare JID;
here is what i picked from RFC6121; 4.3.2.
4.  Else, if the contact has at least one available resource, then
       the server MUST reply to the presence probe by sending to the
       user the full XML of the last presence stanza with no 'to'
       attribute received by the server from each of the contact's
       available resources.  Here the 'from' addresses are the full JIDs
       of each available resource.


also in bullet 4 of 4.3.2.. it asked to send unavailabe message to user. vysper send nothing. any way, it seems that it doesn't matter;



                
      was (Author: wan_jm):
    sorry, sir:

         I read the rfc621, in 4.3.2.  Server Processing of Inbound Presence Probe; bullet 4 is the scenario that I described above. it required the full JIDs, but in vysper,  the from is just bare JID;
4.  Else, if the contact has at least one available resource, then
       the server MUST reply to the presence probe by sending to the
       user the full XML of the last presence stanza with no 'to'
       attribute received by the server from each of the contact's
       available resources.  Here the 'from' addresses are the full JIDs
       of each available resource.


also in bullet 4 of 4.3.2.. it asked to send unavailabe message to user. vysper send nothing. any way, it seems that it doesn't matter;



                  
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13500858#comment-13500858 ] 

Bernd Fondermann commented on VYSPER-333:
-----------------------------------------

This isn't a bug - it's by design of XMPP. Only the last, latest presence is the current one. To achieve what you are describing you would need users to use one account per device (but in the regular chat scenario with arbitrary remote users, you can't force that).
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13503658#comment-13503658 ] 

Bernd Fondermann commented on VYSPER-333:
-----------------------------------------

Now we're getting to it. Presence Probes.
It's specified here:
http://tools.ietf.org/html/rfc6121#section-4.3
It says that in case of a full JID presence probe only the full JID's presence is returned, but it also says that if the bare JID is probed, presences for *all* resources are returned (4.3.2. (4)). So you are right, this looks like a bug.

Please note: 
(a) Presence probes are potentially dangerous with respect to privacy. They should only be sent to clients with a Directed Presence (http://tools.ietf.org/html/rfc6121#section-4.6).
(b) The spec says:
 >> Presence probes SHOULD NOT be sent by a client, because in general a client will not need to send them since the task of gathering presence from a user's contacts is managed by the user's server.<< 
You might run into bandwidth problems when doing a lot of presence probes from the client side with lots of sessions. Presence stanzas are already a concern on XMPP servers with a lot of active users (google: "presence storms")


                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501653#comment-13501653 ] 

wan jian ming edited comment on VYSPER-333 at 11/21/12 2:01 AM:
----------------------------------------------------------------

sorry, sir:

         I read the rfc621, in 4.3.2.  Server Processing of Inbound Presence Probe; bullet 4 is the scenario that I described above. it required the full JIDs, but in vysper,  the from is just bare JID;
here is what i picked from RFC6121; 4.3.2.
4.  Else, if the contact has at least one available resource, then
       the server MUST reply to the presence probe by sending to the
       user the full XML of the last presence stanza with no 'to'
       attribute received by the server from each of the contact's
       available resources.  Here the 'from' addresses are the full JIDs
       of each available resource.


also in bullet 3 of 4.3.2.. it asked to send unavailabe message to user. vysper send nothing. any way, it seems that it doesn't matter;



                
      was (Author: wan_jm):
    sorry, sir:

         I read the rfc621, in 4.3.2.  Server Processing of Inbound Presence Probe; bullet 4 is the scenario that I described above. it required the full JIDs, but in vysper,  the from is just bare JID;
here is what i picked from RFC6121; 4.3.2.
4.  Else, if the contact has at least one available resource, then
       the server MUST reply to the presence probe by sending to the
       user the full XML of the last presence stanza with no 'to'
       attribute received by the server from each of the contact's
       available resources.  Here the 'from' addresses are the full JIDs
       of each available resource.


also in bullet 4 of 4.3.2.. it asked to send unavailabe message to user. vysper send nothing. any way, it seems that it doesn't matter;



                  
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501798#comment-13501798 ] 

Bernd Fondermann commented on VYSPER-333:
-----------------------------------------

And, after a quick test, I see full JIDs (including resources) being sent on broadcast presences, both for available and unavailable. I didn't test presence probes.
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501788#comment-13501788 ] 

Bernd Fondermann commented on VYSPER-333:
-----------------------------------------

RFC6121; 4.3. is specifying "presence probes". are you sending presence probes? Presence probes are a special kind of presence stanza, carrying a special type attribute. I thought you are talking about regular presence stanzas, as you didn't include 'type="probe"' in your examples. Compare to section 4.3., where all relevant presence stanzas have this type set.

I wouldn't rule out that there is a problem in handling presence, esp. presence probes, but please be specific.
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13502593#comment-13502593 ] 

wan jian ming commented on VYSPER-333:
--------------------------------------

A and B are friends, so they should be in each other's rosters. 
A logins first;
B logins again. 
then A will receive the presence information of B.  this presence information of B is correct;     
also B will also get the presence information of A . this presence information of A is not correct; the from in which is bare JID, which is not correct; I think it should be also in FULL JID;
currently looked like.
<presence xmlns="jabber:client" from="A@test.com" to="B@teset.com/58d68c4a768a44e9800f2dba4d1e238c"></presence>
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13500915#comment-13500915 ] 

Bernd Fondermann commented on VYSPER-333:
-----------------------------------------

Again, in XMPP, the last set status is the latest, regardless of the resource. So, as far as Vysper and XMPP is concerned, everything is working correctly - although it's causing troubles in your application.
You could think about using Directed Presence (see XMPP RFCs) or work with per-client priorities, if you can identify a "leading" client.
Or, as I already said, use different accounts.
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13503601#comment-13503601 ] 

wan jian ming commented on VYSPER-333:
--------------------------------------

I changed the code of  handleInboundPresenceProbe
from :
         Entity user = stanza.getTo();
to:
        List<String> resources=registry.getResourcesForSession(sessionContext);
        Entity user = new EntityImpl(stanza.getTo(),resources.get(0));


I don't know whether it is correct, but it solve my problem, any way, if one session binds many resource, it is not correct here, and I don't know how to solve it.
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Comment Edited] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13500858#comment-13500858 ] 

Bernd Fondermann edited comment on VYSPER-333 at 11/20/12 6:20 AM:
-------------------------------------------------------------------

This isn't a bug - it's by design of XMPP. Only the last, latest presence for an account is the current one, from whatever resource it comes. To achieve what you are describing you would need users to use one account per device (but in the regular chat scenario with arbitrary remote users, you can't force that).
                
      was (Author: brainlounge):
    This isn't a bug - it's by design of XMPP. Only the last, latest presence is the current one. To achieve what you are describing you would need users to use one account per device (but in the regular chat scenario with arbitrary remote users, you can't force that).
                  
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501863#comment-13501863 ] 

Bernd Fondermann commented on VYSPER-333:
-----------------------------------------

Thanks for your bug report, but you are completely confusing me. For example, I don't know what "go to internal presence probes" would mean.
Could you please give a complete and precise report of what works and what doesn't? 
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (VYSPER-333) presence message should bring the resource information of one user;

Posted by "wan jian ming (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13501834#comment-13501834 ] 

wan jian ming commented on VYSPER-333:
--------------------------------------

it is the scenario two in the my second comment;
A and B are friends, so they should be in eachother's rosters. 
A logins first;
B logins again. then A will recevice the presence information of B. also B will also get the presence information of A. then it will go to internal presence probes for B to get the presence information of A.

so in your test, you need to check whether both of them get the presence information with FULL JID of the sender;
                
> presence message should bring the resource information of one user;
> -------------------------------------------------------------------
>
>                 Key: VYSPER-333
>                 URL: https://issues.apache.org/jira/browse/VYSPER-333
>             Project: VYSPER
>          Issue Type: Bug
>          Components: stanza routing
>    Affects Versions: 0.7
>         Environment: normal environment;
>            Reporter: wan jian ming
>
> when one on logins, he/she will get the presence information from all of its rosters. but in the presence message there are no resource jid, so the client don't know exactly how many logins there.
> for example A has a friend B. but before A is login. there are two logins of B already. so when A got prenence message of B, it only get two B@*** , without resource in the JID; so when B logout, the client of A can't show the status correctly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira