Service Assurance: Sangoma Card Support v.1

Revision: 11 Apr 2017 - rev 14

Sangoma BRI-FXS cards specific informations

Introduction

Sangoma B700DE cards are hybrid cards with BRIs and FXS interfaces.
  • FXS interfaces use the Zaptel protocol, as do cards from the manufacturer Digium.
  • BRI interfaces use the Woomera protocol.

B710 with 4 BRIs and 2 FXS

note:
  • Even if there is the possibility to connect 4 BRIs, only 2 connectors are provided. In order to connect the 4 BRIs, a 'Y' splitter cable is foreseen in the box.
  • Even if there is the possibility to connect 2 analog ports, only 1 connector is provided. In order to connect the 2 analog phones or faxes, a 'Y' splitter cable is foreseen in the box.
  • There are 3 daughter boards which can be plugged in the card:
    • 2 BRI module which can either be positioned as a NT interface either as a TE interface. Insert these modules in the slots named 'BRI1' and 'BRI2'. If the module is properly inserted, you should see the mode appear in the windows under the BRI name.
    • 1 FXS/FXO module which can either be positioned as a FXS module (to connect phone or faxes for example) either as a FXO module (to connect analog lines).
  • At the end of the FXS/FXO module, there is the room to connect a power supply. This is needed in order to give the necessary power to the different equipments connected to the card.
  • The PCI card can also come as a PCI express card. This is normaly the PCI express card which is used in ESCAUX.
  • Dimension: 2U form factor: 187mm x 55 mm
  • Power: 800mA peak, normal operation 300mA max at 3.3 or 5V volt
  • Temparature: 0 to 50 degree celsius

The software architecture stack:

Sangoma B700 Protocol stack

Preparation 2FXS and 2/4 BRI Sangoma Card

BRI Extra information

  • When running in TE mode, ensure both termination resistors that correspond to the module are set to OFF.

  • When running in NT mode, ensure both termination resistors SW2 that correspond to the module are set to ON

2FXS Extra information

  • Plug in the molex

Resource configuration on SMP for BRI module

Create WoomeraTrunk interfaces for each BRI. 2 WoomeraTrunk interfaces for 2 BRI , 4 WoomeraTrunk interfaces for 4 BRI)

DONE Navigate to: SMP > Resources > Interfaces > Add > WoomeraTrunk

These are 2 important parameters :
  • Group: Set it to the BRI id you want to configure
  • Span: Set it to the BRI id you want to configure. The group and the span should be the same.

Resource configuration on SMP for FXS module

Create AnalogInterface resources for each FXS module. On FXS module consists of 2 AnalogInterface resources

DONE Navigate to: SMP > Resources > IP Phones > Add > AnalogInterface

More information about the used channels can be found in the AnalogInterface resource documentation.

Sangoma devices status

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > Physical Connection Status

Configuration File Summary in : /etc/wanpipe/

Device      Protocol   Type   Cpu/Io Slot/Irq  Bus   State
------------------------------------------------------------------------
wanpipe1   WAN_AFT_ISDN_BRI   PCI   A   4   2   Connected
wanpipe2   WAN_AFT_ISDN_BRI   PCI   A   4   2   Connected
wanpipe3   WAN_AFT_ISDN_BRI   PCI   A   4   2   Connected
wanpipe4   WAN_AFT_ISDN_BRI   PCI   A   4   2   Connected
wanpipe5   WAN_AFT_ANALOG   PCI   A   4   2   Connected

If the status of each wanpipeX device name are 'Connected', this means the physical link is ok.

Make sure that for each BRI you have one WoomeraTrunk resource. Otherwise there will be no BRI signaling on this trunk. This will cause MDL-ERRORs on the other end of the cable.

Generic Troubleshooting guide

Sangoma 1 architecture stack

How to restart the Sangoma driver ?

DONE Navigate to:  Shell > Subsystems > Sangoma > Restart driver

Card installation and basic connectivity troubleshooting

Card and modules installation check

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > Card installation status

If you don't see this entry in the shell menu, it means that the module "Sangoma Card Support" is not well installed.

The output should be like this one for 4BRI / 2 FXS Card in TE mode :

-------------------------------------------------
| Wanpipe Hardware Probe Info (verbose) |
-------------------------------------------------
1 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=1 : HWEC=16 : V=35
+01:TE: PCIe: PLX2: C01
2 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=2 : HWEC=16 : V=35
+02:TE: PCIe: PLX2: C01
3 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=3 : HWEC=16 : V=35
+03:TE: PCIe: PLX2: C01
4 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=4 : HWEC=16 : V=35
+04:TE: PCIe: PLX2: C01
5 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=5 : HWEC=16 : V=35
+01:FXS: PCIe: PLX2
+02:FXS: PCIe: PLX2

Card Cnt: B700=1

We can see that card is recognized by the system. We can see we have B700 card present in the sop. The mode of the 4 BRI modules is TE mode " :TE: PCIe: PLX2: C01 "

For a 2BRI / 2 FXS Card in NT mode :

-------------------------------------------------
| Wanpipe Hardware Probe Info (verbose) |
-------------------------------------------------
1 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=1 : HWEC=16 : V=35
+01:NT: PCIe: PLX2: C01
2 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=2 : HWEC=16 : V=35
+02:NT: PCIe: PLX2: C01
3 . AFT-B700-SH : SLOT=4 : BUS=5 : IRQ=5 : PORT=5 : HWEC=16 : V=35
+01:FXS: PCIe: PLX2
+02:FXS: PCIe: PLX2

Card Cnt: B700=1 

We can see that card is recognized by the system. We can see we have B700 card present in the sop. The mode of the BRI module is NT mode "*NT*: PCIe: PLX2: C01 "

Check Sangoma drivers

DONE Navigate to:  Shell plugin > Diagnostics > Sangoma Cards > Check drivers

The output should look like this :

 1469 pts/1    S+     0:00          \_ grep sangoma
 4418 ?        S      0:41 sangoma_brid -bg
 4440 ?        S<     0:41 sangoma_mgd -bg

If the output shows the 2 processes : sangoma_brid -bg and sangoma_mgd -bg the sangoma driver is succefully started

If it does not show those 2 processes restart the sangoma driver.

Check Sangoma devices currently active and physical connection

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > Physical Connection Status

Example output:

Configuration File Summary in : /etc/wanpipe/

Device      Protocol   Type   Cpu/Io Slot/Irq  Bus   State
------------------------------------------------------------------------
wanpipe1   WAN_AFT_ISDN_BRI   PCI   A   4   5   Connected
wanpipe2   WAN_AFT_ISDN_BRI   PCI   A   4   5   Connected
wanpipe3   WAN_AFT_ISDN_BRI   PCI   A   4   5   Connected
wanpipe4   WAN_AFT_ISDN_BRI   PCI   A   4   5   Connected
wanpipe5   WAN_AFT_ANALOG   PCI   A   4   5   Connected

Here, the output of the command shows everything is connected.

The wanpipes indicated "WAN_AFT_ISDN_BRI" protocol are the 4 BRI's.

  • If we see the following line : wanpipe1 WAN_AFT_ISDN_BRI PCI A 4 5 Connected
    • It means we receive a signal of the first BRI .

  • If we see "disconnected" instead of "connected"
    • it means the cable is not plugged in or we don 't receive a signal on the line (it can happens if the provider use "activation on demand").

Example 2:
wanpipe4   WAN_AFT_ISDN_BRI   PCI   A   4   5   Disconnected

Here, it shows that the fourth cable is disconnected.

  • If the status is "connecting" then you should check your physical setup. Be sure that the module is placed in the correct side (TE/NT) and that the resistors are configured accordingly.

Check if the FXS card is recognized and voltage status

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > FXS status

Choose a FXS interface. You should get something like this:

   ------- Voltage Status  (FXS,port 0) -------

TIP   : - 6.0160 Volts
RING   : -53.3920 Volts
VBAT   : -62.4160 Volts


If you get the message 'Failed to get voltage stats!' this means that this is not an FXS interface. You can check the interface type at [Diagnostics > Sangoma Cards > Physical Connection Status ].
If you get the message 'Ioctl: : No such device' this means that the device does not exist or is not configured you can see avaiable devices at [Diagnostics > Sangoma Cards > Physical Connection Status ].

Look also in the physical connection status that you have a line corresponding to the analog module.

wanpipe5   WAN_AFT_ANALOG   PCI   A   4   5   Connected

Check asterisk

Check if asterisk is running by trying to access the console, if you can't, you should double-check the Sangoma Admin Guide sections "Resource configuration".

DONE Navigate to:  Shell > Diagnostics > Telephony > Asterisk Console

Test quality

To test the quality of external calls, a beep signal can be used.

We have to create a callfow that generates a certain beep message with the action Milliwatt and link it to that extension. That extension, have to be linked to an external number.

Next we will make tests calls from an external phone (gsm, home phone) to the defined external number.

If you want to test every external line you have, you will need to start a call for each line you have. If you have a 4 BRI (8 channels), you will need to start 8 simulations calls and check if every beep signal is satisfying.

If the beep signal is not interrupted and is of good quality everything is ok.

Signaling and Traces

Enable Traces

If you encounter problems dialling a number or receiving calls. It is always a good thing to enable the following logging.

Asterisk BRI traces

DONE Navigate to:  Shell > Diagnostics > Telephony > Asterisk Console

00002041*CLI> set verbose 9
Verbosity is at least 9
00002041*CLI> set debug 9
Core debug is at least 9
00002041*CLI> woomera debug 3
Woomera debug=3

Asterisk PRI traces

You can only take PRI traces in Asterisk.

DONE Navigate to:  Shell > Diagnostics > Telephony > Asterisk Console

 *CLI> pri debug span 1 

BRI ISDN debugging

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > ISDN debug enable

View logs

Asterisk
You can access asterisk logs in the shell :

DONE Navigate to:  Shell > Diagnostics > Telephony > View Asterisk Log

BRI ISDN

You can access ISDN logging in the shell :

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > View ISDN Log

Asterisk debug example

BRI specific

(1) Here you can find a call from the SOP over the BRI interface of the card.

In the asterisk console we can see the following event that indicate a call is placed over the sangoma card. Each woomera trunk can handle two lines:

    -- Executing Dial("IAX2/127.0.0.1:32769-1", "WOOMERA/WOA10002:g2/027887505||") in new stack
    -- Called WOA10002:g2/027887505
**[WOOMERA]** HW DTMF supported s2c1-1102520059-783368690
    -- WOOMERA/g2/3 is ringing

WOOMERA/g2 indicates which trunk is used, in this case it is the second woomera trunk.

Woomera g1/1 -> First woomera trunk - line 1
Woomera g1/2 -> First woomera trunk - line 2
Woomera g2/3 -> Second woomera trunk - line 1
Woomera g2/4 -> Second woomera trunk - line 4

If you do a show channels in asterisk you get more information over the ongoing calls

This are two active calls over the second woomera trunk

WOOMERA/g2/4         s@default:1          Up      Bridged Call(IAX2/127.0.0.1:32
IAX2/127.0.0.1:32770 s@macro-Action_Goto. Up      Dial(WOOMERA/WOA10002:g2/02788
WOOMERA/g2/3         s@default:1          Up      Bridged Call(IAX2/127.0.0.1:32
IAX2/127.0.0.1:32769 s@macro-Action_Goto. Up      Dial(WOOMERA/WOA10002:g2/02788
4 active channels
2 active calls

(2) Here is a trace of a normal incoming call. Look at the events INCOMING, ACCEPT and HANGUP

**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---+
EVENT INCOMING s2c1
Unique-Call-Id: s2c1-1918502651-491705403
Remote-Number: 3226860903
Remote-Name: 
Protocol: BRI
User-Agent: sangoma_mgd
Local-Number: 
Channel-Name: g2/3
Trunk-Group: 2
Presentation: 0
Screening: 1
RDNIS: 
Bearer-Cap: SPEECH
uil1p: G_711_ALAW

**[WOOMERA]** +++LAUCN TECH THREAD
**[WOOMERA]** Main Thread {WOA10002} Select Return 1
**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
EVENT HELLO Sangoma Media Gateway
Supported-Protocols: TDM
Version: v1.59
Remote-Address: 127.0.0.1
Remote-Port: 52275
Raw-Format: ALAW

**[WOOMERA]** Send Message: {WOA10002} [localhost/42420]
---++
MEDIA s2c1-1918502651-491705403
Raw-Audio: 127.0.0.1:20066
Request-Audio: Raw
Unique-Call-Id: s2c1-1918502651-491705403

**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
200 MEDIA OK
Unique-Call-Id: s2c1-1918502651-491705403

**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
EVENT DTMF 
Unique-Call-Id:s2c1-1918502651-491705403
Content-Length:1

3
**[WOOMERA]** SEND DTMF [3] to s2c1-1918502651-491705403
**[WOOMERA]** CHECK {WOA10002} (1) s2c1-1918502651-491705403
**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++


**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
EVENT DTMF 
Unique-Call-Id:s2c1-1918502651-491705403
Content-Length:1

7
**[WOOMERA]** SEND DTMF [7] to s2c1-1918502651-491705403
**[WOOMERA]** CHECK {WOA10002} (1) s2c1-1918502651-491705403
**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++


**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
EVENT MEDIA s2c1 AUDIO
Unique-Call-Id: s2c1-1918502651-491705403
Raw-Audio: 127.0.0.1:10044
Call-ID: s2c1
Raw-Format: PCM-16
DTMF: OutofBand

**[WOOMERA]** HW DTMF supported s2c1-1918502651-491705403
**[WOOMERA]** CHECK {WOA10002} (1) s2c1-1918502651-491705403
    -- Executing WaitExten("WOOMERA/g2/3-2564", "2") in new stack
  == CDR updated on WOOMERA/g2/3-2564
    -- Executing SetVar("WOOMERA/g2/3-2564", "LastUserSop1=") in new stack
<Truncated output>
    -- Executing SetVar("WOOMERA/g2/3-2564", "timeout=90") in new stack
    -- Executing SetVar("WOOMERA/g2/3-2564", "extension_timeout=*00411") in new stack
    -- Executing SetVar("WOOMERA/g2/3-2564", "extension_busy=*00412") in new stack
    -- Executing Dial("WOOMERA/g2/3-2564", "ZAP/2|90|o") in new stack
    -- Called 2
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
    -- Zap/2-1 is ringing
**[WOOMERA]** Receive Message: {WOA10001} [localhost/42420]
---++
EVENT INCOMING s2c1
Unique-Call-Id: s2c1-1918502651-491705403
Remote-Number: 3226860903
Remote-Name: 
Protocol: BRI
User-Agent: sangoma_mgd
Local-Number: 
Channel-Name: g2/3
Trunk-Group: 2
Presentation: 0
Screening: 1
RDNIS: 
Bearer-Cap: SPEECH
uil1p: G_711_ALAW

**[WOOMERA]** +++LAUCN TECH THREAD
**[WOOMERA]** Main Thread {WOA10001} Select Return 1
**[WOOMERA]** Receive Message: {WOA10001} [localhost/42420]
---++
EVENT HELLO Sangoma Media Gateway
Supported-Protocols: TDM
Version: v1.59
Remote-Address: 127.0.0.1
Remote-Port: 51763
Raw-Format: ALAW

**[WOOMERA]** Send Message: {WOA10001} [localhost/42420]
---++
hangup s2c1-1918502651-491705403
cause: INVALID_CALL_REFERENCE
Q931-Cause-Code: 81
Unique-Call-Id: s2c1-1918502651-491705403

**[WOOMERA]** Receive Message: {WOA10001} [localhost/42420]
---++
EVENT HANGUP 
Cause: INVALID_CALL_REFERENCE
Q931-Cause-Code: 81

**[WOOMERA]** Queue Event: {WOA10001} [HANGUP]
**[WOOMERA]** Receive Message: {WOA10001} [localhost/42420]
---++
404 Session not found

**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** Hangup [s2c1-1918502651-491705403] 
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** Send Message: {WOA10002} [localhost/42420]
---++
ACCEPT s2c1-1918502651-491705403
Raw-Audio: 127.0.0.1:20066
Request-Audio: Raw
Unique-Call-Id: s2c1-1918502651-491705403

**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
200 ACCEPT OK
Unique-Call-Id: s2c1-1918502651-491705403

**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
    -- Zap/2-1 is ringing
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** +++READ WOOMERA/g2/3-2564 160 coding 8
**[WOOMERA]** CHECK {WOA10002} (0) s2c1-1918502651-491705403
**[WOOMERA]** Receive Message: {WOA10002} [localhost/42420]
---++
EVENT HANGUP s2c1
Unique-Call-Id: s2c1-1918502651-491705403
Start-Time: 1274168857
End-Time: 1274168857
Answer-Time: 1274168857
Call-ID: s2c1
Cause: NORMAL_CLEARING
Q931-Cause-Code: 16

**[WOOMERA]** Hangup [s2c1-1918502651-491705403] 
    -- Hungup 'Zap/2-1'
00000782*CLI> exit

PRI specific

Example of trace:

Aug 29 18:21:49-- Making new call for cr 36613
Aug 29 18:21:49> Protocol Discriminator: Q.931 (8)  len=50
Aug 29 18:21:49> Call Ref: len= 2 (reference 3845/0xF05) (Originator)
Aug 29 18:21:49> Message type: SETUP (5)
Aug 29 18:21:49> [04 03 80 90 a3]
Aug 29 18:21:49> Bearer Capability (len= 5) [ Ext: 1  Q.931 Std: 0  Info transfer capability: Speech (0)
Aug 29 18:21:49>                              Ext: 1  Trans mode/rate: 64kbps, circuit-mode (16)
Aug 29 18:21:49>                              Ext: 1  User information layer 1: A-Law (35)
Aug 29 18:21:49> [18 03 a9 83 81]
Aug 29 18:21:49> Channel ID (len= 5) [ Ext: 1  IntID: Implicit, PRI Spare: 0, Exclusive Dchan: 0
Aug 29 18:21:49>                        ChanSel: Reserved
Aug 29 18:21:49>                       Ext: 1  Coding: 0   Number Specified   Channel Type: 3
Aug 29 18:21:49>                       Ext: 1  Channel: 1 ]
Aug 29 18:21:49> [28 0e 54 65 63 68 6e 69 63 61 6c 20 74 65 73 74]
Aug 29 18:21:49> Display (len=14) [ Technical test ]
Aug 29 18:21:49> [6c 04 00 a1 30 30]
Aug 29 18:21:49> Calling Number (len= 6) [ Ext: 0  TON: Unknown Number Type (0)  NPI: Unknown Number Plan (0)
Aug 29 18:21:49>                           Presentation: Presentation prohibited, user number passed network screening (33) '00' ]
Aug 29 18:21:49> [70 0a 80 30 32 37 38 38 37 35 31 34]
Aug 29 18:21:49> Called Number (len=12) [ Ext: 1  TON: Unknown Number Type (0)  NPI: Unknown Number Plan (0) '027887514' ]
Aug 29 18:21:49> [a1]
Aug 29 18:21:49> Sending Complete (len= 1)
Aug 29 18:21:49< Protocol Discriminator: Q.931 (8)  len=13
Aug 29 18:21:49< Call Ref: len= 2 (reference 3845/0xF05) (Terminator)
Aug 29 18:21:49< Message type: STATUS (125)
Aug 29 18:21:49< [08 03 82 e3 28]
Aug 29 18:21:49< Cause (len= 5) [ Ext: 1  Coding: CCITT (ITU) standard (0) 0: 0   Location: Public network serving the local user (2)
Aug 29 18:21:49<                  Ext: 1  Cause: Info. element nonexist or not implemented (99), class = Protocol Error (6) ]
Aug 29 18:21:49<              Cause data 1: 28 (40, Display IE)
Aug 29 18:21:49< [14 01 01]
Aug 29 18:21:49< Call State (len= 3) [ Ext: 0  Coding: CCITT (ITU) standard (0) Call state: Call Initiated (1)
Aug 29 18:21:49-- Processing IE 8 (cs0, Cause)
Aug 29 18:21:49-- Processing IE 20 (cs0, Call State)
Aug 29 18:21:50< Protocol Discriminator: Q.931 (8)  len=10
Aug 29 18:21:50< Call Ref: len= 2 (reference 3845/0xF05) (Terminator)
Aug 29 18:21:50< Message type: CALL PROCEEDING (2)
Aug 29 18:21:50< [18 03 a9 83 81]
Aug 29 18:21:50< Channel ID (len= 5) [ Ext: 1  IntID: Implicit, PRI Spare: 0, Exclusive Dchan: 0
Aug 29 18:21:50<                        ChanSel: Reserved
Aug 29 18:21:50<                       Ext: 1  Coding: 0   Number Specified   Channel Type: 3
Aug 29 18:21:50<                       Ext: 1  Channel: 1 ]
Aug 29 18:21:50-- Processing IE 24 (cs0, Channel Identification)
Aug 29 18:21:52< Protocol Discriminator: Q.931 (8)  len=9
Aug 29 18:21:52< Call Ref: len= 2 (reference 3845/0xF05) (Terminator)
Aug 29 18:21:52< Message type: ALERTING (1)
Aug 29 18:21:52< [1e 02 82 88]
Aug 29 18:21:52< Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0) 0: 0   Location: Public network serving the local user (2)
Aug 29 18:21:52<                               Ext: 1  Progress Description: Inband information or appropriate pattern now available. (8) ]
Aug 29 18:21:52-- Processing IE 30 (cs0, Progress Indicator)

After the pickup of remote party:
Aug 29 18:21:59< Protocol Discriminator: Q.931 (8)  len=20
Aug 29 18:21:59< Call Ref: len= 2 (reference 3845/0xF05) (Terminator)
Aug 29 18:21:59< Message type: CONNECT (7)
Aug 29 18:21:59< [1e 02 81 82]
Aug 29 18:21:59< Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0) 0: 0   Location: Private network serving the local user (1)
Aug 29 18:21:59<                               Ext: 1  Progress Description: Called equipment is non-ISDN. (2) ]
Aug 29 18:21:59< [29 05 0c 08 1d 12 15]
< Time Date (len= 7) [ 12-08-29 18:21 ]
Aug 29 18:21:59< [4c 02 00 c3]
< Connected Number (len= 4) [ Ext: 0  TON: Unknown Number Type (0)  NPI: Unknown Number Plan (0)
<                             Ext: 1 Presentation: Number not available (67) '' ]
Aug 29 18:21:59-- Processing IE 30 (cs0, Progress Indicator)
Aug 29 18:21:59-- Processing IE 41 (cs0, Date/Time)
Aug 29 18:21:59-- Processing IE 76 (cs0, Connected Number)
Aug 29 18:21:59> Protocol Discriminator: Q.931 (8)  len=5
Aug 29 18:21:59> Call Ref: len= 2 (reference 3845/0xF05) (Originator)
Aug 29 18:21:59> Message type: CONNECT ACKNOWLEDGE (15)

Then the remote party hang up the phone:
Aug 29 18:22:06< Protocol Discriminator: Q.931 (8)  len=13
Aug 29 18:22:06< Call Ref: len= 2 (reference 3845/0xF05) (Terminator)
Aug 29 18:22:06< Message type: DISCONNECT (69)
Aug 29 18:22:06< [08 02 80 90]
Aug 29 18:22:06< Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0) 0: 0   Location: User (0)
Aug 29 18:22:06<                  Ext: 1  Cause: Normal Clearing (16), class = Normal Event (1) ]
Aug 29 18:22:06< [1e 02 82 88]
Aug 29 18:22:06< Progress Indicator (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0) 0: 0   Location: Public network serving the local user (2)
Aug 29 18:22:06<                               Ext: 1  Progress Description: Inband information or appropriate pattern now available. (8) ]
Aug 29 18:22:06-- Processing IE 8 (cs0, Cause)
Aug 29 18:22:06-- Processing IE 30 (cs0, Progress Indicator)
Aug 29 18:22:06NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Disconnect Indication, peerstate Disconnect Request
Aug 29 18:22:06> Protocol Discriminator: Q.931 (8)  len=9
Aug 29 18:22:06> Call Ref: len= 2 (reference 3845/0xF05) (Originator)
Aug 29 18:22:06> Message type: RELEASE (77)
Aug 29 18:22:06> [08 02 81 90]
Aug 29 18:22:06> Cause (len= 4) [ Ext: 1  Coding: CCITT (ITU) standard (0) 0: 0   Location: Private network serving the local user (1)
Aug 29 18:22:06>                  Ext: 1  Cause: Normal Clearing (16), class = Normal Event (1) ]
Aug 29 18:22:06< Protocol Discriminator: Q.931 (8)  len=5
Aug 29 18:22:06< Call Ref: len= 2 (reference 3845/0xF05) (Terminator)
Aug 29 18:22:06< Message type: RELEASE COMPLETE (90)
Aug 29 18:22:06NEW_HANGUP DEBUG: Calling q931_hangup, ourstate Null, peerstate Null
Aug 29 18:22:06NEW_HANGUP DEBUG: Destroying the call, ourstate Null, peerstate Null

Note that the originate of each lines/messages above can be determined by the characters " < " or " > ".
  • " > " from where you takes the trace to the network
  • " < " from the network to where you takes the trace

BRI ISDN debug example

See below the ISDN output of a call in the Sangoma ISDN log file. After we'll explain important messages.

5 32 39 38 35 34 39 00 00 00 00 00 00 00 0a 37 36 35 30 34 34 32 30 30 00 ff 00 00 00 00 00 10 00 10 03 00 ff 00 00 00 00 00 00 00 00 00 ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: NS -DLD|DL_EST_RQ      | 1: 0:   1|0: 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|3:SABME p1 tei=0. 00 01 7f 
Mar 24 17:47:28 00000854 smg_bri[7825]: DL -SM |SM_INFO_CO     | 1:ff:ffff|4: 6c 53 41 00 
Mar 24 17:47:28 00000854 smg_bri[7825]: SM -APP|SM_INFO_CO     | 1:ff:ffff|4: 6c 53 41 00 
Mar 24 17:47:28 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|3:UA p1 tei=0. 00 01 73 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-MDL|MDL_ERR_IN     | 1: 0:   1#34:tei=0: DL Connection ON 6c 65 ff ff 01 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 35 ff ff ff ff ff ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-NS |DL_EST_CO      | 1: 0:   1|10: 00 00 ff ff ff ff ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: MDL-SM |SM_REPORT_IN   | 1: 0:   1#34:DL-Event : ff ff 01 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 35 ff ff ff ff ff ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: NS -DLD|DL_DA_RQ       | 1: 0:   1#41: ^IQ.931:  PD=8 CR=55(0x37,Orig) SETUP(05): ^I^I^IBc(04):^ISpeech/64k/A-law^I80 90 a3 ^I^I^ICallingNb(6c):^Itype:unknown,plan:unknown "765044200"^I80 37 36 35 
30 34 34 32 30 30 ^I^I^ICalledNb(70):^Itype:unknown,plan:unknown "003215298549"^I80 30 30 33 32 31 35 32 39 38 35 34 39 ^I^I^IHlc(7d):^I91 81... ^IHex dump: 08 01 37 05 04 03 80 90 a3 6c 0a 80 37 36 35 30 34 34 32 30 30 70 0d 80 30 30 33
 32 31 35 32 39 38 35 34 39 7d 02 91 81 a1 
Mar 24 17:47:28 00000854 smg_bri[7825]: SM -APP|SM_REPORT_IN   | 1: 0:   1#34:DL-Event : ff ff 01 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 35 ff ff ff ff ff ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0#45:I[0,0]p0 tei=0  00 01 00 00 08 01 37 05 04 03 80 90 a3 6c 0a 80 37 36 35 30 34 34 32 30 30 70 0d 80 30 30 33 32 31 35 32 39 38 35 34 39 7d 02 91 81 a1 
Mar 24 17:47:28 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[1] p0 tei=0. 00 01 01 02 
Mar 24 17:47:28 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|11:I[0,1]p0 tei=0  02 01 00 02 08 01 b7 02 18 01 8a 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-DLD|WAIT_ACK       | 1: 0:   1|0: 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-NS |DL_DA_IN       | 1: 0:   1|7: ^IQ.931:  PD=8 CR=55(0x37,Dest) CALL-PROC(02): ^I^I^IChanId(18):^IB2/excl(BRI)^I8a ^IHex dump: 08 01 b7 02 18 01 8a 
Mar 24 17:47:28 00000854 smg_bri[7825]: NS -CC |NS_CALL_PROC_IN| 1: 0:   1|26: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[1] p0 tei=0. 02 01 01 02 
Mar 24 17:47:28 00000854 smg_bri[7825]: CC -MPH|MPH_B_SWITCH_RQ| 1: 1:ffff#36:B2,Voice 42 02 00 30 01 02 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
Mar 24 17:47:28 00000854 smg_bri[7825]: CC -APP|ACU_PROGRESS_IN| 1:61:   1#40: 54 10 00 ff ff 00 00 00 00 00 ff 01 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Mar 24 17:47:31 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|12:I[1,1]p0 tei=0  02 01 02 02 08 01 b7 01 1e 02 82 88 
Mar 24 17:47:31 00000854 smg_bri[7825]: DLD-DLD|WAIT_ACK       | 1: 0:   1|0: 
Mar 24 17:47:31 00000854 smg_bri[7825]: DLD-NS |DL_DA_IN       | 1: 0:   1|8: ^IQ.931:  PD=8 CR=55(0x37,Dest) ALERT(01): ^I^I^IProgInd(1e):^Iloc:public-net-serving-local-user, descr:In-band-info/pattern^I82 88 ^IHex dump: 08 01 b7 01 1e 
02 82 88 
Mar 24 17:47:31 00000854 smg_bri[7825]: NS -CC |NS_ALERT_IN    | 1: 0:   1|24: 00 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 08 ff 
Mar 24 17:47:31 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[2] p0 tei=0. 02 01 01 04 
Mar 24 17:47:31 00000854 smg_bri[7825]: CC -APP|ACU_ALERT_IN   | 1:61:   1#40: 41 01 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 01 02 08 00 00 00 00 
Mar 24 17:47:33 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|24:I[2,1]p0 tei=0  02 01 04 02 08 01 b7 07 1e 02 80 82 29 06 0b 03 18 11 2f 1c 4c 02 00 c3 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-DLD|WAIT_ACK       | 1: 0:   1|0: 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-NS |DL_DA_IN       | 1: 0:   1|20: ^IQ.931:  PD=8 CR=55(0x37,Dest) CONN(07): ^I^I^IProgInd(1e):^Iloc:user, descr:non-ISDN-dest^I80 82 ^I^I^IDateTime(29):^I0b 03 18 11 2f 1c ^I^I^I?(4c):^I00 c3 
^IHex dump: 08 01 b7 07 1e 02 80 82 29 06 0b 03 18 11 2f 1c 4c 02 00 c3 
Mar 24 17:47:33 00000854 smg_bri[7825]: NS -MNS|MNS_ERR_IN     | 1: 0:   1|20:IE unknown 53 72 50 00 4c 00 00 00 04 08 01 ff 6e 00 00 00 07 00 ff 00 
Mar 24 17:47:33 00000854 smg_bri[7825]: NS -CC |NS_CONN_CO     | 1: 0:   1#40: 00 00 00 00 1a 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 ff 00 00 0b 03 18 11 2f 1c 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[3] p0 tei=0. 02 01 01 06 
Mar 24 17:47:33 00000854 smg_bri[7825]: NS -DLD|DL_DA_RQ       | 1: 0:   1|12: ^IQ.931:  PD=8 CR=55(0x37,Orig) STATUS(7d): ^I^I^ICause(08):^Icause 63h=99=IE non-existent or not implemented^I80 e3 4c ^I^I^ICallState(14):^I0a ^IHex dump: 0
8 01 37 7d 08 03 80 e3 4c 14 01 0a 
Mar 24 17:47:33 00000854 smg_bri[7825]: CC -APP|ACU_CONN_CO    | 1:61:   1#72: 56 01 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 0b 03 18 11 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 00 00 00 00 00 00 00 00 ff 00 00 00 00 00 00 00 00 00 00 
Mar 24 17:47:33 00000854 smg_bri[7825]: CC -MPH|MPH_INIT_RQ    | 1: 1:ffff#50:B2,Voice,64K,SYN/X/X/O, 02 42 00 00 00 00 00 00 6e 6e 00 00 00 00 ff ff ff ff 01 02 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
ff ff ff ff ff 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|16:I[1,3]p0 tei=0  00 01 02 06 08 01 37 7d 08 03 80 e3 4c 14 01 0a 
Mar 24 17:47:33 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|16:I[3,1]p0 tei=0  02 01 06 02 08 01 b7 7b 28 06 4e 34 30 2a 31 23 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-DLD|WAIT_ACK       | 1: 0:   1|0: 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-NS |DL_DA_IN       | 1: 0:   1|12: ^IQ.931:  PD=8 CR=55(0x37,Dest) INFO(7b): ^I^I^IDisplay(28):^I4e 34 30 2a 31 23 ^IHex dump: 08 01 b7 7b 28 06 4e 34 30 2a 31 23 
Mar 24 17:47:33 00000854 smg_bri[7825]: NS -CC |NS_INFO_IN     | 1: 0:   1|28: 00 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 07 4e 34 30 2a 31 23 00 
Mar 24 17:47:33 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[4] p0 tei=0. 02 01 01 08 
Mar 24 17:47:33 00000854 smg_bri[7825]: CC -APP|ACU_INFORM_IN  | 1:61:   1#55: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 07 00 00 00 07 ff 00 70 4f 12 08 00 00 00 00 00 00 00 00 4e 34 30 2a 31 23 00 00 00
 00 00 
Mar 24 17:47:33 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[2] p0 tei=0. 00 01 01 04 
Mar 24 17:47:43 00000854 smg_bri[7825]: TI -DLD|TI_203         | 1: 0:   1|10:Seq nb = 115 73 00 ff ff ff ff ff ff ff ff 
Mar 24 17:47:43 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[4] p1 tei=0. 00 01 01 09 
Mar 24 17:47:43 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[2] p1 tei=0. 00 01 01 05 
Mar 24 17:47:43 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[2] p1 tei=0. 02 01 01 05 
Mar 24 17:47:43 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[4] p1 tei=0. 02 01 01 09 



Mar 24 17:48:03 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[4] p1 tei=0. 00 01 01 09 
Mar 24 17:48:03 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[2] p1 tei=0. 00 01 01 05 
Mar 24 17:48:03 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[2] p1 tei=0. 02 01 01 05 
Mar 24 17:48:03 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[4] p1 tei=0. 02 01 01 09 
Mar 24 17:48:07 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|24:I[4,2]p0 tei=0  02 01 08 04 08 01 b7 45 08 02 80 90 1e 02 82 88 28 06 4e 34 30 2a 31 23 
Mar 24 17:48:07 00000854 smg_bri[7825]: DLD-NS |DL_DA_IN       | 1: 0:   1|20: ^IQ.931:  PD=8 CR=55(0x37,Dest) DISC(45): ^I^I^ICause(08):^Icause 10h=16=Normal clearing^I80 90 ^I^I^IProgInd(1e):^Iloc:public-net-serving-local-user, descr:I
n-band-info/pattern^I82 88 ^I^I^IDisplay(28):^I4e 34 30 2a 31 23 ^IHex dump: 08 01 b7 45 08 02 80 90 1e 02 82 88 28 06 4e 34 30 2a 31 23 
Mar 24 17:48:07 00000854 smg_bri[7825]: NS -CC |NS_CLEAR_IN    | 1: 0:   1#42: 12 00 00 00 1a 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 02 08 ff 00 00 07 4e 34 30 2a 31 23 00 
Mar 24 17:48:07 00000854 smg_bri[7825]: CC -APP|ACU_CLEAR_IN   | 1:61:   1#63:hungup,cause 10h=16=Normal clearing 68 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 07 00 00 00 07 ff 00 14 44 12 08 00 
ff 01 02 08 00 00 00 00 00 00 00 00 00 00 00 4e 34 30 2a 31 23 00 
Mar 24 17:48:07 00000854 smg_bri[7825]: DLD-DLD|WAIT_ACK       | 1: 0:   1|0: 
Mar 24 17:48:07 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[5] p0 tei=0. 02 01 01 0a 
Mar 24 17:48:07 00000854 smg_bri[7825]: APP-CC |ACU_CLEAR_RS   | 1:61:   1#54: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff
 ff 
Mar 24 17:48:07 00000854 smg_bri[7825]: CC -NS |NS_CLEAR_RS    | 1: 0:   1#16: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Mar 24 17:48:07 00000854 smg_bri[7825]: NS -DLD|DL_DA_RQ       | 1: 0:   1|4: ^IQ.931:  PD=8 CR=55(0x37,Orig) REL(4d): ^IHex dump: 08 01 37 4d 
Mar 24 17:48:07 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|8:I[2,5]p0 tei=0  00 01 04 0a 08 01 37 4d 
Mar 24 17:48:07 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[3] p0 tei=0. 00 01 01 06 
Mar 24 17:48:08 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|12:I[5,3]p0 tei=0  02 01 0a 06 08 01 b7 5a 08 02 80 90 
Mar 24 17:48:08 00000854 smg_bri[7825]: DLD-DLD|WAIT_ACK       | 1: 0:   1|0: 
Mar 24 17:48:08 00000854 smg_bri[7825]: DLD-NS |DL_DA_IN       | 1: 0:   1|8: ^IQ.931:  PD=8 CR=55(0x37,Dest) REL-COMP(5a): ^I^I^ICause(08):^Icause 10h=16=Normal clearing^I80 90 ^IHex dump: 08 01 b7 5a 08 02 80 90 
Mar 24 17:48:08 00000854 smg_bri[7825]: NS -CC |NS_CLEAR_CO    | 1: 0:   1|24: 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 
Mar 24 17:48:08 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[6] p0 tei=0. 02 01 01 0c 
Mar 24 17:48:08 00000854 smg_bri[7825]: CC -MPH|MPH_STOP_RQ    | 1: 1:ffff#50: 02 42 00 00 00 00 00 00 6e 6e 00 00 00 00 ff ff ff ff 01 02 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
Mar 24 17:48:08 00000854 smg_bri[7825]: CC -MPH|MPH_B_SWITCH_RQ| 1: 1:ffff#36:B2,Nil 4f 02 00 30 01 02 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
Mar 24 17:48:08 00000854 smg_bri[7825]: CC -APP|ACU_CLEAR_CO   | 1:61:   1#52:hungup,cause 10h=16=Normal clearing 68 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 
Mar 24 17:48:18 00000854 smg_bri[7825]: TI -DLD|TI_203         | 1: 0:   1|10:Seq nb = 124 7c 00 ff ff ff ff ff ff ff ff 
Mar 24 17:48:18 00000854 smg_bri[7825]: DLD-PHD|PH_DA_RQ       | 1: 0:   0|4:RR[6] p1 tei=0. 00 01 01 0d 
Mar 24 17:48:18 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|4:RR[3] p1 tei=0. 00 01 01 07 
Mar 24 17:48:18 00000854 smg_bri[7825]: PHD-DLD|PH_DA_IN       | 1: 0:   0|3:Disc p1 tei=0. 02 01 53 

If we take a closer look, you will notice the following parts :

SETUP

The SETUP message initiates call establishment.Caller sends a SETUP to the Called.

When a system receives a SETUP message with acceptable parameters, the system must generate a CALL PROCEEDING message and send it to the network

PD=8 CR=55(0x37,Orig) SETUP(05):   Bc(04): Speech/64k/A-law 80 90 a3   CallingNb(6c): type:unknown,plan:unknown "765044200" 80 37 36 35 30 34 34 32 30 30   CalledNb(70): type:unknown,plan:unknown "003215298549" 80 30 30 33 32 31 35 32 39 38 35 34 39   Hlc(7d): 91 81...  Hex dump: 08 01 37 05 04 03 80 90 a3 6c 0a 80 37 36 35 30 34 34 32 30 30 70 0d 80 30 30 33 32 31 35 32 39 38 35 34 39 7d 02 91 81 a1 

Important information :

  • Calling Number "765044200"
  • Called Number "003215298549"

CAll-PROC = Call Proceeding

If the SETUP is ok, the Called sends a Call Proceeding to the Caller

ALERT

The receiver gets the SETUP. If it is OK, then it rings the phone and sends an ALERTING message to the caller.

CONN = CONNECT

When the receiver answers the call, it sends a CONNECT message to the Caller

DISC = DISCONNECT

The DISCONNECT message clears a connection. The expected response to a DISCONNECT is RELEASE

 DISC(45):    Cause(08): Icause 10h=16=Normal clearing 80 90   ProgInd(1e): loc:public-net-serving-local-user, descr:In-band-info/pattern 82 88  Display(28): 4e 34 30 2a 31 23  Hex dump: 08 01 b7 45 08 02 80 90 1e 02 82 88 28 06 4e 34 30 2a 31 23 
Mar 24 17:48:07 00000854 smg_bri[7825]: NS -CC |NS_CLEAR_IN    | 1: 0:   1#42: 12 00 00 00 1a 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 02 08 ff 00 00 07 4e 34 30 2a 31 23 00 
Mar 24 17:48:07 00000854 smg_bri[7825]: CC -APP|ACU_CLEAR_IN   | 1:61:   1#63:hungup,cause 10h=16=Normal clearing 68 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 07 00 00 00 07 ff 00 14 44 12 08 00 

Important information:
  • Hangup cause : cause 10h=16=Normal clearing. This cause indicates that the call is being cleared because one of the users in the call has requested the call to be cleared.

An overview of the different causes can be found here:

http://networking.ringofsaturn.com/Routers/isdncausecodes.php

RELEASE

The RELEASE message clears a connection. When a DISCONNECT message is received. A RELEASE message is sent to acknowledge the DISCONNECT message and clear the connection. The system processes the RELEASE automatically.

REL-COMP = The RELEASE COMPLETE

The RELEASE COMPLETE message acknowledges receipt of a RELEASE message and is the final step in clearing a connection. No response is expected.

BRI ISDN capture (pcap) on a specific interface

In the shell you have the option to take a specific trace on a specific BRI interface

DONE Navigate to:  Shell > Diagnostics > Sangoma Cards > Capture ISDN Traffic - Select a channel (e.g. w1g1) and press OK

w1g1 is the first BA of the first port. w2g1 is the second BA of the first port. w3g1 is the first BA of the second port (if a second BA module is inserted) or the FXS w4g1 is the second BA of the second port (if a second BA module is inserted) w5g1 is the FXS (if a second BA module is inserted)

When the capture is done, you should get the file through the filemanager (http://<SOP_IP_ADDRESS>/fileman).

See below an example of trace taken on a specific woomera interface

ISDN PCAP capture:
PCAP capture ISDN SETUP

If we analyse the trace in wireshark

We can see the following :

At 16:16:23 the SOP sends a SETUP message over the line.
The source is User (Sop) and the destination is Remote network.
When analyzing the setup message we can found the following information

Calling party number = 00 -> we are calling outside using a hidden number
Called party number = 0027887543 -> the number we are calling

The following indicates that the call has been disconnected by the party "remote network" (16:16:31) and the DISCONNECT is confirmed with a RELEASE.

FAX bad quality

When you have installed and Sangoma FXS and a PRI FXS with Sangoma Card support 1 and you are experiencing quality issue on the FXS line please enable the option sync cabling

It will say to the FXS card to get his signaling from the PRI card

Other resources

Copyright © Escaux SA