|
Yate
|
The version 1 of a jingle session. More...
#include <yatejingle.h>
Public Member Functions | |
| virtual | ~JGSession1 () |
| virtual bool | accept (const ObjList &contents, String *stanzaId=0) |
| virtual XmlElement * | createRtpInfoXml (RtpInfo info) |
| virtual XmlElement * | createReason (int reason, const char *text=0, XmlElement *child=0) |
| virtual XmlElement * | createTransferReason (int reason) |
| virtual XmlElement * | createRtpSessionReason (int reason) |
| virtual bool | sendContent (Action action, const ObjList &contents, String *stanzaId=0) |
| virtual bool | sendStreamHosts (const ObjList &hosts, String *stanzaId=0) |
| virtual bool | sendStreamHostUsed (const char *jid, const char *stanzaId) |
Public Member Functions inherited from JGSession | |
| virtual | ~JGSession () |
| Version | version () const |
| JGEngine * | engine () const |
| bool | outgoing () const |
| const String & | sid () const |
| const JabberID & | local () const |
| const JabberID & | remote () const |
| State | state () const |
| int | flag (int mask) const |
| void | setFlags (int value) |
| void * | userData () |
| void | userData (void *userdata) |
| const String & | line () const |
| void | line (const String &acc) |
| Action | getAction (XmlElement *xml) |
| bool | acceptIq (XMPPUtils::IqType type, const JabberID &from, const JabberID &to, const String &id, XmlElement *xml) |
| bool | confirmResult (XmlElement *xml) |
| bool | confirmError (XmlElement *&xml, XMPPError::Type error, const char *text=0, XMPPError::ErrorType type=XMPPError::TypeModify) |
| virtual bool | hangup (XmlElement *reason=0) |
| bool | sendContent (Action action, const JGSessionContent *content, String *stanzaId=0) |
| void | buildSocksDstAddr (String &buf) |
| bool | sendInfo (XmlElement *xml, String *stanzaId=0, XmlElement *extra=0) |
| bool | sendDtmf (const char *dtmf, unsigned int msDuration=0, String *stanzaId=0) |
| bool | hasFeature (XMPPNamespace::Type feature) |
Public Member Functions inherited from RefObject | |
| RefObject () | |
| virtual | ~RefObject () |
| virtual void * | getObject (const String &name) const |
| virtual bool | alive () const |
| bool | ref () |
| bool | deref () |
| int | refcount () const |
| virtual void | destruct () |
Public Member Functions inherited from GenObject | |
| GenObject () | |
| virtual | ~GenObject () |
| virtual const String & | toString () const |
| virtual const String & | traceId () const |
| NamedCounter * | getObjCounter () const |
| NamedCounter * | setObjCounter (NamedCounter *counter) |
Public Member Functions inherited from Mutex | |
| Mutex (bool recursive=false, const char *name=0) | |
| Mutex (const Mutex &original) | |
| ~Mutex () | |
| Mutex & | operator= (const Mutex &original) |
| virtual bool | lock (long maxwait=-1) |
| virtual bool | unlock () |
| virtual bool | locked () const |
| const char * | owner () const |
| bool | recursive () const |
Public Member Functions inherited from Lockable | |
| virtual | ~Lockable () |
| virtual bool | check (long maxwait=-1) |
| virtual bool | unlockAll () |
Protected Member Functions | |
| JGSession1 (JGEngine *engine, const JabberID &caller, const JabberID &called) | |
| JGSession1 (JGEngine *engine, const JabberID &caller, const JabberID &called, XmlElement *xml, const String &id) | |
| virtual bool | initiate (const ObjList &contents, XmlElement *extra, const char *subject=0) |
| virtual JGEvent * | decodeJingle (XmlElement *&xml, XmlElement *child) |
| virtual XmlElement * | createJingle (Action action, XmlElement *element1=0, XmlElement *element2=0, XmlElement *element3=0) |
| virtual XmlElement * | createDtmf (const char *dtmf, unsigned int msDuration=0) |
| virtual JGEvent * | processFileTransfer (bool set, XmlElement *&xml, XmlElement *child) |
Protected Member Functions inherited from JGSession | |
| JGSession (Version ver, JGEngine *engine, const JabberID &caller, const JabberID &called) | |
| JGSession (Version ver, JGEngine *engine, const JabberID &caller, const JabberID &called, XmlElement *xml, const String &id) | |
| virtual JGEvent * | getEvent (u_int64_t time) |
| virtual void | destroyed () |
| bool | sendStanza (XmlElement *stanza, String *stanzaId=0, bool confirmation=true, bool ping=false, unsigned int toutMs=0) |
| bool | sendPing (u_int64_t msecNow) |
| virtual JGEvent * | processJingleSetEvent (JGEvent *&ev) |
| virtual JGEvent * | processJabberIqResponse (bool result, XmlElement *&xml) |
| void | eventTerminated (JGEvent *event) |
| void | changeState (State newState) |
Protected Member Functions inherited from RefObject | |
| virtual void | zeroRefs () |
| bool | resurrect () |
Friends | |
| class | JGEvent |
| class | JGEngine |
Additional Inherited Members | |
Public Types inherited from JGSession | |
| enum | Version { Version0 = 0 , Version1 = 1 , VersionUnknown } |
| enum | Reason { ReasonUnknown = 0 , ReasonOk , ReasonBusy , ReasonDecline , ReasonCancel , ReasonExpired , ReasonConn , ReasonFailApp , ReasonFailTransport , ReasonGone , ReasonParams , ReasonMedia , ReasonTransport , ReasonApp , ReasonSecurity , ReasonTimeout , ReasonGeneral , ReasonAltSess , Transferred , CryptoRequired , InvalidCrypto } |
| enum | RtpInfo { RtpActive , RtpHold , RtpMute , RtpRinging } |
| enum | State { Idle = 0 , Pending = 1 , Active = 2 , Ending = 3 , Destroy = 4 } |
| enum | Action { ActAccept , ActInitiate , ActTerminate , ActReject , ActInfo , ActTransportInfo , ActTransportAccept , ActTransportReject , ActTransportReplace , ActCandidates , ActContentAccept , ActContentAdd , ActContentModify , ActContentReject , ActContentRemove , ActContentInfo , ActDescriptionInfo , ActTransfer , ActRinging , ActTrying , ActReceived , ActHold , ActActive , ActMute , ActDtmf , ActStreamHost , ActCount } |
| enum | SessionFlag { FlagNoPing = 0x0001 , FlagRingNsRtp = 0x0002 , FlagNoOkInitiate = 0x0004 } |
Static Public Member Functions inherited from JGSession | |
| static XmlElement * | buildTransfer (const String &transferTo, const String &transferFrom, const String &sid=String::empty()) |
| static Version | lookupVersion (const char *value, Version def=VersionUnknown) |
| static const char * | lookupVersion (int value, const char *def="unknown") |
| static int | lookupReason (const char *value, int def=ReasonOk) |
| static const char * | lookupReason (int value, const char *def=0) |
| static const char * | lookupState (int state) |
| static const char * | lookupAction (int act, Version ver) |
| static Action | lookupAction (const char *str, Version ver) |
Static Public Member Functions inherited from RefObject | |
| static bool | alive (const RefObject *obj) |
| static bool | efficientIncDec () |
Static Public Member Functions inherited from GenObject | |
| static void * | getObject (const String &name, const GenObject *obj) |
| static bool | getObjCounting () |
| static void | setObjCounting (bool enable) |
| static NamedCounter * | getObjCounter (const String &name, bool create=true) |
| static ObjList & | getObjCounters () |
Static Public Member Functions inherited from Mutex | |
| static int | count () |
| static int | locks () |
| static bool | efficientTimedLock () |
Static Public Member Functions inherited from Lockable | |
| static void | wait (unsigned long maxwait) |
| static unsigned long | wait () |
| static void | startUsingNow () |
| static void | enableSafety (bool safe=true) |
| static bool | safety () |
Static Public Attributes inherited from JGSession | |
| static const TokenDict | s_versions [] |
| static const TokenDict | s_reasons [] |
| static const TokenDict | s_rtpInfo [] |
| static const TokenDict | s_states [] |
| static const TokenDict | s_actions0 [] |
| static const TokenDict | s_actions1 [] |
| static const TokenDict | s_flagName [] |
Protected Attributes inherited from JGSession | |
| Version | m_version |
| State | m_state |
| int | m_flags |
| u_int64_t | m_timeToPing |
| JGEngine * | m_engine |
| bool | m_outgoing |
| String | m_sid |
| JabberID | m_local |
| JabberID | m_remote |
| XmlFragment | m_queue |
| JGEvent * | m_lastEvent |
| bool | m_recvTerminate |
| void * | m_private |
| String | m_localSid |
| u_int32_t | m_stanzaId |
| ObjList | m_sentStanza |
| String | m_line |
The version 1 of a jingle session.
A session implementing the Jingle protocol including session transfer and file transfer
|
virtual |
Destructor
|
protected |
Constructor. Create an outgoing session
| engine | The engine owning this session |
| caller | The caller's full JID |
| called | The called party's full JID |
References JGSession::engine().
|
protected |
Constructor. Create an incoming session.
| engine | The engine owning this session |
| caller | The caller's full JID |
| called | The called party's full JID |
| xml | A valid Jabber Jingle xml with action session initiate |
| id | Session id |
References JGSession::engine().
Accept a Pending incoming session. This method is thread safe
| contents | The list of accepted contents |
| stanzaId | Optional string to be filled with sent stanza id (used to track the response) |
Reimplemented from JGSession.
|
protectedvirtual |
Create a dtmf XML element
| dtmf | The dtmf string |
| msDuration | The tone duration in miliseconds. Ignored if 0 |
Implements JGSession.
|
protectedvirtual |
Create an 'iq' of type 'set' with a 'jingle' child
| action | The action of the Jingle stanza |
| element1 | Optional child element |
| element2 | Optional child element |
| element3 | Optional child element |
Implements JGSession.
|
virtual |
Create a termination reason element
| reason | The reason code |
| text | Optional reason text child |
| child | Optional additional reason child |
Reimplemented from JGSession.
|
virtual |
Create a RTP info child to be added to a session-info element
| info | The informational tag as enumeration |
Reimplemented from JGSession.
|
virtual |
Create a RTP session reason element
| reason | The reason code |
Reimplemented from JGSession.
|
virtual |
Create a transfer reason element
| reason | The reason code |
Reimplemented from JGSession.
|
protectedvirtual |
|
protectedvirtual |
Build and send the initial message on an outgoing session
| contents | The session contents to be sent with session initiate element |
| extra | Optional extra child to be added to the session initiate element |
| subject | Optional session subject |
Implements JGSession.
|
protectedvirtual |
Send a stanza with session content(s) This method is thread safe
| action | Must be a transport- or content- action |
| contents | Non empty list with content(s) to send |
| stanzaId | Optional string to be filled with sent stanza id (used to track the response) |
Reimplemented from JGSession.
Send a stanza with stream hosts This method is thread safe
| hosts | The list of hosts to send |
| stanzaId | Optional string to be filled with sent stanza id (used to track the response) |
Reimplemented from JGSession.
|
virtual |
Send a stanza with a stream host used. If the jid is empty, send an item-not-found error response This method is thread safe
| jid | The stream host to send |
| stanzaId | The id of the stanza to confirm |
Reimplemented from JGSession.