Yate
Public Member Functions | Protected Member Functions | Protected Attributes | Friends

JGSession0 Class Reference

The version 0 of a jingle session. More...

#include <yatejingle.h>

Inheritance diagram for JGSession0:
JGSession RefObject Mutex GenObject Lockable

List of all members.

Public Member Functions

virtual ~JGSession0 ()
virtual XMLElementcheckJingle (XMLElement *xml)
virtual bool accept (const ObjList &contents, String *stanzaId=0)

Protected Member Functions

 JGSession0 (JGEngine *engine, JBStream *stream, const String &callerJID, const String &calledJID, const char *msg=0)
 JGSession0 (JGEngine *engine, JBEvent *event, const String &id)
virtual bool initiate (const ObjList &contents, XMLElement *extra, const char *subject=0)
virtual bool sendContent (Action action, const ObjList &contents, String *stanzaId=0)
virtual JGEventdecodeJingle (JBEvent *jbev)
virtual XMLElementcreateJingle (Action action, XMLElement *element1=0, XMLElement *element2=0, XMLElement *element3=0)
virtual XMLElementcreateDtmf (const char *dtmf, unsigned int msDuration=0)

Protected Attributes

String m_sessContentName

Friends

class JGEvent
class JGEngine

Detailed Description

The version 0 of a jingle session.

A session implementing the old jingle protocol


Constructor & Destructor Documentation

virtual ~JGSession0 ( ) [virtual]

Destructor

JGSession0 ( JGEngine engine,
JBStream stream,
const String callerJID,
const String calledJID,
const char *  msg = 0 
) [protected]

Constructor. Create an outgoing session

Parameters:
engineThe engine that owns this session
streamThe stream this session is bound to
callerJIDThe caller's full JID
calledJIDThe called party's full JID
msgOptional message to be sent before session initiate
JGSession0 ( JGEngine engine,
JBEvent event,
const String id 
) [protected]

Constructor. Create an incoming session.

Parameters:
engineThe engine that owns this session
eventA valid Jabber Jingle event with action session initiate
idSession id

Member Function Documentation

virtual bool accept ( const ObjList contents,
String stanzaId = 0 
) [virtual]

Accept a Pending incoming session. This method is thread safe

Parameters:
contentsThe list of accepted contents
stanzaIdOptional string to be filled with sent stanza id (used to track the response)
Returns:
False if send failed

Reimplemented from JGSession.

virtual XMLElement* checkJingle ( XMLElement xml) [virtual]

Check if a given XML element is valid jingle one

Parameters:
xmlElement to check
Returns:
The given element if it's a valid jingle element, 0 otherwise

Reimplemented from JGSession.

virtual XMLElement* createDtmf ( const char *  dtmf,
unsigned int  msDuration = 0 
) [protected, virtual]

Create a dtmf XML element

Parameters:
dtmfThe dtmf string
msDurationThe tone duration in miliseconds. Ignored if 0
Returns:
Valid XMLElement pointer or 0

Implements JGSession.

virtual XMLElement* createJingle ( Action  action,
XMLElement element1 = 0,
XMLElement element2 = 0,
XMLElement element3 = 0 
) [protected, virtual]

Create an 'iq' of type 'set' with a 'jingle' child

Parameters:
actionThe action of the Jingle stanza
element1Optional child element
element2Optional child element
element3Optional child element
Returns:
Valid XMLElement pointer

Implements JGSession.

virtual JGEvent* decodeJingle ( JBEvent jbev) [protected, virtual]

Decode a valid jingle set event. Set the event's data on success

Parameters:
jbevThe event to decode
Returns:
JGEvent pointer or 0

Implements JGSession.

virtual bool initiate ( const ObjList contents,
XMLElement extra,
const char *  subject = 0 
) [protected, virtual]

Build and send the initial message on an outgoing session

Parameters:
contentsThe session contents to be sent with session initiate element
extraOptional extra child to be added to the session initiate element
subjectOptional session subject
Returns:
True on success

Implements JGSession.

virtual bool sendContent ( Action  action,
const ObjList contents,
String stanzaId = 0 
) [protected, virtual]

Send a stanza with session content(s) This method is thread safe

Parameters:
actionMust be a transport- action
contentsNon empty list with content(s) to send
stanzaIdOptional string to be filled with sent stanza id (used to track the response)
Returns:
False if send failed

Reimplemented from JGSession.


The documentation for this class was generated from the following file: