SMG ISDN

     


    Features

    Sangoma's ISDN Library uses Continuous Computing's (Trillium) LAPD and Q931 stacks to provide a commercial grade ISDN interface to FreeSWITCH, via the FreeTDM channel driver.


    List of supported variants

    • National ISDN 2 (T1)
    • NT DMS-100 (T1) 
    • Lucent 5ESS (T1)
    • Lucent 4ESS (T1)
    • Euroisdn/ETSI (E1 and BRI)
    • INSNET/NTT (BRI & J1*)
    • QSIG** (E1)

    *INSNET support on J1 is not fully tested yet.
    ** QSIG support has not been tested yet. 

    Customer (CPE) and Network (NET) emulation are supported for all variants.
    BRI point-to-point and point-to-multipoint are supported for EuroISDN and INS-NET variants.

     


    Configuration Options

    1. Switchtype
    2. Interface
    3. Overlap
    4. TEI
    5. Facility
    6. Facility Timeout
    7. TON (Type of Number)
    8. NPI (Numbering Plan Identification)
    9. Bearer Capability - Information Transfer Capability
    10. Bearer Capability - User Information Layer 1 Protocol
    11. MSN (Multiple Subscriber Number)
    12. Early Media Override
    13. Q931 Trace
    14. Q921 Trace
    15. Q931 Timers
    16. Channel ID invert Extended bit
    17. Setup Arbitration
    18. Sending RESTART on link up
    19. Channel Restart Timeout
    20. Force Sending Complete
    21. AT&T *8(*T) Transfer
    22. Force sending Caller ID Name
    23. Caller ID Name Transmit Method
       

    Switchtype
    This specifies the switch variant used.

    Valid options for T1:

    ni2 or national National ISDN 2
    5ess Lucent 5ESS
    4ess Lucent 4ESS
    dms100 NTT DMS-100

     

    Valid options for E1:

    euroisdn or etsi  EuroISDN/ETSI
    qsig QSIG [coming soon!]

     

    Valid options for BRI:

    euroisdn or etsi EuroISDN/ETSI
    insnet Japanese INS-NET

     

    Valid options for J1:

    insnet Japanese INS-NET [coming soon!]

     

    Example: <param name="switchtype" value="ni2" />



     

     


    Interface
    This specifies the switch emulation.
    Valid options: 

     

     

     

    cpe Customer Premises Equipment, when connected to a Telco
    net Network Emulation, when emulating a Telco

    Default value:CPE
    Freeswitch example: <param name="interface" value="cpe" />

     

     

     

     

     


    Overlap
    Enables/Disables Overlap Receive.
    Valid options:

     

     

     

    yes Enables overlap receive
    no Only BLOC mode is supported


    Default value:no
    Freeswitch example: <param name="overlap" value="yes" />

    Note: Overlap sending is not supported.

     

     


    TEI
    Specify the default TEI value. This parameter is ignored when in Point-to-multipoint mode.

     

    Valid options:1-126

    Default value: 0
    Freeswitch example: <param name="tei" value="64" />

     

     


    Facility
    Enables/Disables support for FACILITY messages. Enable this option if your Caller ID name is received in a FACILITY message instead of the SETUP message.

     

    Valid options:

    yes Enables support for FACILITY messages and FACILITY IE decoding
    no Disables support for FACILITY messages and FACILITY IE decoding

    Default value: no

    Freeswitch example: <param name="facility" value="yes" />

     


    Facility timeout
    If you are using the Facility option, and not all incoming SETUP messages are followed by FACILITY messages, you can specify a timeout for how long we will wait for the facility message, in milliseconds.

    Default value: 0

    Freeswitch example: <param name="facility-timeout" value="50" />

     

     

     

     


    TON (Type of Number)
    Specify the default TON on outbound calls.
    See table 4-14 of ITU-T Q.931 (05/98) for descriptions.

     

     

     

    List of parameters:

    outbound-called-ton Modify the default TON for the Called Party Number
    outbound-calling-ton Modify the default TON for the Calling Party Number
    outbound-rdnis-ton Modify the default TON for the Redirecting Number

     

    List of options:

    unknown Unknown
    international International number
    national National number
    local Subscriber number


    Freeswitch example: <param name="outbound-called-ton" value="international" />

     


     

     

     


    NPI (Numbering Plan Identification)

     

     

     

    Specify the default TON on outbound calls.
    See table 4-14 of ITU-T Q.931 (05/98) for descriptions.


    List of parameters:

    outbound-called-npi Modify the default NPI for the Called Party Number
    outbound-calling-npi Modify the default NPI for the Calling Party Number
    outbound-rdnis-npi Modify the default NPI for the Redirection Number

     

    List of options:

    unknown Unknown
    isdn ISDN/telephony numbering plan (Recommendation E.164)
    data Data numbering plan (Recommendation X.121)
    telex Telex numbering plan (Recommendation F.69)
    national National standard numbering plan
    private Private numbering plan
    reserved Reserved

     

    Freeswitch example: <param name="outbound-calling-npi" value="isdn" />

     


     


    Bearer Capability - Information Transfer Capability

     

    Sets the default Information Transfer Capability on outbound calls.
    See section 4.5.5 (octet 3) of ITU-T Q.931 (05/98) for descriptions.

    speech Speech
    unrestricted-digital Unrestricted digital information
    3.1khz 3.1 kHz audio


    Default value: speech
    Freeswitch example: <param name="outbound-bc-transfer-cap" value="3.1khz" />

     


     


    Bearer Capability - User Information Layer 1 Protocol

     

    Sets the default User information Layer 1 protocol on outbound calls.
    See section 4.5.5 (octet 5) of ITU-T Q.931 (05/98) for descriptions.

    v110 ITU-T Standardized rate adaptation V.110, I.460 and X.30
    ulaw Recommendation G.711 mu-law
    alaw Recommendation G.711 A-law


    Freeswitch example: <param name="outbound-bc-user-layer1" value="ulaw" />

     


    MSN (Multiple Subscriber Number)

    Valid for BRI CPE Point-to-multipoint only. Assign a local number to this span. Sangoma ISDN Library will not respond to calls where the called number does not match the local number.

    Each span can have up to 8 local numbers.

    Default value:<none>

    Freeswitch example: <param name="local-numbervalue="12356" />
     

     


     

    Early Media Override
     

    On incoming calls, this option will enable early media, even if the remote switch does not indicate "In-band information or an appropriate pattern is now available" in the Progress Indicator Information Element.

    See section 4.5.23 (octet 4) of ITU-T Q.931 (05/98) for descriptions.

    Default value:<none>

    on-proceed Early media enabled when PROCEED message is received
    on-alert Early media enabled when ALERT message is received
    on-progress Early media enabled when PROGRESS message is received
    Freeswitch example: <param name="early-media-overridevalue="on-progress" />
     

    Q931 trace 
    Enables Q.931 trace on start.

    Default value:no
    Possible values:yes/no

    Freeswitch example: <param name="q931-tracevalue="yes" />


    Q921 trace 
    Enables Q.921 trace on start.

    Default value:no
    Possible values:yes/no

    Freeswitch example: <param name="q921-tracevalue="yes" />



    Q931 Timers

    For description of Q.931 timers, see section 9.1 and 9.2 of ITU-T Q.931 (05/98) .
    Set to 0 to use default values.
    Values are in seconds. 

    Timer Parameter Default value in CPE mode Default value in NET mode
    T301 timer-t301 180 180
    T302 timer-t302 15 (N/A for US variants) 15 (N/A for US variants)
    T303 timer-t303 4 4
    T304 timer-t304 30 30
    T305 timer-t305 30 30
    T306 timer-t306 35 35
    T307 timer-t307 35 35
    T308 timer-t308 4 4
    T310 timer-t310 10 120
    T312 timer-t312 T303 + 2 N/A
    T313 timer-t313 4 4
    T314 timer-t314 35 35
    T316 timer-t316 120 120
    T318 timer-t318 4 4
    T319 timer-t319 4 4
    T322 timer-t322 4 4




    Channel Id Invert Extended Bit
    Inverts the Channel-Id extended bit in the Channel Id IE when switchtype is DMS-100.

    Note: This is a global parameter. This option will apply to all spans configured as DMS-100.

    Default value:no
    Possible values:yes/no

    Freeswitch example: <param name="channel-id-invert-extend-bitvalue="yes" />

    Sending RESTART on link up
    Forces the transmission of RESTART messages for each channel after the Q.921 layer is up.

    Default values:
    switchtype default value in CPE mode default value in NET mode
    NI-2 no yes
    dms100 no yes
    5ess no yes
    4ess no yes
    euroisdn no yes
    insnet no yes
    qsig no no

    Possible values:yes/no

    Freeswitch example: <param name="channel-restart-on-link-upvalue="yes" />
     

    Setup Arbitration
    Whether or not this node should be the arbiter for the Q.921 link. The arbiter is the side that sends SABME's when the link is down, and RR's once the Q.921 link is up.

    Default value: yes for CPE, no for NET.
    Freeswitch example: <param name="setup-arbitrationvalue="yes" />
     

    Channel Restart Timeout
    Once FreeTDM is loaded, if we do not receive a RESTART message withing this timeout, we will send a RESTART message on all idle channels within that span. This option is useful if FreeTDM is quickly reloaded, causing the remote side's Q.921 layer to say in connected state, and therefore have inconsistent channels. 

     
    Default value:0 (disabled)
    Possible values:1-any (in milliseconds)

    Freeswitch example: <param name="channel-restart-timeout" value="yes" />
     

    Force Sending Complete
    Forces the transmission of the Sending Complete Information Element on NI-2 and 5ESS switchtypes. 

    The Sending Complete Information Element is automatically included for EuroISDN variant.

    Note: Transmitting the Sending Complete IE on NI-2 and 5ESS is not to specifications,  and you should only enable this option if the remote switch is responding to outgoing SETUP messages with SETUP ACKNOWLEDGE when its not supposed to be.
    Default value:no
    Possible values:yes/no

     

    Freeswitch example: <param name="force-sending-completevalue="yes" />


    Force Sending Caller ID Name
    Forces the transmission for the Caller ID Name.
    Note: Transmitting the  Caller ID Name from the CPE to the Network is usually not to spec.

    Parameter name:send-cid-name

    Default value:auto
    Possible values:yes/no/auto

    auto: Send the Caller ID Name if configured as Network side, and spec allows it.
    no: Never send the Caller ID Name
    yes: Always send the Caller ID Name


    Freeswitch example: <param name="send-cid-name" value="yes" />


    Caller ID Name Transmit Method
    Specify which Information Element to use when sending the Caller ID Name.
    Note: Transmitting the Caller ID Name using Display IE on NI-2(national) variant is not to spec.
    Note: Transmitting the Caller ID Name using Facility IE on EuroISDN variant is not to spec.

    Parameter name:cid-name-transmit-method

    Default value:auto
    Possible values:display-ie, facility-ie, user-user-ie

    display-ie: Use the Display Information Element to transmit the Caller ID Name. This is the recommended method for EuroISDN - PRI.
    facility-ie: Use the Facility Information Element to transmit the Caller ID Name. This is the recommended method for North American Variants.
    user-user-ie: Use the user-user Information Element to transmit the Caller ID Name. This is the recommended method for EuroISDN - BRI.

    Freeswitch example: <param name="cid-name-transmit-methodvalue="display-ie" />
     

    1. Layer 1 statistics
    2. Protocol Status


    Layer 1 Statistics

    The layer 1 statistics command will print layer 1 statistics as reported by the Wanpipe drivers.

    Usage: l1_stats <span name>
    Freeswitch example: ftdm sangoma_isdn l1_stats wp1

     


    Protocol Status

    The protocol status command will print the signalling status of each span. All ISDN PRI spans and all ISDN BRI Point-to-point spans need to have their signalling status "UP" before attempting to make calls. On ISDN BRI Point-to-multipoint spans, the signalling link may be in "DOWN" state even though there are no line problems.

    Usage: show_spans
    Freeswitch example: ftdm sangoma_isdn show_spans



    Protocol trace

    To enable Q921 trace:
    Usage: trace q921 <span name>
    Freeswitch example: ftdm sangoma_isdn trace q921 wp1

    To enable Q931 trace:
    Usage: trace q931 <span name>
    Freeswitch example: ftdm sangoma_isdn trace q931 wp1

    To disable all traces:
    Usage: trace disable <span name>
    Freeswitch example: ftdm sangoma_isdn trace disable wp1