Dienstag, 4. März 2008
Resource
Hallo, nach längerer Pause wegen beruflicher Abwesenheit, heute wieder mal wieder ein paar Zeilen. Meine Versuche einen eigenen Clienten zu schreiben hängen zur Zeit am Problem der Resourcen-ID des Jabber-Clienten. Mir ist es noch nicht gelungen zu Ergründen, wie diese ermittelt wird. Sie steht zwar auch in der Registry, wird auch an einige Clienten übermittelt, nur nicht an meinen mit Hilfe von agsXMPP geschriebenen. Man kann auch einen anderen nehmen - hätte den Vorteil 2 Clienten gleichzeitig nutzen zu können. Andererseits habe ich dann Probleme mit dem Avatar - er zeigt keinen Namen an und ist als dann als Ghost zu sehen. Eine weitere Möglichkeit wäre ihn aus der Registry auszulesen, aber dann kann ich den Clienten nicht unter Mono nutzen. Mal sehen was die nächsten Tage so bringen.
Abonnieren:
Die Resource ist eigentlich nicht wirklich schwierig zu generieren... weblin nimmt dafuer einfach den Nickname des Users... ist der schon im Raum, wird eine 1 drangehaengt, und wenn widerum der auch schon existiert wird hochgezaehlt :)
AntwortenLöschenWenn du andere Resourcen benoetigst, nimm einfach einen Unique-Hash-Wert... damit sollte das dann in der Regel passen...
Warum kein Name angezeigt wird, liegt daran, dass weblin beim Betreten des Raums die Resource verwendet (also die Nickname-Resource)... danach wird dann das uebermittelte Identity-File ausgelesen, analysiert und der dort angegebene Nickname verwendet...
wenn du agsXMPP nutzt dann lass die Resource einfach leer (null).
AntwortenLöschenDer Server teilt dir dann eine zufällige eindeutige Resource zu.
Dies ist sowieso zu empfehlen da es eine Sicherheitslücke ist wenn man die Resource erraten kann.
Trotzdem wählen die meisten existierenden Clients eine Resource wie z.B. "Psi".
Danke, für den Tipp, das war mir damals auch klar, aber irgendwie funktionierte es nicht, Warum weiss ich nicht so genau, ich nehme an es war ein Bug in der damaligen XMPP-Library oder wahrscheinlicher ein Problem in den Erweiterungen des Protokolls für die virtuellen Präsenz-Funktionen. Aber inzwischen sind diese grundlegenden Probleme alle gelöst und mein Client hat die wichtigsten Funktionen implementiert und einige mehr. Leider bin ich z.Z. wieder mal stark mit wichtigeren Dingen beschäftigt und da der Tag nicht 48 Stunden hat. dauert es noch einige Zeit bis ich eine erste Verion veröffentliche. Evtl. schreibe ich noch mal um auf Forms, weil Mono ja die WPF noch nicht unterstützt.
AntwortenLöschen