WinISDN/SDK for Programmers

[image] The WinISDN Software Developerís Kit is available for Visual Basic programmers who wish to write applications to take advantage of ISDN communications. The package supports the WinISDN driver that is supplied with the CyberSpace cards, and programs written to this API will run on ISDN hardware from other vendors supporting WinISDN.


The industry standard WinISDN Application Program Interface has been adopted by all the major ISDN hardware vendors and TCP/IP software vendors, and ISDN*tek is proud to have been one of the first hardware manufacturers to provide a WinISDN compatible driver. WinISDN is designed to take full advantage of the speed and reliability of ISDN, while avoiding the limitations associated with COM port diversion of ISDN-bound data. The WinISDN driver allows an application to utilize an efficient block-at-a-time transmission scheme, rather than the slower byte-at-a-time serial style transmission formerly associated with telecommunications. Point-to-Point Protocol, an integral part of TCP/IP communications, can be fully implemented in the application software without relying on driver intervention. And best of all, software authors need no particular knowledge of ISDN protocols in order to successfully write or adapt an application to ISDN.

In its simplest form, WinISDN allows you to place an ISDN call with just a few API calls:



          talk over a voice connection, or send data using



ISDN is here Now!

After many years of no ISDN connections, no ISDN boards, no ISDN software, all of the pieces are coming together! Speed is up and prices are down! ISDN uses the same copper wires to your home office as Plain Old Telephone Service (POTS), but offers ten times the power of a 14.4 modem! You can use this power with Visual Basic 3.0+ to transfer files, photos, and voice, using the industry standard WinISDN.DLL.


WinISDN SDK Features

[program image]

Example WinISDN Calls and Structures

' Set up the Visual Basic data structures     '
' for program calls to the ISDN driver.       '
' These structures are included in the SDK    '
' in DEF files for both VB and for 'C'        '

' Structures for ISDNOpen
Type BdConfig
    config_length           As Integer
    board_id                As Integer
    mem_address             As Integer
    mem_range               As Integer
    io_address              As Integer
    io_range                As Integer
    interrupt_req           As Integer
    bandwidth               As Integer
    version                 As String * 16
    serial                  As String * 16
    mfr_info                As String * 64
    num_lines               As Integer
    reserved                As String * 64
    line_config_b_line(2)   As line_config     'array of two spids (0) and (1)
End Type

' Structures for ISDNconnect
Type CallStructure
    call_handle             As Integer
    board_id                As Integer
    call_type               As Integer
    send_queue_size         As Integer
    recv_queue_size         As Integer
    dial1                   As String * 64
    version                 As Integer
    line_id                 As Integer
    listen_mask             As Integer
    reserved                As String * 58
End Type

Type ConnectEvent
    event_mask              As Integer
    win_handle              As Integer
    msg_value               As Integer
    callback                As Long
End Type

' Structures for Call_Status report
Type StatusStructure
    call_handle             As Integer
    line_id                 As Integer
    call_ref                As Integer
    call_type               As Integer
    call_state              As Integer
    b_channel               As Integer
    lcn                     As Integer
    called                  As String * 64
    calling                 As String * 64
    reserved                As String * 64
End Type

' Specify the hardware 
' and line parameters
    BoardID% = 1 
    BdConfig.board_id = BoardID%
    BdConfig.mem_address = &hD000
    BdConfig.interrupt_req = 10
    BdConfig.line_config_b_line(0) = SPID1$   
    BdConfig.line_config_b_line(1) = SPID2$

' Select hardware 
' and load the driver

    Result% = ISDNOpen(BoardID%, BdConfig)

' Format the dialing information 
' for starting a Voice call
    CallStructure.dial1 = DialingNumber$
    CallStructure.board_id = BoardID%
    CallStructure.call_type = ISDN_B_Voice
' the event mask is set to accept 
' any kind of incoming call, 
' whether voice or data
    ConnectEvent.event_mask = ISDN_Accept_Any

' Place an ISDN call
    ConnID% = ISDNConnect(CallStructure, ConnectEvent)

' Get status of current call
    Error% = ISDNGetStatus (ConnID%, StatusStructure)
        Select Case StatusStructure.call_state
                ' setting up the outgoing call
                ' Ringing the other phone
                ' call still active
                ' hanging up the call
        Case CALL_STATE_NULL
                ' no active calls
        End Select

' Terminate the ISDN connection
    Error% = ISDNDisconnect(ConnID%)

' Deselect the hardware 
' and unload the driver
    Error% = ISDNClose(BoardID%)

' End of WinISDN programming example.         '
' These code segments have been reduced       '
' to a minimal form for easier reading.       '
' The SDK includes far more detailed coding.  '

Get Order Form and Prices

Go Home

Copyright ISDN*tek 1995-2000