Difference between revisions of "SIP integration"

From exigoWiki
Jump to navigation Jump to search
(Created page with "= Prereqesites = Exigo SIP integration requires the following: * An Exigo system in single or A+B-mode (hot standby) running SW v1.3.x.x * Exigo Management Tool v1.3.x.x * An...")
 
(AlphaCom features)
 
(43 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
This article describes how the Exigo system can be integrated with 3rd party SIP servers via SIP trunking, and the features achieved via such an interface.
 +
 +
 
= Prereqesites =
 
= Prereqesites =
 
Exigo SIP integration requires the following:
 
Exigo SIP integration requires the following:
Line 4: Line 7:
 
* Exigo Management Tool v1.3.x.x
 
* Exigo Management Tool v1.3.x.x
 
* An iPBX or SIP device supporting SIP over UDP
 
* An iPBX or SIP device supporting SIP over UDP
 +
 +
{{Note}} Changes to SIP configuration require a reboot of the Exigo System Controller.'''
 +
 +
= System overview =
 +
An EXIGO system is integrated to a SIP-server over the LAN.
 +
 +
[[File:SIP Overview.png|left|thumb|500px|Integration with SIP Server]]
 +
<br style="clear:both;" />
  
 
= Network requirements =  
 
= Network requirements =  
 
==Protocols==
 
==Protocols==
 
Exigo supports the following protocols for integration:
 
Exigo supports the following protocols for integration:
  Function Protoco Ports
+
  Function Protocol Ports
  SIP Signaling UDP 5060
+
-------------  -------- -----------
  RTP Audio UDP 61000:61150
+
  SIP Signaling UDP 5060
  SNMP v1/v2c UDP 161
+
  RTP Audio UDP 61000:61150
 +
  SNMP v1/v2c UDP 161
  
 
==Ports==
 
==Ports==
Line 22: Line 34:
 
== Incoming (from SIP server) ==
 
== Incoming (from SIP server) ==
 
Exigo offers transcoding of the following codecs for incoming audio streams. However the native codec is G.722, and this can be passed through without any transcoding delay and is therefore highly recommended.
 
Exigo offers transcoding of the following codecs for incoming audio streams. However the native codec is G.722, and this can be passed through without any transcoding delay and is therefore highly recommended.
  Codec         Audio bandwidth Data bandwidth
+
  Codec       Audiobandwidth  Data bandwidth
  G.722         7kHz 64 kb/s
+
  -----------  --------------  --------------
  G.711 A-law 3.5 kHz 64 kb/s
+
'''G.722       7.0 kHz         64 kb/s'''
  G.711 µ-law 3.5 kHz 64 kb/s
+
  G.711 A-law 3.5 kHz         64 kb/s
  G.729         3.5 kHz 8 kb/s
+
  G.711 µ-law 3.5 kHz         64 kb/s
 +
  G.729       3.5 kHz         8 kb/s
  
 
== Outgoing (from Exigo) ==
 
== Outgoing (from Exigo) ==
All Exigo internal audio is wideband, and coded in G.722. The SIP server and device must support G.722 for outgoing integration (Exigo activity is sent to external SIP system).  
+
All Exigo internal audio is wideband, and coded in '''G.722'''. The SIP server and device must support G.722 for outgoing integration (Exigo activity is sent to external SIP system).
  
 
= Functionality =
 
= Functionality =
 
== Action calls (incoming activity) ==
 
== Action calls (incoming activity) ==
Exigo supports up to 99 actions calls that can be triggered by external SIP devices through the SIP trunk. These occupy the range of 98001 to 98099 and are configured in Exigo Management Tool. All action calls have an ON CONNECT and ON DISCONNECT action parameter.
+
Exigo supports up to 99 actions calls that can be triggered by external SIP devices through the SIP trunk. These occupy the range of '''98001''' to '''98099''' and are configured in Exigo Management Tool. All action calls have an '''ON CONNECT''' and '''ON DISCONNECT''' action parameter.
+
 
== On Connect ==
+
[[File:ActionCall.png|left|thumb|500px|ON CONNECT]]
 +
<br style="clear:both;" />
 +
 
 +
=== On Connect ===
 
This activity is triggered as a SIP connection to the specified action call is made.  
 
This activity is triggered as a SIP connection to the specified action call is made.  
  
== On Disconnect ==
+
=== On Disconnect ===
 
This activity is triggered as an active SIP connection to the specified action call is taken down.
 
This activity is triggered as an active SIP connection to the specified action call is taken down.
  
== Action call functions ==
+
=== Action call functions ===
Any Exigo function can be allocated to an Action Call, but some will not have any practical function. The following functions in Exigo are suitable for use with Action Call:
+
Any Exigo function can be allocated to an '''Action Call''', but some will not have any practical function. <br>
Input Action Description
+
The following functions in Exigo are suitable for use with '''Action Call''':
Alarm Control Start or stop alarms in selected zones
 
Audio Program Control Start or stop audio from program sources
 
Clear Activity Stop all activites of a given type or in (a) given zone(s)
 
Live Speech Distribute audio to one or more zones
 
Local Mute Control Activate local muting (timer or manual)
 
Message Control Start or stop locally stored messages
 
  
 +
Input Action          Description
 +
------------          --------------------------------------
 +
Alarm Control          Start or stop alarms in selected zones
 +
Audio Program Control  Start or stop audio from program sources
 +
Clear Activity        Stop all activites of a given type or in (a) given zone(s)
 +
Live Speech            Distribute audio to one or more zones
 +
Local Mute Control    Activate local muting (timer or manual)
 +
Message Control        Start or stop locally stored messages
  
== Priority (incoming)==
+
=== Priority (incoming)===
 
Actions with higher priority will replace the previous activity. Exigo offers several modes for addressing conflicts:<br>
 
Actions with higher priority will replace the previous activity. Exigo offers several modes for addressing conflicts:<br>
 
'''Higher priority call into a busy zone'''
 
'''Higher priority call into a busy zone'''
Line 63: Line 81:
 
* Go Partial – transmit to all selected zones except busy ones
 
* Go Partial – transmit to all selected zones except busy ones
 
* Queue – Assume activity when all selected zones are free
 
* Queue – Assume activity when all selected zones are free
* Split queue – Transmit to free zones, assume activity in busy zones when they become free
 
  
  
Line 70: Line 87:
 
* Replace – only if “replace” flag is set (next to priority slider)
 
* Replace – only if “replace” flag is set (next to priority slider)
 
   
 
   
 +
 +
[[File:OnConnect.JPG|left|thumb|500px|Priority - Incoming]]
 +
<br style="clear:both;" />
 +
 +
 
If desired, one action can be configured to two different Action Call numbers, one with a higher priority than the other. In the SIP server, limiting access to the two numbers can be used to differentiate high-priority devices from low-priority devices.
 
If desired, one action can be configured to two different Action Call numbers, one with a higher priority than the other. In the SIP server, limiting access to the two numbers can be used to differentiate high-priority devices from low-priority devices.
  
== Alphacom features (outgoing) ==
+
== SIP Header ==
Exigo supports 2-way integration. The outgoing functions are on the form [subscriber]@[ip-address]. In this form, [subscriber] must be comprised of numbers (0-9) only.  
+
See [[SIP Headers | this article]].
  
=== Alphacom features ===
+
== SIP Device (outgoing) ==
The alphacom feature simply lets one add a “vitual” device to a given Zone so that a particular activity can set up a SIP call to an external device. This can be used to:
+
Exigo supports 2-way integration. The outgoing functions are on the form '''[subscriber]@[ip-address]'''. In this form, [subscriber] must be comprised of numbers (0-9) only.
 +
 
 +
=== SIP Device ===
 +
The SIP Device simply lets one add a “virtual” device to a given Zone so that a particular activity can set up a SIP call to an external device.<br>
 +
This can be used to:
 
# Trigger a function in the iPBX – event handled by iPBX
 
# Trigger a function in the iPBX – event handled by iPBX
 
# Transmit audio activity out of the Exigo system (for integration of SIP-telephones or recording devices)  
 
# Transmit audio activity out of the Exigo system (for integration of SIP-telephones or recording devices)  
 
   
 
   
 +
[[File:SIP Integration.png|left|thumb|500px|SIP Device]]
 +
<br style="clear:both;" />
  
 
=== Priority (outgoing) ===
 
=== Priority (outgoing) ===
 
Exigo offers 100 levels of priority. For compatibility Exigo translates these to the 4 priority levels offered in RFC3261 (SIP).
 
Exigo offers 100 levels of priority. For compatibility Exigo translates these to the 4 priority levels offered in RFC3261 (SIP).
 +
 +
[[File:SIP Priorities.png|left|thumb|500px|Priority mapping]]
 +
<br style="clear:both;" />
 +
 +
== Availability ==
 +
This function is available from Exigo 1.3 and newer.
 +
 +
[[Category:Exigo features]]
 +
[[Category:Integration]]

Latest revision as of 09:52, 30 April 2019

This article describes how the Exigo system can be integrated with 3rd party SIP servers via SIP trunking, and the features achieved via such an interface.


Prereqesites

Exigo SIP integration requires the following:

  • An Exigo system in single or A+B-mode (hot standby) running SW v1.3.x.x
  • Exigo Management Tool v1.3.x.x
  • An iPBX or SIP device supporting SIP over UDP
Note.PNG Changes to SIP configuration require a reboot of the Exigo System Controller.

System overview

An EXIGO system is integrated to a SIP-server over the LAN.

Integration with SIP Server


Network requirements

Protocols

Exigo supports the following protocols for integration:

Function	Protocol Ports
-------------  -------- -----------
SIP Signaling	UDP	 5060
RTP Audio	UDP	 61000:61150
SNMP v1/v2c	UDP	 161

Ports

The following ports must be open in firewall for proper SIP integration

  • 5060
  • 61000 to 61150
  • 161 (for SNMP, optional)

Audio Codecs

Incoming (from SIP server)

Exigo offers transcoding of the following codecs for incoming audio streams. However the native codec is G.722, and this can be passed through without any transcoding delay and is therefore highly recommended.

Codec        Audiobandwidth  Data bandwidth
-----------  --------------  --------------
G.722        7.0 kHz         64 kb/s
G.711 A-law  3.5 kHz         64 kb/s
G.711 µ-law  3.5 kHz         64 kb/s
G.729        3.5 kHz          8 kb/s

Outgoing (from Exigo)

All Exigo internal audio is wideband, and coded in G.722. The SIP server and device must support G.722 for outgoing integration (Exigo activity is sent to external SIP system).

Functionality

Action calls (incoming activity)

Exigo supports up to 99 actions calls that can be triggered by external SIP devices through the SIP trunk. These occupy the range of 98001 to 98099 and are configured in Exigo Management Tool. All action calls have an ON CONNECT and ON DISCONNECT action parameter.

ON CONNECT


On Connect

This activity is triggered as a SIP connection to the specified action call is made.

On Disconnect

This activity is triggered as an active SIP connection to the specified action call is taken down.

Action call functions

Any Exigo function can be allocated to an Action Call, but some will not have any practical function.
The following functions in Exigo are suitable for use with Action Call:

Input Action           Description
------------           --------------------------------------
Alarm Control          Start or stop alarms in selected zones
Audio Program Control  Start or stop audio from program sources
Clear Activity         Stop all activites of a given type or in (a) given zone(s)
Live Speech            Distribute audio to one or more zones
Local Mute Control     Activate local muting (timer or manual)
Message Control        Start or stop locally stored messages

Priority (incoming)

Actions with higher priority will replace the previous activity. Exigo offers several modes for addressing conflicts:
Higher priority call into a busy zone

  • Mute – the activity is muted during the high-pri activity and resumed after
  • Cancel – the previous activity is canceled


Lower priority call into a busy zone

  • Reject – Cancel the entire activity
  • Go Partial – transmit to all selected zones except busy ones
  • Queue – Assume activity when all selected zones are free


Same priority call into a busy zone

  • First-come-first-served – standard Exigo behavior
  • Replace – only if “replace” flag is set (next to priority slider)


Priority - Incoming



If desired, one action can be configured to two different Action Call numbers, one with a higher priority than the other. In the SIP server, limiting access to the two numbers can be used to differentiate high-priority devices from low-priority devices.

SIP Header

See this article.

SIP Device (outgoing)

Exigo supports 2-way integration. The outgoing functions are on the form [subscriber]@[ip-address]. In this form, [subscriber] must be comprised of numbers (0-9) only.

SIP Device

The SIP Device simply lets one add a “virtual” device to a given Zone so that a particular activity can set up a SIP call to an external device.
This can be used to:

  1. Trigger a function in the iPBX – event handled by iPBX
  2. Transmit audio activity out of the Exigo system (for integration of SIP-telephones or recording devices)
SIP Device


Priority (outgoing)

Exigo offers 100 levels of priority. For compatibility Exigo translates these to the 4 priority levels offered in RFC3261 (SIP).

Priority mapping


Availability

This function is available from Exigo 1.3 and newer.