Pidgin Forum
Informationen des ausgewählten Users. - Druckversion

+- Pidgin Forum (https://forum.pidgin-im.de)
+-- Forum: Hilfe-Bereich (https://forum.pidgin-im.de/forumdisplay.php?fid=4)
+--- Forum: Development (https://forum.pidgin-im.de/forumdisplay.php?fid=16)
+---- Forum: Plugins (https://forum.pidgin-im.de/forumdisplay.php?fid=18)
+---- Thema: Informationen des ausgewählten Users. (/showthread.php?tid=1674)

Seiten: 1 2 3 4 5 6


Informationen des ausgewählten Users. - jamesv1994 - 11.09.2013

Ich habe dank Freakazoid eine Lösung gefunden, das Buddy-Context-Menü zu erweitern, nur möchte ich jetzt Informationen über den angewählten Buddy haben. Dies ist sicher möglich und Freakazoid kann mir sicher sagen wie, oder? Wink

Ich danke schon mal im Vorraus.


LG James


RE: Informationen des ausgewählten Users. - Freakazoid - 11.09.2013

Na die Callback, die aufgerufen wird, wenn einer deiner Menüpunkte angeklickt wurde, bekommt ja einen PurpleBlistNode übergeben. Dort hängt dann im Prinzip alles dran, was man sich wünschen kann.

Was wünschst du dir denn genau?


RE: Informationen des ausgewählten Users. - jamesv1994 - 12.09.2013

Guten Morgen,
also mein Aufruf:

action = purple_menu_action_new(_("User anrufen."), PURPLE_CALLBACK(call_user), NULL, NULL);


und meine Callback-Signatur:
static void call_user (PurplePluginAction *action)

Das Problem:
Wenn ich versuche die Signatur des Callbacks zu ändern, erhalte ich folgendes:
Error 1 error C2664: 'purple_plugin_action_new' : cannot convert parameter 2 from 'void (__cdecl *)(PurpleBlistNode *)' to 'void (__cdecl *)(PurplePluginAction *)'

Oder meintest du die Callback, die aufgerufen wird, wenn die rechte Maustaste geklickt wird? Die erhält in der Tat ein PurpleBlistNode.
Das müsste ich dann aber auch das Node zur Verfügung stellen, durch eine Funktionsübergabe, dies akzeptiert mein Compiler aber nicht...? Smile


RE: Informationen des ausgewählten Users. - jamesv1994 - 12.09.2013

So also, das waren noch Altlasten Big Grin
Ich habe nun eine PurpleBlistNode zur Verfügung.

mittels purple_blist_node_get_string
kann ich mir anscheinend Elemente zurückgeben lassen. Aber, wo finde ich denn eine Auflistung, der verfügbaren Elemente?
Ich brauche Elemente aus der VCard, auf die kann ich doch sicherlich zugreifen, oder?

Vielen Dank.

LG James


RE: Informationen des ausgewählten Users. - Freakazoid - 12.09.2013

Ich weiß immer noch nicht genau, was du suchst... Beschreibe doch mal *genau*, was du suchst und vielleicht auch, was dein Plugin später mal können soll. Das würde es einfacher machen, dir zu helfen. Wink

purple_blist_node_get_string() sind halt allgemein Einstellungen. Mit purple_blist_node_get_string() kann auch jedes Plugin eigene anlegen. Ein Liste davon gibt es aber nach meinem Wissen nicht. Gespeichert wird aber alles in .purple/blist.xml. Vielleicht magst du da mal reinschauen.


RE: Informationen des ausgewählten Users. - jamesv1994 - 12.09.2013

Hey danke, für deine Antwort. Ich werde mir die Datei mal anschauen.
Ich möchte gerne die Telefon-Nummer des angewählten Kontaks haben.

---Edit:
Wie ich sehe, wird die Telefon-Nummer gar nicht dort drin gespeichert. Die Daten sind aber schon alle in der VCard definiert.

Gibt es da eine Möglichkeit darauf zuzugreifen?


RE: Informationen des ausgewählten Users. - Freakazoid - 12.09.2013

Was ist denn die VCard? Das, was bei Rechtsklick auf einen Buddy und dann "Info" erscheint? Falls ja: von welchem Protokoll reden wir?


RE: Informationen des ausgewählten Users. - jamesv1994 - 12.09.2013

Ganz genau, wir reden von XMPP. Ist das ein Unterschied?

Hast du vielleich ein paar Grundlagen-Links, bzw. wo hast du das ganze Wissen her?


RE: Informationen des ausgewählten Users. - Freakazoid - 12.09.2013

Eigentlich gibt es nur die API-Beschreibung unter [1] und ansonsten habe ich mir den Pidgin-Quellcode angeschaut. Wink

Meine Frage zu den VCards hast du mir nicht beantwortet.

[1] https://developer.pidgin.im/doxygen/2.0.0/html/main.html


RE: Informationen des ausgewählten Users. - jamesv1994 - 12.09.2013

Ok, mit der API habe ich mich noch nicht anfreunden können xD
Dankeschön!