Skip to end of metadata
Go to start of metadata

Use Case: Outgoing Jingle call failure due to no supported codecs

Actor: Asterisk Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains only unsupported codecs.
  • Jingle client rejects call using session-terminate with incompatible-parameters reason.
  • Jingle channel is hung up and destroyed.

Gotchas:
While it is recommended that clients use incompatible-parameters some clients use something else. The code does not depend on incompatible-parameters but the cause code may not accurately reflect what happened if it is not used.

Use Case: Outgoing Jingle call success

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.

Use Case: Outgoing Jingle call with ringing

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client sends back ringing.
  • session-info is received from Jingle client containing ringing in namespace urn:xmpp:jingle:apps:rtp:info:1
  • Ringing is indicated on Jingle channel.

Gotchas:
Not all clients support the urn:xmpp:jingle:apps:rtp:info:1 namespace.

Use Case: Jingle call that is put on hold

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.
  • Jingle client puts call on hold.
  • session-info is received from Jingle client containing hold in namespace urn:xmpp:jingle:apps:rtp:info:1
  • Hold is indicated on Jingle channel.
  • Music on hold is started on caller.

Gotchas:
Not all clients support this.

Use Case: Jingle call that is put on hold and then taken off hold

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.
  • Jingle client puts call on hold.
  • session-info is received from Jingle client containing hold in namespace urn:xmpp:jingle:apps:rtp:info:1
  • Hold is indicated on Jingle channel.
  • Music on hold is started on caller.
  • Jingle client takes call off hold.
  • session-info is received from Jingle client containing unhold in namespace urn:xmpp:jingle:apps:rtp:info:1
  • Unhold is indicated on Jingle channel.
  • Music on hold is stopped on caller.
  • Two way communication is established.

Gotchas:
Not all clients support this.

Use Case: Jingle call with sent DTMF

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.
  • Caller sends DTMF digit.
  • DTMF is sent to Jingle client using RFC2833.

Use Case: Jingle call with received DTMF

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.
  • Jingle client sends DTMF digit.
  • DTMF digit is received using RFC2833.

Use Case: Jingle call success with caller initiated termination

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.
  • Caller hangs up channel.
  • session-terminate is sent to Jingle client with proper cause code mapping.

Use Case: Jingle call success with recipient initiated termination

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a SIP to an XMPP user with a connected Jingle client.
  • A Jingle channel is created.
  • session-initiate is sent that contains supported codecs.
  • Jingle client answers call.
  • session-accept is received from Jingle client.
  • Jingle channel is answered.
  • Two way communication is established.
  • Jingle client hangs up call.
  • session-terminate is received from Jingle client with reason.
  • Jingle channel is hung up with proper cause code.

Use Case: Incoming Jingle call failure due to no supported codecs

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a Jingle client to a SIP user.
  • session-initiate is received from Jingle client with unsupported codecs.
  • A Jingle channel is created.
  • session-reject is sent to Jingle client with incompatible-parameters reason.
  • Jingle channel is hung up and destroyed.

Use Case: Incoming Jingle call success

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a Jingle client to a SIP user.
  • session-initiate is received from Jingle client with supported codecs.
  • A Jingle channel is created.
  • Jingle channel is sent into dialplan.
  • Dialplan answers Jingle channel.
  • session-accept is sent to Jingle client.
  • Two way communication is established.

Use Case: Incoming Jingle call with ringing

Actor: Asterisk SCF Administrator
Actor: Caller
Actor: Recipient

Preconditions:

  • res_xmpp has been configured with user account on remote XMPP server
  • chan_jingle2 has been configured with user account

Scenario:

  • A call is made from a Jingle client to a SIP user.
  • session-initiate is received from Jingle client with supported codecs.
  • A Jingle channel is created.
  • Jingle channel is sent into dialplan.
  • Dialplan triggers ringing on Jingle channel.
  • session-info is sent to Jingle client with ringing in urn:xmpp:jingle:apps:rtp:info:1 namespace.
  • Ringing is indicated on Jingle client.
  • No labels