DafyddHarries

Standards

Other Documentation

Namespaces

#define NS_DISCO_INFO "http://jabber.org/protocol/disco#info"
#define NS_DISCO_ITEMS "http://jabber.org/protocol/disco#items"
#define NS_JINGLE "http://jabber.org/protocol/jingle"
#define NS_JINGLE_AUDIO "http://jabber.org/protocol/jingle/media/audio"
#define NS_JINGLE_ RTP_ICE "http://jabber.org/protocol/jingle/transport/rtp-ice"
#define NS_GOOGLE_SESSION "http://www.google.com/session"
#define NS_GOOGLE_SESSION_PHONE "http://www.google.com/session/phone"

Google vs. Jingle

Session Initiation

<iq type="set" to="ole.andre.ravnaas@gmail.com/Telepathy" id="msg_8">
  <session
      initiator="dafydd.harries@collabora.co.uk/Tabby"
      type="initiate"
      id="1647103958"
      xmlns="http://www.google.com/session">
    <description xmlns="http://www.google.com/session/phone">
      <payload-type name="speex" id="96" xmlns="http://www.google.com/session/phone"></payload-type>
      <payload-type name="PCMA" id="8" xmlns="http://www.google.com/session/phone"></payload-type>
    </description>
  </session>
</iq> 

<iq to='juliet@capulet.com/balcony' from='romeo@montague.net/orchard' id='jingle1' type='set'>
  <jingle xmlns='http://jabber.org/protocol/jingle'
          action='session-initiate'
          initiator='romeo@montague.net/orchard'
          sid='a73sjjvkla37jfea'>
    <description ...>
    <transport ...>
  </jingle>
</iq>

    <description xmlns='http://jabber.org/protocol/jingle/media/audio'>
      <payload-type id='18' name='G729'/>
      <payload-type id="97" name="IPCMWB"/>
      <payload-type id='98' name='L16' rate='16000' channels='2'/>
      <payload-type id="96" name="ISAC" rate="8000"/>
      <payload-type id="102" name="iLBC"/>
      <payload-type id="4" name="G723"/>
      <payload-type id="100" name="EG711U"/>
      <payload-type id="101" name="EG711A"/>
      <payload-type id="0" name="PCMU" rate="16000"/>
      <payload-type id="8" name="PCMA"/>
      <payload-type id="13" name="CN"/>
    </description>

Session Acceptance

<iq type='set' to='dafydd.harries@collabora.co.uk/Tabby' id='msg_497e3fad_3179283_1923' from='ole.andre.ravnaas@gmail.com/Telepathy'>
  <session
      initiator='dafydd.harries@collabora.co.uk/Tabby'
      type='accept'
      id='1647103958'
      xmlns='http://www.google.com/session'>
    <description xmlns='http://www.google.com/session/phone'>
      <payload-type name='PCMA' id='8'/>
    </description>
  </session>
</iq>'

<iq type='set' from='juliet@capulet.com/balcony' to='romeo@montague.net/orchard' id='accept1'>
  <jingle xmlns='http://jabber.org/protocol/jingle'
          action='session-accept'
          initiator='romeo@montague.net/orchard'
          responder='juliet@capulet.com/balcony'
          sid='a73sjjvkla37jfea'>
    <description ...>
    <transport ...>
  </jingle>
</iq>

Transport Candidate Negotiation

<iq type="set" to="ole.andre.ravnaas@gmail.com/Telepathy" id="msg_9">
  <session
      initiator="dafydd.harries@collabora.co.uk/Tabby"
      type="candidates" id="1647103958"
      xmlns="http://www.google.com/session">
    <candidate
        generation="0"
        network="0"
        type="local"
        protocol="udp"
        preference="1.000000"
        password="8KiCg75+hUV3Q2jy"
        username="VV+6Qc97QWhXjnQt"
        port="33632"
        address="10.0.0.2"
        name="rtp"></candidate>
  </session>
</iq>

<iq to='juliet@capulet.com/balcony' from='romeo@montague.net/orchard' id='info1' type='set'>
  <jingle xmlns='http://jabber.org/protocol/jingle' 
          action='transport-info'
          initiator='romeo@montague.net/orchard'
          sid='a73sjjvkla37jfea'>
    <transport xmlns='http://jabber.org/protocol/jingle/transport/rtp-ice'>
      <candidate name='myrtpvoice1'
                 protocol='udp'
                 preference='1.0'
                 username='/38UHtocC941jdS4' 
                 password='pcd+Z/WmsthSFIcz'
                 type='local'
                 network='0'
                 generation='0' 
                 ip='10.1.1.104' 
                 port='13540'/>
    </transport>
  </jingle>
</iq>

Declination

GTalk sends a <session action="reject" />; Jingle considers a termination before an acceptance a declination.

Termination

<iq type="set" to="ole.andre.ravnaas@gmail.com/Telepathy" id="msg_8">
  <session
      initiator="dafydd.harries@collabora.co.uk/Tabby"
      type="terminate"
      id="401023247"
      xmlns="http://www.google.com/session">
  </session>
</iq> 

<iq from='juliet@capulet.com/balcony'
    id='term1'
    to='romeo@montague.net/orchard'
    type='set'>
  <jingle xmlns='http://jabber.org/protocol/jingle'
          action='terminate'
          initiator='romeo@montague.net/orchard'
          sid='a73sjjvkla37jfea'/>
</iq>