Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Jabber Nachricht mit X-Tag senden (https://www.delphipraxis.net/63740-jabber-nachricht-mit-x-tag-senden.html)

Luckie 22. Feb 2006 12:50


Jabber Nachricht mit X-Tag senden
 
Ich versuche gerade die ganze Zeit eine modifizierte Jabber Nachricht zu verschicken. Und zwar füge ich dem XML Stream einen X-Tag hinzu:
Delphi-Quellcode:
var
  Msg              : IJabberMsg;
  XMLTag           : IXMLTag;
  xt               : IXMLTag;
begin
  Msg := JS.CreateMsg;

  Msg.ToJID := 'mp-test@datawerk.de/XMLStream-Demo';
  Msg.FromJID := JS.Username;
  Msg.MsgType := jmtNormal;
  Msg.Body := 'Testnachricht';

  XMLTag := JS.CreateXMLTag;
  XMLTag := Msg.MsgTag.AddTag('font');
  XMLTag.PutAttrib('type', 'mp-extra-tag');
  XMLTag.AddBasicTag('color', 'clNavy');
  XMLTag.AddTag('size').AddCData('8');

  xt := Msg.AddXTag;
  xt.Name := 'x';
  xt.PutAttrib('xmlns', 'jabber:x');
  xt.AddBasicTag('Xtra Tag', 'Xtra Data');

  JS.SendMessage(Msg);
Nur wenn ich das mache, kommt die Nachricht nicht an. Lasse ich die Zeilen 19 bis 22 weg, kommt die Nachricht an. Der XML-Stream wird auch richtig generiert:
XML-Code:
<message id="JCOM_2" to="mp-test@datawerk.de/XMLStream-Demo">
<font type="mp-extra-tag">
<color>
clNavy
</color>
<size>
8
</size>
</font>
<x xmlns="jabber:x">
<Xtra Tag>
Xtra Data
</Xtra Tag>
</x>
<body>
Testnachricht
</body>
</message>
In den Server-Logs taucht leider auch nichts auf, dass da ein kaputter Stream angekommen wäre oder so. Ich verstehe es einfach nicht, denn In Beispielen, die ich gefunden habe, wird es genauso gemacht. Zum Beispiel hier: http://www.koders.com/delphi/fid7F55...C0242507E.aspx ab Zeile 1401.

:?

Frickeldrecktuxer_TM 22. Feb 2006 13:48

Re: Jabber Nachricht mit X-Tag senden
 
Zitat:

Zitat von Luckie
<Xtra Tag>

also ich habe noch kein xml gesehen das ein attribut ohne wert hatte
nimm mal tag="" oder halt xtra_tag je nachdem was du machen willst

Luckie 22. Feb 2006 13:54

Re: Jabber Nachricht mit X-Tag senden
 
Wo ist denn da ein Attribut ohne Wert? Guick dir mal den font-Tag an, den habe ich genauso konstruiert.

Frickeldrecktuxer_TM 22. Feb 2006 13:59

Re: Jabber Nachricht mit X-Tag senden
 
tag-namen dürfen keine lerzeichen enthalten. nachdem ersten leerzeichen folgen die attribute und deines wäre das attribut "tag" und das hat keinen wert weil kein ="..." dahinter steht
der font-tag in deinem xml heißt font und hat ein attribut das type heißt und das attribut hat den wert "mp-extra-tag"

aber kann auch sein das es gar nicht daran liegt.

Luckie 22. Feb 2006 14:21

Re: Jabber Nachricht mit X-Tag senden
 
Ach das meinst du. Mal gucken. Das wäre auf der einen Seite schön, der Fehler wäre gefunden, aber auch ärgerlich, dass es an so etwas blöden geölegen hätte. ;)

Aaaaaaaaaaaaaaaaaaaaaaah, ich werde wahnsinnig, das wars. Ich sollte eventuell doch mal in dieses dicke XML Buch reingucken, was hier an meinem Arbeitsplatz steht. :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz