> Может, не стоит делайть "bind" до того, как считали Ростер?
можно и после, но сути это не меняет. вместо одного из <rosterItem ...
/> приходит <presence .../>:
C: <login id="logon" .../> S: <session .../> S: <response id="logon"/>
C: <rosterList id='rosterList'/>
S: <rosterItem id="rosterList" name="name1" peer="peer1"
subscription="both"><group>General</group></rosterItem>
S: <rosterItem ask="subscribe" id="rosterList" name="name2" peer="peer2"
subscription="from"><group>General</group></rosterItem>
S: <presence id="rosterList" peer="peer3" type="subscribe" />
S: <response id="rosterList"/>
C: <signalBind id='1'>...</signalBind>
C: <presenceSet id='2'/>
...
если ответить на него <rosterSet id='...' subscription='unsubscribed' peer='peer3' />, то при следующем соединении придет <rosterItem ... subscription="none" /> - нормальный, сообщающий нам "name" и <group>.
последовательность действий такая:
1. оба аккаунта не имеют друг друга в ростер-листе.
2. account1 логинится и для него выполняется команда
<rosterSet id='9' peer='account2'
name='name2'><group>General</group></rosterSet>
в ответ приходит
<rosterItem name="name2" peer="account2"
subscription="none"><group>General</group></rosterItem>
3. account1 отключается.
4. account2 логинится и для него выполняется команда
<rosterSet id='57' subscription='subscribe' peer='account1'/>
в ответ приходит
<rosterItem ask="subscribe" peer="account1" subscription="none" />
5. account2 отключается
6. account1 подключается и получает rosterItem'ы вместе с <presence
id="rosterList" peer="account2" type="subscribe" />
вот такая петрушка :(
как это можно поправить, т.е. получать Contact Real Name и группу, в которую его положили?..
С уважением,
Денис Станишевский.
Получено Mon May 21 07:56:02 2007
Этот архив был сгенерирован hypermail 2.1.8 : Fri 24 Apr 2015 - 16:15:38 MSK