| CONTACT | DEVELOPER CENTER | PARTNERS | SITEMAP
GO
Useful Links
  • Search Helpweb
    
    

Dialogic Support Helpweb

Dialogic® Host Media Processing (HMP) Software

Modifying ISDN Variants At Runtime On Dialogic® DM/IP and Dialogic® DM3 Media Boards


Summary:
How to modify ISDN protocol variants at runtime on Dialogic® DM/IP Boards and Dialogic® DM3 Media Boards' Spans

Abstract:
This technote outlines how to change ISDN protocol variants or types at runtime on Dialogic® DNI300 and DMV600 and DMV1200 boards. This can be accomplished for any such Dialogic® board that has already downloaded ISDN protocols. A sample application is also attached to this technote.

Examples of Dialogic® DM/IP Boards are as follows: (Note: Can be used on Dialogic® Host Media Processing (HMP) Software Release 2.0 for Windows® and Dialogic® HMP Software Release 3.0 for Windows®:

  1. Dialogic® DNI300TEPHMP Digital Network Interface Board
  2. Dialogic® DNI601TEPHMP Digital Network Interface Board
  3. Dialogic® DNI1200TEPHMP Digital Network Interface Board
Examples of Dialogic® DM3 Media Boards are as follows (Note: Can be used with Dialogic® System Release 6.0 PCI for Windows® line):

  1. Dialogic® DMV600BTEP Media Board
  2. Dialogic® DMV1200BTEP Media Board
Brief Explanation Of Capability and Prerequisites:
ISDN variants are different flavors of ISDN protocols, available for each span. For example, a DNI1200TEPHMP board has 5ESS protocols for each of its 4 spans at download time. If an application is programmed properly, it can use the API calls outlined below to change the protocols, where all 4 spans will run NI2 without downloading again.

This is done via a gc_SetConfigData() call made on a digital board device (e.g. dtiB1) after an instance of a GC_PARM_BLK is filled it with the right properties.

Feature tested satisfactorily on System Release 6.0 PCI Windows SU152 and Dialogic® Host Media Processing Software Release 2.0 for Windows® SU140. It was included in prior builds however, some issues were present which needed to be adjusted before this feature was fully usable.

How to Change ISDN Variants:
Changing ISDN variants at runtime can be done on the spans of the boards specified above via the gc_SetConfigData() on a digital board device handle.

The parameters provided to the gc_SetConfigData()function call are the following:


The GC_PARM_BLK instance can be filled out via the gc_util_insert_parm_ref( ) function call with the following parameters:
If called synchronously, then the function returns when the change has finished or an error occurred (-1 returned).  However, if called asynchronously then the application receives one of the following events:
Some Cautions:
  1. Make sure the protocol name string provided as a parameter to gc_util_insert_parm_ref( ) in the data field is set in lowercase -- meaning "4ess" instead of "4ESS."  
  2. The ISDN protocol name must be one of the supported protocols listed in the CONFIG file that corresponds to the PCD/FCD file that is downloaded. Only protocols of the same line type can be selected, that is, if the trunk is of line type E1, then only a protocol variant that is valid for E1 can be selected.

Here is an excerpt from the gnetworkonly_hmpqsb_4_ni2.config file (DMV1200BTEP board's file when all four spans were downloaded for NI2):

! 
! ISDN Protocol variant definitions
!
Variant VariantFormat 2 ! ISDN format (isdndefs.h)
Variant ProtocolType 1 ! 4ESS,NI2=1, 5ESS=2, DMS=3, NTT=4, NET5=7, DASS2=8, DPNSS=9 , QSIGE1=10, QSIGT1=11
Variant InterCallDelay 1000 ! msecs. Time to impose between outbound calls.
Variant DisconnectTimeout 100 ! msecs. Delay between Proceeding and alert/connect.

Sample code:
The sample code provided is called ISDNVariantChange and it is a Visual C++ 6.0 Project. It is compiled and linked via GlobalCall and SRL libraries from Dialogic HMP Software 2.0 SU140.

If using this release, an executable version is already included in the Release directory or if needed, this project can be recompiled and linked in a later version. It can be run via the command line with the following parameters:

ISDNVariantChange <digital board device> <protocol name>

e.g. 

If dtiB1 was originally downloaded with NI2 protocol, it can be changed to 4ESS via the following:

ISDNVariantChange dtiB1 4ess

If successful, the application will receive a GCEV_SETCONFIDATA event.
If unsuccessful, the application will receive a GCEV_SETCONFIGDATAFAIL event.

Here is a sample run with output:

"E:\Technote Apps\ISDNVariantChange\Release>isdnvariantchange dtiB5 ni2 
Excellent
Your parameters are as follows:
Span = dtiB5 and new protocol = ni2
GC_APP : Call Control libraries status -
GC_ICAPI_LIB - available

GC_ISDN_LIB - available

GC_ANAPI_LIB - available

GC_PDKRT_LIB - available

GC_SS7_LIB - is not available for use

GC_DM3CC_LIB - available

GC_IPM_LIB - available

GC_H3R_LIB - available

GC_CUSTOM1_LIB - configured

GC_CUSTOM2_LIB - configured

gc_Start succeeded
Enabled handler for GC events
gc_OpenEx succeeded
Successfully called gc_util_insert_parm_ref for protocol = ni2
Successfully called gc_SetConfigData to set protcol variant to ni2
Waiting for completion event....................................................
................................................................................

Received GCEV_SETCONFIGDATA event"

Dialogic® Product List
DNI300TEPHMP Board
DNI601TEPHMP Board
DNI1200TEPHMP Board
DMV600BTEP Board
DMV1200BTEP Board

Glossary of Acronyms / Terms
DNI -- Digital Network Interface
DMV -- DM3 Voice

Attachment
ISDNVariantChange.zip

Related Documentation
Dialogic® Host Media Processing Software Release 2.0 for Windows Release Update



Feedback

Please rate the usefulness of this page:  

0 - not useful at all
1 - potentially useful
2 - quite useful
3 - very useful
4 - exactly the information I needed     

Please enter a comment about this page: