Se hai problemi di costruzione, mi sento male per te, figliolo. Perché seriamente, libjingle è una cagna da compilare. Se riesci a farlo compilare per qualunque piattaforma tu stia sviluppando, allora sei il 90% del modo in cui ci sei. Dipenderà davvero da te che ti siedi per un fine settimana e dai problemi di compilazione uno per uno. Due puntatori rapidi per Xcode: rimuovi (ma non cancella) tutte le merde specifiche di Windows e rimuovi tutti i file che hanno un metodo principale (unittests e main).
Una volta che l'hai creato, l'API è in realtà piuttosto straight-forward. L'architettura di una tipica applicazione libjingle ha diverse attività XMPP che vengono eseguite. Alcune attività sono attività di output che invieranno strofe: http://code.google.com/p/libjingle/source/browse/trunk/talk/examples/call/friendinvitesendtask.cc (guarda il metodo di invio) Questo dovrebbe essere abbastanza semplice. Costruisce una stanza XML e la accoda per l'elaborazione da parte di XMPPcliente.
Ci sono anche le attività di input che elaborano strofe: http://code.google.com/p/libjingle/source/browse/trunk/talk/examples/call/mucinviterecvtask.cc (sguardo al metodo di HandleStanza)
Anche se questo particolare metodo di HandleStanza è una merda-spettacolo, l'essenza di esso è che questo metodo viene chiamato per tutti Messaggi XMPP. Innanzitutto è necessario per determinare se vi preoccupate o no:
if (stanza->Name() != QN_MESSAGE) return false;
Poi si cammina attraverso l'XML ed estrarre le informazioni necessarie e le parti della vostra applicazione di segnale che preoccupa di questo.
Ovviamente, c'è anche l'API di tunneling, che è sostanzialmente più complicata e non proprio nell'ambito di una risposta StackOverflow. Se c'è abbastanza interesse posso entrare in questo, ma ti raccomando di impostare almeno libjingle e passare alcuni messaggi XMPP prima di immergerti nella configurazione dei tunnel.
Un ultimo puntatore sull'uso di libjingle: sii ESTREMAMENTE attento al threading.
può fornire informazioni per il documento libjingle e i passaggi per crearlo. Grazie in anticipo. –