[Freeswitch-trunk] [commit] r13776 - freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include
FreeSWITCH SVN
jmesquita at freeswitch.org
Mon Jun 15 13:15:42 PDT 2009
Author: jmesquita
Date: Mon Jun 15 15:15:41 2009
New Revision: 13776
Log:
Proper includes...
Added:
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/k3l.h
Removed:
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KDefs.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KErrorDefs.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KGSM.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KH100Defs.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KISDN.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KMixerDefs.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KR2D.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KTypeDefs.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/KVoIP.h
freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/k3lVersion.h
Added: freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/k3l.h
==============================================================================
--- (empty file)
+++ freeswitch/trunk/scripts/contrib/jmesquita/mod_khomp/include/k3l.h Mon Jun 15 15:15:41 2009
@@ -0,0 +1,1787 @@
+/*
+ KHOMP channel provider for Asterisk PBX
+ Copyright (C) 2007-2008 Khomp Ind. & Com.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+*/
+
+#ifndef INCLUDED_K3LDEFS_H
+#define INCLUDED_K3LDEFS_H
+#if !defined KLTYPEDEFS_H
+#define KLTYPEDEFS_H
+#if defined( _WINDOWS ) || defined( _Windows ) || defined( _WIN32 )
+ #ifndef KWIN32
+ #define KWIN32 1
+ #endif
+#endif
+
+#ifdef KWIN32
+ typedef __int64 int64;
+ typedef unsigned __int64 uint64;
+ #define Kstdcall __stdcall
+#else
+ typedef long long int64;
+ typedef unsigned long long uint64;
+ #define Kstdcall
+#endif
+typedef int int32;
+typedef unsigned int uint32;
+typedef unsigned long long intptr;
+typedef long stackint;
+typedef short int int16;
+typedef unsigned short int uint16;
+typedef char int8;
+typedef unsigned char uint8;
+typedef unsigned char byte;
+typedef char sbyte;
+typedef double float64;
+typedef float float32;
+typedef int32 stt_code;
+
+enum KLibraryStatus
+{
+ ksSuccess = 0,
+ ksFail = 1,
+ ksTimeOut = 2,
+ ksBusy = 3,
+ ksLocked = 4,
+ ksInvalidParams = 5,
+ ksEndOfFile = 6,
+ ksInvalidState = 7,
+ ksServerCommFail = 8,
+ ksOverflow = 9,
+ ksUnderrun = 10,
+ ksNotFound = 11,
+ ksNotAvailable = 12
+};
+enum KTxRx
+{
+ kNoTxRx = 0x0,
+ kTx = 0x1,
+ kRx = 0x2,
+ kBoth = 0x3
+};
+
+#define KMAX_SERIAL_NUMBER 12
+#define KMAX_E1_CHANNELS 30
+#define KMAX_DIAL_NUMBER 20
+#define KMAX_ADDRESS 60
+#define KMAX_DSP_NAME 8
+#define KMAX_STR_VERSION 80
+#define KMAX_BUFFER_ADDRESSES 16
+#define KMAX_LOG 1024
+#define KMAX_SIP_DATA 248
+#endif
+#if !defined KVOIPDEFS_H
+#define KVOIPDEFS_H
+enum KRejectReason
+{
+ UserBusy = 0,
+ UserNotFound,
+ NoAnswer,
+ Decline,
+ ServiceUnavailable,
+ ServerInternalError,
+ UnknownRejectReason
+};
+enum KSIP_Failures
+{
+ kveResponse_200_OK_Success = 200,
+ kveRedirection_300_MultipleChoices = 300,
+ kveRedirection_301_MovedPermanently = 301,
+ kveRedirection_302_MovedTemporarily = 302,
+ kveRedirection_305_UseProxy = 305,
+ kveRedirection_380_AlternativeService = 380,
+ kveFailure_400_BadRequest = 400,
+ kveFailure_401_Unauthorized = 401,
+ kveFailure_402_PaymentRequired = 402,
+ kveFailure_403_Forbidden = 403,
+ kveFailure_404_NotFound = 404,
+ kveFailure_405_MethodNotAllowed = 405,
+ kveFailure_406_NotAcceptable = 406,
+ kveFailure_407_ProxyAuthenticationRequired = 407,
+ kveFailure_408_RequestTimeout = 408,
+ kveFailure_410_Gone = 410,
+ kveFailure_413_RequestEntityTooLarge = 413,
+ kveFailure_414_RequestURI_TooLong = 414,
+ kveFailure_415_UnsupportedMediaType = 415,
+ kveFailure_416_UnsupportedURI_Scheme = 416,
+ kveFailure_420_BadExtension = 420,
+ kveFailure_421_ExtensionRequired = 421,
+ kveFailure_423_IntervalTooBrief = 423,
+ kveFailure_480_TemporarilyUnavailable = 480,
+ kveFailure_481_CallDoesNotExist = 481,
+ kveFailure_482_LoopDetected = 482,
+ kveFailure_483_TooManyHops = 483,
+ kveFailure_484_AddressIncomplete = 484,
+ kveFailure_485_Ambiguous = 485,
+ kveFailure_486_BusyHere = 486,
+ kveFailure_487_RequestTerminated = 487,
+ kveFailure_488_NotAcceptableHere = 488,
+ kveFailure_491_RequestPending = 491,
+ kveFailure_493_Undecipherable = 493,
+ kveServer_500_InternalError = 500,
+ kveServer_501_NotImplemented = 501,
+ kveServer_502_BadGateway = 502,
+ kveServer_503_ServiceUnavailable = 503,
+ kveServer_504_TimeOut = 504,
+ kveServer_505_VersionNotSupported = 505,
+ kveServer_513_MessageTooLarge = 513,
+ kveGlobalFailure_600_BusyEverywhere = 600,
+ kveGlobalFailure_603_Decline = 603,
+ kveGlobalFailure_604_DoesNotExistAnywhere = 604,
+ kveGlobalFailure_606_NotAcceptable = 606
+};
+enum KVoIPRegTypes
+{
+ kvrtRegister = 0,
+ kvrtUnregister = 1
+};
+
+struct KVoIPCallParams
+{
+ sbyte ToUser[ KMAX_ADDRESS + 1 ];
+ sbyte FromUser[ KMAX_ADDRESS + 1 ];
+ sbyte FromUserIP[ KMAX_ADDRESS + 1 ];
+};
+struct KVoIPEvRegisterParams
+{
+ KVoIPRegTypes Register;
+ sbyte User[ KMAX_ADDRESS + 1 ];
+ sbyte ProxyIP[ KMAX_ADDRESS + 1 ];
+};
+struct KVoIPSeize
+{
+ sbyte FromUser[ KMAX_ADDRESS + 1 ];
+ sbyte ToUser[ KMAX_ADDRESS + 1 ];
+ sbyte ProxyIP[ KMAX_ADDRESS + 1 ];
+};
+#endif
+#if !defined KLDEFS_H
+#define KLDEFS_H
+
+
+
+#define CM_SEIZE 0x01
+
+#define CM_SYNC_SEIZE 0x02
+
+#define CM_SIP_REGISTER 0x03
+
+#define CM_DIAL_DTMF 0x04
+
+#define CM_DISCONNECT 0x05
+
+#define CM_CONNECT 0x06
+
+#define CM_PRE_CONNECT 0x07
+
+#define CM_CAS_CHANGE_LINE_STT 0x08
+
+#define CM_CAS_SEND_MFC 0x09
+
+#define CM_SET_FORWARD_CHANNEL 0x0A
+
+#define CM_CAS_SET_MFC_DETECT_MODE 0x0B
+
+#define CM_DROP_COLLECT_CALL 0x0C
+
+#define CM_MAKE_CALL 0x0D
+
+#define CM_RINGBACK 0x0E
+
+#define CM_USER_INFORMATION 0x0F
+
+#define CM_VOIP_SEIZE 0x23
+
+
+#define CM_LOCK_INCOMING 0x10
+
+#define CM_UNLOCK_INCOMING 0x11
+
+#define CM_LOCK_OUTGOING 0x12
+
+#define CM_UNLOCK_OUTGOING 0x13
+
+#define CM_START_SEND_FAIL 0x14
+
+#define CM_STOP_SEND_FAIL 0x15
+
+#define CM_END_OF_NUMBER 0x16
+
+#define CM_SEND_SIP_DATA 0x17
+
+#define CM_SS_TRANSFER 0x18
+
+#define CM_GET_SMS 0x19
+
+#define CM_PREPARE_SMS 0x1A
+
+#define CM_SEND_SMS 0x1B
+
+#define CM_SEND_TO_MODEM 0x1C
+
+#define CM_CHECK_NEW_SMS 0x1D
+
+#define CM_ISDN_SEND_SUBADDRESSES 0x1E
+
+#define CM_ENABLE_DTMF_SUPPRESSION 0x30
+
+#define CM_DISABLE_DTMF_SUPPRESSION 0x31
+
+#define CM_ENABLE_AUDIO_EVENTS 0x32
+
+#define CM_DISABLE_AUDIO_EVENTS 0x33
+
+#define CM_ENABLE_CALL_PROGRESS 0x34
+
+#define CM_DISABLE_CALL_PROGRESS 0x35
+
+#define CM_FLASH 0x36
+
+#define CM_ENABLE_PULSE_DETECTION 0x37
+
+#define CM_DISABLE_PULSE_DETECTION 0x38
+
+#define CM_ENABLE_ECHO_CANCELLER 0x39
+
+#define CM_DISABLE_ECHO_CANCELLER 0x3A
+
+#define CM_ENABLE_AGC 0x3B
+
+#define CM_DISABLE_AGC 0x3C
+
+#define CM_ENABLE_HIGH_IMP_EVENTS 0x3D
+
+#define CM_DISABLE_HIGH_IMP_EVENTS 0x3E
+
+#define CM_ENABLE_CALL_ANSWER_INFO 0x40
+
+#define CM_DISABLE_CALL_ANSWER_INFO 0x41
+
+#define CM_HOLD_SWITCH 0x4A
+
+#define CM_MPTY_CONF 0x4B
+
+#define CM_MPTY_SPLIT 0x4C
+
+#define CM_START_FAX_TX 0x50
+
+#define CM_CANCEL_FAX_TX 0x51
+
+#define CM_ADD_FAX_FILE 0x52
+
+
+#define CM_RESET_LINK 0xF1
+
+#define CM_CLEAR_LINK_ERROR_COUNTER 0xF2
+
+#define CM_SEND_DEVICE_SECURITY_KEY 0xF3
+
+#define CM_RESET_MODEM 0xF4
+
+
+#define EV_CHANNEL_FREE 0x01
+
+#define EV_CONNECT 0x03
+
+#define EV_DISCONNECT 0x04
+
+#define EV_CALL_SUCCESS 0x05
+
+#define EV_CALL_FAIL 0x06
+
+#define EV_NO_ANSWER 0x07
+
+#define EV_BILLING_PULSE 0x08
+
+#define EV_SEIZE_SUCCESS 0x09
+
+#define EV_SEIZE_FAIL 0x0A
+
+#define EV_SEIZURE_START 0x0B
+
+#define EV_CAS_LINE_STT_CHANGED 0x0C
+
+#define EV_CAS_MFC_RECV 0x0D
+
+#define EV_NEW_CALL 0x0E
+
+#define EV_USER_INFORMATION 0x0F
+
+#define EV_DIALED_DIGIT 0x10
+
+#define EV_SIP_REGISTER_INFO 0x11
+
+#define EV_RING_DETECTED 0x12
+
+#define EV_ISDN_SUBADDRESSES 0x13
+
+#define EV_CALL_HOLD_START 0x16
+
+#define EV_CALL_HOLD_STOP 0x17
+
+#define EV_SS_TRANSFER_FAIL 0x18
+
+#define EV_FLASH 0x19
+
+#define EV_ISDN_PROGRESS_INDICATOR 0x1A
+
+#define EV_DTMF_DETECTED 0x20
+
+#define EV_DTMF_SEND_FINISH 0x21
+
+#define EV_AUDIO_STATUS 0x22
+
+#define EV_CADENCE_RECOGNIZED 0x23
+#define EV_CALL_PROGRESS EV_CADENCE_RECOGNIZED
+
+#define EV_END_OF_STREAM 0x24
+
+#define EV_PULSE_DETECTED 0x25
+
+#define EV_POLARITY_REVERSAL 0x26
+
+#define EV_CALL_ANSWER_INFO 0x27
+
+#define EV_COLLECT_CALL 0x28
+
+#define EV_SIP_DTMF_DETECTED 0x29
+
+#define EV_SIP_DATA 0x2A
+
+#define EV_RECV_FROM_MODEM 0x42
+
+#define EV_NEW_SMS 0x43
+
+#define EV_SMS_INFO 0x44
+
+#define EV_SMS_DATA 0x45
+
+#define EV_SMS_SEND_RESULT 0x46
+
+#define EV_CALL_MPTY_START 0x47
+
+#define EV_CALL_MPTY_STOP 0x48
+
+#define EV_GSM_COMMAND_STATUS 0x49
+
+
+#define EV_CHANNEL_FAIL 0x30
+
+#define EV_REFERENCE_FAIL 0x31
+
+#define EV_INTERNAL_FAIL 0x32
+
+#define EV_HARDWARE_FAIL 0x33
+
+#define EV_LINK_STATUS 0x34
+
+#define EV_PHYSICAL_LINK_UP 0x35
+
+#define EV_PHYSICAL_LINK_DOWN 0x36
+
+#define EV_CLIENT_RECONNECT 0xF0
+
+#define EV_CLIENT_AUDIOLISTENER_TIMEOUT 0xF1
+
+#define EV_CLIENT_BUFFERED_AUDIOLISTENER_OVERFLOW 0xF2
+
+#define EV_REQUEST_DEVICE_SECURITY_KEY 0xF3
+
+#define EV_DISK_IS_FULL 0xF4
+
+
+#define CM_SEND_DTMF 0xD1
+
+#define CM_STOP_AUDIO 0xD2
+
+#define CM_HARD_RESET 0xF0
+
+#define EV_VOIP_SEIZURE 0x40
+
+#define EV_SEIZURE 0x41
+
+#define EV_FAX_CHANNEL_FREE 0x50
+#define EV_FAX_FILE_SENT 0x51
+#define EV_FAX_FILE_FAIL 0x52
+#endif
+
+ #define FC_REMOTE_FAIL 0x01
+ #define FC_LOCAL_FAIL 0x02
+
+ #define FC_REMOTE_LOCK 0x03
+
+ #define FC_LINE_SIGNAL_FAIL 0x04
+ #define FC_ACOUSTIC_SIGNAL_FAIL 0x05
+
+enum KChannelFail
+{
+ kfcRemoteFail = FC_REMOTE_FAIL,
+ kfcLocalFail = FC_LOCAL_FAIL,
+ kfcRemoteLock = FC_REMOTE_LOCK,
+ kfcLineSignalFail = FC_LINE_SIGNAL_FAIL,
+ kfcAcousticSignalFail = FC_ACOUSTIC_SIGNAL_FAIL
+};
+
+ #define ER_INTERRUPT_CTRL 0x01
+ #define ER_COMMUNICATION_FAIL 0x02
+ #define ER_PROTOCOL_FAIL 0x03
+ #define ER_INTERNAL_BUFFER 0x04
+ #define ER_MONITOR_BUFFER 0x05
+ #define ER_INITIALIZATION 0x06
+ #define ER_INTERFACE_FAIL 0x07
+ #define ER_CLIENT_COMM_FAIL 0x08
+ #define ER_POLL_CTRL 0x09
+ #define ER_EVT_BUFFER_CTRL 0x0A
+
+ #define ER_INVALID_CONFIG_VALUE 0x0B
+
+ #define ER_INTERNAL_GENERIC_FAIL 0x0C
+
+enum KInternalFail
+{
+ kifInterruptCtrl = ER_INTERRUPT_CTRL,
+ kifCommunicationFail = ER_COMMUNICATION_FAIL,
+ kifProtocolFail = ER_PROTOCOL_FAIL,
+ kifInternalBuffer = ER_INTERNAL_BUFFER,
+ kifMonitorBuffer = ER_MONITOR_BUFFER,
+ kifInitialization = ER_INITIALIZATION,
+ kifInterfaceFail = ER_INTERFACE_FAIL,
+ kifClientCommFail = ER_CLIENT_COMM_FAIL
+};
+
+ #define FS_CHANNEL_LOCKED 0x01
+ #define FS_INCOMING_CHANNEL 0x02
+ #define FS_CHANNEL_NOT_FREE 0x03
+ #define FS_DOUBLE_SEIZE 0x04
+ #define FS_LOCAL_CONGESTION 0x06
+ #define FS_NO_DIAL_TONE 0x07
+enum KSeizeFail
+{
+ ksfChannelLocked = FS_CHANNEL_LOCKED,
+ ksfIncomingChannel = FS_INCOMING_CHANNEL,
+ ksfChannelBusy = FS_CHANNEL_NOT_FREE,
+ ksfDoubleSeizure = FS_DOUBLE_SEIZE,
+ ksfCongestion = FS_LOCAL_CONGESTION,
+ ksfNoDialTone = FS_NO_DIAL_TONE
+};
+#if !defined KH100DEFS_H
+#define KH100DEFS_H
+
+#define CM_SEND_TO_CTBUS 0x90
+
+#define CM_RECV_FROM_CTBUS 0x91
+
+#define CM_SEND_RANGE_TO_CTBUS 0x92
+
+#define CM_SETUP_H100 0x93
+
+enum KH100ConfigIndex
+{
+ khciDeviceMode = 0,
+ khciMasterGenClock = 1,
+ khciCTNetRefEnable = 4,
+ khciSCbusEnable = 6,
+ khciHMVipEnable = 7,
+ khciMVip90Enable = 8,
+ khciCTbusDataEnable = 9,
+ khciCTbusFreq03_00 = 10,
+ khciCTbusFreq07_04 = 11,
+ khciCTbusFreq11_08 = 12,
+ khciCTbusFreq15_12 = 13,
+ khciMax = 14,
+ khciMasterDevId = 20,
+ khciSecMasterDevId = 21,
+ khciCtNetrefDevId = 22,
+ khciMaxH100ConfigIndex
+};
+
+enum KMasterPLLClockReference
+{
+ h100_Ref_FreeRun = 0,
+ h100_Ref_holdover = 1,
+ h100_Automatic = 2,
+ h100_Ref_ctnetref = 7,
+ h100_Ref_link0 = 8,
+ h100_Ref_link1 = 9
+};
+enum KSlavePLLClockReference
+{
+ h100_PllLoc_ClkA = 0,
+ h100_PllLoc_ClkB = 1,
+ h100_PllLoc_SCBus = 2,
+ h100_PllLoc_MVIP90 = 3,
+ h100_PllLoc_Link0 = 4,
+ h100_PllLoc_Link1 = 5,
+ h100_PllLoc_Error = 6
+};
+
+#define H100_DEVICE_MODE khciDeviceMode
+ enum KH100Mode
+ {
+ h100_Slave,
+ h100_Master,
+ h100_StandbyMaster,
+ h100_Diagnostic,
+ h100_NotConnected
+ };
+#define H100_MASTER_GEN_CLOCK khciMasterGenClock
+ enum KH100SelectCtbusClock
+ {
+ h100_scClockA,
+ h100_scClockB
+ };
+
+#define H100_CT_NETREF_ENABLE khciCTNetRefEnable
+ enum KH100CtNetref
+ {
+ h100_nrOff,
+ h100_nrEnable
+ };
+#define H100_SCBUS_ENABLE khciSCbusEnable
+ enum KH100ScbusEnable
+ {
+ h100_seOff,
+ h100_seOn2Mhz,
+ h100_seOn4Mhz,
+ h100_seOn8Mhz
+ };
+#define H100_HMVIP_ENABLE khciHMVipEnable
+
+#define H100_MVIP90_ENABLE khciMVip90Enable
+
+#define H100_CTBUS_DATA_ENABLE khciCTbusDataEnable
+
+enum KH100Enable
+{
+ h100_On = 0x01,
+ h100_Off = 0x00
+};
+
+#define H100_CTBUS_FREQ_03_00 khciCTbusFreq03_00
+#define H100_CTBUS_FREQ_07_04 khciCTbusFreq07_04
+#define H100_CTBUS_FREQ_11_08 khciCTbusFreq11_08
+#define H100_CTBUS_FREQ_15_12 khciCTbusFreq15_12
+
+enum KH100CtbusFreq
+{
+ h100_cf_2Mhz = 0,
+ h100_cf_4Mhz = 1,
+ h100_cf_8Mhz = 2
+};
+
+#endif
+
+#define CM_MIXER 0x60
+
+#define CM_CLEAR_MIXER 0x61
+
+#define CM_PLAY_FROM_FILE 0x62
+
+#define CM_RECORD_TO_FILE 0x63
+
+#define CM_PLAY_FROM_STREAM 0x64
+
+#define CM_INTERNAL_PLAY 0x65
+
+#define CM_STOP_PLAY 0x66
+
+#define CM_STOP_RECORD 0x67
+
+#define CM_PAUSE_PLAY 0x68
+
+#define CM_PAUSE_RECORD 0x69
+
+#define CM_RESUME_PLAY 0x6A
+
+#define CM_RESUME_RECORD 0x6B
+
+#define CM_INCREASE_VOLUME 0x6C
+
+#define CM_DECREASE_VOLUME 0x6D
+
+#define CM_LISTEN 0x6E
+
+#define CM_STOP_LISTEN 0x6F
+
+#define CM_PREPARE_FOR_LISTEN 0x70
+
+#define CM_PLAY_SOUND_CARD 0x71
+
+#define CM_STOP_SOUND_CARD 0x72
+
+#define CM_MIXER_CTBUS 0x73
+
+#define CM_PLAY_FROM_STREAM_EX 0x74
+
+#define CM_INTERNAL_PLAY_EX 0x75
+
+#define CM_ENABLE_PLAYER_AGC 0x76
+
+#define CM_DISABLE_PLAYER_AGC 0x77
+
+#define CM_START_STREAM_BUFFER 0x78
+
+#define CM_ADD_STREAM_BUFFER 0x79
+
+#define CM_STOP_STREAM_BUFFER 0x7A
+
+#define CM_SEND_BEEP 0x7B
+
+#define CM_SEND_BEEP_CONF 0x7C
+
+#define CM_ADD_TO_CONF 0x7D
+
+#define CM_REMOVE_FROM_CONF 0x7E
+
+#define CM_RECORD_TO_FILE_EX 0x7F
+
+#define CM_SET_VOLUME 0xA0
+
+#define CM_START_CADENCE 0xA1
+
+#define CM_STOP_CADENCE 0xA2
+#if !defined KR2D_H
+#define KR2D_H
+
+#define CM_SET_LINE_CONDITION 0x80
+
+#define CM_SEND_LINE_CONDITION 0x81
+
+#define CM_SET_CALLER_CATEGORY 0x82
+
+
+#define CM_DIAL_MFC 0x83
+
+
+
+enum KSignGroupII_Brazil
+{
+ kg2BrOrdinary = 0x01,
+ kg2BrPriority = 0x02,
+ kg2BrMaintenance = 0x03,
+ kg2BrLocalPayPhone = 0x04,
+ kg2BrTrunkOperator = 0x05,
+ kg2BrDataTrans = 0x06,
+ kg2BrNonLocalPayPhone = 0x07,
+ kg2BrCollectCall = 0x08,
+ kg2BrOrdinaryInter = 0x09,
+ kg2BrTransfered = 0x0B,
+};
+
+enum KSignGroupB_Brazil
+{
+ kgbBrLineFreeCharged = 0x01,
+ kgbBrBusy = 0x02,
+ kgbBrNumberChanged = 0x03,
+ kgbBrCongestion = 0x04,
+ kgbBrLineFreeNotCharged = 0x05,
+ kgbBrLineFreeChargedLPR = 0x06,
+ kgbBrInvalidNumber = 0x07,
+ kgbBrLineOutOfOrder = 0x08,
+ kgbBrNone = 0xFF
+};
+
+
+enum KSignGroupII_Argentina
+{
+ kg2ArOrdinary = 0x01,
+ kg2ArPriority = 0x02,
+ kg2ArMaintenance = 0x03,
+ kg2ArLocalPayPhone = 0x04,
+ kg2ArTrunkOperator = 0x05,
+ kg2ArDataTrans = 0x06,
+ kg2ArCPTP = 0x0B,
+ kg2ArSpecialLine = 0x0C,
+ kg2ArMobileUser = 0x0D,
+ kg2ArPrivateRedLine = 0x0E,
+ kg2ArSpecialPayPhoneLine = 0x0F,
+};
+
+enum KSignGroupB_Argentina
+{
+ kgbArNumberChanged = 0x02,
+ kgbArBusy = 0x03,
+ kgbArCongestion = 0x04,
+ kgbArInvalidNumber = 0x05,
+ kgbArLineFreeCharged = 0x06,
+ kgbArLineFreeNotCharged = 0x07,
+ kgbArLineOutOfOrder = 0x08,
+ kgbArNone = 0xFF
+};
+
+
+enum KSignGroupII_Chile
+{
+ kg2ClOrdinary = 0x01,
+ kg2ClPriority = 0x02,
+ kg2ClMaintenance = 0x03,
+ kg2ClTrunkOperator = 0x05,
+ kg2ClDataTrans = 0x06,
+ kg2ClUnidentifiedSubscriber = 0x0B,
+};
+
+enum KSignGroupB_Chile
+{
+ kgbClNumberChanged = 0x02,
+ kgbClBusy = 0x03,
+ kgbClCongestion = 0x04,
+ kgbClInvalidNumber = 0x05,
+ kgbClLineFreeCharged = 0x06,
+ kgbClLineFreeNotCharged = 0x07,
+ kgbClLineOutOfOrder = 0x08,
+ kgbClNone = 0xFF
+};
+
+
+enum KSignGroupII_Mexico
+{
+ kg2MxTrunkOperator = 0x01,
+ kg2MxOrdinary = 0x02,
+ kg2MxMaintenance = 0x06,
+};
+
+enum KSignGroupB_Mexico
+{
+ kgbMxLineFreeCharged = 0x01,
+ kgbMxBusy = 0x02,
+ kgbMxLineFreeNotCharged = 0x05,
+ kgbMxNone = 0xFF
+};
+
+
+enum KSignGroupII_Uruguay
+{
+ kg2UyOrdinary = 0x01,
+ kg2UyPriority = 0x02,
+ kg2UyMaintenance = 0x03,
+ kg2UyLocalPayPhone = 0x04,
+ kg2UyTrunkOperator = 0x05,
+ kg2UyDataTrans = 0x06,
+ kg2UyInternSubscriber = 0x07,
+};
+
+enum KSignGroupB_Uruguay
+{
+ kgbUyNumberChanged = 0x02,
+ kgbUyBusy = 0x03,
+ kgbUyCongestion = 0x04,
+ kgbUyInvalidNumber = 0x05,
+ kgbUyLineFreeCharged = 0x06,
+ kgbUyLineFreeNotCharged = 0x07,
+ kgbUyLineOutOfOrder = 0x08,
+ kgbUyNone = 0xFF
+};
+
+
+enum KSignGroupII_Venezuela
+{
+ kg2VeOrdinary = 0x01,
+ kg2VePriority = 0x02,
+ kg2VeMaintenance = 0x03,
+ kg2VeLocalPayPhone = 0x04,
+ kg2VeTrunkOperator = 0x05,
+ kg2VeDataTrans = 0x06,
+ kg2VeNoTransferFacility = 0x07,
+};
+
+enum KSignGroupB_Venezuela
+{
+ kgbVeLineFreeChargedLPR = 0x01,
+ kgbVeNumberChanged = 0x02,
+ kgbVeBusy = 0x03,
+ kgbVeCongestion = 0x04,
+ kgbVeInformationTone = 0x05,
+ kgbVeLineFreeCharged = 0x06,
+ kgbVeLineFreeNotCharged = 0x07,
+ kgbVeLineBlocked = 0x08,
+ kgbVeIntercepted = 0x09,
+ kgbVeDataTrans = 0x0A,
+ kgbVeNone = 0xFF
+};
+
+
+
+
+
+enum KSignGroupB
+{
+ kgbLineFreeCharged = 0x01,
+ kgbLineFreeNotCharged = 0x05,
+ kgbLineFreeChargedLPR = 0x06,
+ kgbBusy = 0x02,
+ kgbNumberChanged = 0x03,
+ kgbCongestion = 0x04,
+ kgbInvalidNumber = 0x07,
+ kgbLineOutOfOrder = 0x08,
+ kgbNone = 0xFF
+};
+#define STT_GB_LINEFREE_CHARGED 0x01
+#define STT_GB_LINEFREE_NOTCHARGED 0x05
+#define STT_GB_LINEFREE_CHARGED_LPR 0x06
+#define STT_GB_BUSY 0x02
+#define STT_GB_NUMBER_CHANGED 0x03
+#define STT_GB_CONGESTION 0x04
+#define STT_GB_UNALLOCATED_NUMBER 0x07
+#define STT_GB_LINE_OUT_OF_ORDER 0x08
+#define STT_GB_NONE 0xFF
+
+enum KSignGroupII
+{
+ kg2Ordinary = 0x01,
+ kg2Priority = 0x02,
+ kg2Maintenance = 0x03,
+ kg2LocalPayPhone = 0x04,
+ kg2TrunkOperator = 0x05,
+ kg2DataTrans = 0x06,
+ kg2NonLocalPayPhone = 0x07,
+ kg2CollectCall = 0x08,
+ kg2OrdinaryInter = 0x09,
+ kg2Transfered = 0x0B,
+};
+#define STT_GII_ORDINARY 0x01
+#define STT_GII_PRIORITY 0x02
+#define STT_GII_MAINTENANCE 0x03
+#define STT_GII_LOCAL_PAY_PHONE 0x04
+#define STT_GII_TRUNK_OPERATOR 0x05
+#define STT_GII_DATA_TRANS 0x06
+#define STT_GII_NON_LOCAL_PAY_PHONE 0x07
+#define STT_GII_COLLECT_CALL 0x08
+#define STT_GII_ORDINARY_INTERNATIONAL 0x09
+#define STT_GII_TRANSFERED 0x0B
+#endif
+#ifndef _KISDN_H_
+#define _KISDN_H_
+#define KMAX_USER_USER_LEN 32
+#define KMAX_SUBADRESS_INFORMATION_LEN 20
+
+enum KQ931Cause
+{
+ kq931cNone = 0,
+ kq931cUnallocatedNumber = 1,
+ kq931cNoRouteToTransitNet = 2,
+ kq931cNoRouteToDest = 3,
+ kq931cSendSpecialInfoTone = 4,
+ kq931cMisdialedTrunkPrefix = 5,
+ kq931cChannelUnacceptable = 6,
+ kq931cCallAwarded = 7,
+ kq931cPreemption = 8,
+ kq931cPreemptionCircuitReuse = 9,
+ kq931cQoR_PortedNumber = 14,
+ kq931cNormalCallClear = 16,
+ kq931cUserBusy = 17,
+ kq931cNoUserResponding = 18,
+ kq931cNoAnswerFromUser = 19,
+ kq931cSubscriberAbsent = 20,
+ kq931cCallRejected = 21,
+ kq931cNumberChanged = 22,
+ kq931cRedirectionToNewDest = 23,
+ kq931cCallRejectedFeatureDest = 24,
+ kq931cExchangeRoutingError = 25,
+ kq931cNonSelectedUserClear = 26,
+ kq931cDestinationOutOfOrder = 27,
+ kq931cInvalidNumberFormat = 28,
+ kq931cFacilityRejected = 29,
+ kq931cRespStatusEnquiry = 30,
+ kq931cNormalUnspecified = 31,
+ kq931cNoCircuitChannelAvail = 34,
+ kq931cNetworkOutOfOrder = 38,
+ kq931cPermanentFrameConnOutOfService = 39,
+ kq931cPermanentFrameConnOperational = 40,
+ kq931cTemporaryFailure = 41,
+ kq931cSwitchCongestion = 42,
+ kq931cAccessInfoDiscarded = 43,
+ kq931cRequestedChannelUnav = 44,
+ kq931cPrecedenceCallBlocked = 46,
+ kq931cResourceUnavailable = 47,
+ kq931cQosUnavailable = 49,
+ kq931cReqFacilityNotSubsc = 50,
+ kq931cOutCallsBarredWithinCUG = 53,
+ kq931cInCallsBarredWithinCUG = 55,
+ kq931cBearerCapabNotAuthor = 57,
+ kq931cBearerCapabNotAvail = 58,
+ kq931cInconsistency = 62,
+ kq931cServiceNotAvailable = 63,
+ kq931cBcNotImplemented = 65,
+ kq931cChannelTypeNotImplem = 66,
+ kq931cReqFacilityNotImplem = 69,
+ kq931cOnlyRestrictedBcAvail = 70,
+ kq931cServiceNotImplemented = 79,
+ kq931cInvalidCrv = 81,
+ kq931cChannelDoesNotExist = 82,
+ kq931cCallIdDoesNotExist = 83,
+ kq931cCallIdInUse = 84,
+ kq931cNoCallSuspended = 85,
+ kq931cCallIdCleared = 86,
+ kq931cUserNotMemberofCUG = 87,
+ kq931cIncompatibleDestination = 88,
+ kq931cInvalidTransitNetSel = 91,
+ kq931cInvalidMessage = 95,
+ kq931cMissingMandatoryIe = 96,
+ kq931cMsgTypeNotImplemented = 97,
+ kq931cMsgIncompatWithState = 98,
+ kq931cIeNotImplemented = 99,
+ kq931cInvalidIe = 100,
+ kq931cMsgIncompatWithState2 = 101,
+ kq931cRecoveryOnTimerExpiry = 102,
+ kq931cProtocolError = 103,
+ kq931cMessageWithUnrecognizedParam = 110,
+ kq931cProtocolErrorUnspecified = 111,
+ kq931cInterworking = 127,
+ kq931cCallConnected = 128,
+ kq931cCallTimedOut = 129,
+ kq931cCallNotFound = 130,
+ kq931cCantReleaseCall = 131,
+ kq931cNetworkFailure = 132,
+ kq931cNetworkRestart = 133,
+ kq931cLastValidCause = kq931cNetworkRestart,
+};
+
+enum KQ931ProgressIndication
+{
+ kq931pTonesMaybeAvailable = 1,
+ kq931pDestinationIsNonIsdn = 2,
+ kq931pOriginationIsNonIsdn = 3,
+ kq931pCallReturnedToIsdn = 4,
+ kq931pTonesAvailable = 8,
+};
+
+enum KQ931Hlc
+{
+ kq931hTelefony = 0x81,
+ k1931hFaxGroup23 = 0x84,
+ k1931hFaxGroup4 = 0xa1,
+ kq931hTeletexF184 = 0xa4,
+ kq931hTeletexF220 = 0xa8,
+ kq931hTeletexf200 = 0xb1,
+ kq931hVideotex = 0xb2,
+ kq931hTelexF60 = 0xb5,
+ kq931hMhs = 0xb8,
+ kq931hOsiApp = 0xc1,
+ kq931hMaintenance = 0xde,
+ kq931hManagement = 0xdf,
+};
+
+enum KQ931BearerCapability
+{
+ kq931bSpeech = 0x00,
+ kq931bUnrestrictedDigital = 0x08,
+ kq931bAudio31kHz = 0x10,
+ kq931bAudio7kHz = 0x11,
+ kq931bVideo = 0x18,
+};
+
+enum KQ931TypeOfNumber
+{
+ kq931tUnknownNumber = 0x00,
+ kq931tInternationalNumber = 0x10,
+ kq931tNationalNumber = 0x20,
+ kq931tNetworkSpecificNumber = 0x30,
+ kq931tSubscriberNumber = 0x40,
+ kq931tAbbreviatedNumber = 0x60,
+ kq931tReservedNumber = 0x70,
+ kq931tDefaultNumber = kq931tUnknownNumber,
+};
+
+enum KQ931NumberingPlan
+{
+ kq931pUnknownPlan = 0x00,
+ kq931pIsdnPlan = 0x01,
+ kq931pDataPlan = 0x03,
+ kq931pTelexPlan = 0x04,
+ kq931pNationalPlan = 0x08,
+ kq931pPrivatePlan = 0x09,
+ kq931pReservedPlan = 0x0F,
+ kq931pDefaultPlan = kq931pUnknownPlan,
+};
+
+enum KQ931UserInfoProtocolDescriptor
+{
+ kq931uuUserSpecific = 0x00,
+ kq931uuOSI_HighLayer = 0x01,
+ kq931uuX244 = 0x02,
+ kq931uuIA5_Chars = 0x04,
+ kq931uuX208_X209 = 0x05,
+ kq931uuV120 = 0x07,
+ kq931uuQ931_CallControl = 0x08,
+ kq931uuNational = 0x40
+};
+enum KQ931PresentationIndicator
+{
+ kq931piPresentationAllowed = 0x00,
+ kq931piPresentationRestricted = 0x01,
+ kq931piNumberNotAvailableDueToInterworking = 0x02,
+};
+enum KQ931ScreeningIndicator
+{
+ kq931siUserProvidedNotScreened = 0x00,
+ kq931siUserProvidedVerifiedAndPassed = 0x01,
+ kq931siUserProvidedVerifiedAndFailed = 0x02,
+ kq931siNetworkProvided = 0x03,
+};
+enum KQ931TypeOfSubaddress
+{
+ kq931tsNSAP = 0x00,
+ kq931tsUserSpecified = 0x01,
+};
+#endif
+#ifndef KGSM_H
+#define KGSM_H
+
+enum KGsmCallCause
+{
+ kgccNone = 0,
+ kgccUnallocatedNumber = 1,
+ kgccNoRouteToDest = 3,
+ kgccChannelUnacceptable = 6,
+ kgccOperatorDeterminedBarring = 8,
+ kgccNormalCallClear = 16,
+ kgccUserBusy = 17,
+ kgccNoUserResponding = 18,
+ kgccNoAnswerFromUser = 19,
+ kgccCallRejected = 21,
+ kgccNumberChanged = 22,
+ kgccNonSelectedUserClear = 26,
+ kgccDestinationOutOfOrder = 27,
+ kgccInvalidNumberFormat = 28,
+ kgccFacilityRejected = 29,
+ kgccRespStatusEnquiry = 30,
+ kgccNormalUnspecified = 31,
+ kgccNoCircuitChannelAvail = 34,
+ kgccNetworkOutOfOrder = 38,
+ kgccTemporaryFailure = 41,
+ kgccSwitchCongestion = 42,
+ kgccAccessInfoDiscarded = 43,
+ kgccRequestedChannelUnav = 44,
+ kgccResourceUnavailable = 47,
+ kgccQosUnavailable = 49,
+ kgccReqFacilityNotSubsc = 50,
+ kgccCallBarredWitchCUG = 55,
+ kgccBearerCapabNotAuthor = 57,
+ kgccBearerCapabNotAvail = 58,
+ kgccServiceNotAvailable = 63,
+ kgccBcNotImplemented = 65,
+ kgccReqFacilityNotImplem = 69,
+ kgccOnlyRestrictedBcAvail = 70,
+ kgccServiceNotImplemented = 79,
+ kgccInvalidCrv = 81,
+ kgccUserNotMemberOfCUG = 82,
+ kgccIncompatibleDestination = 88,
+ kgccInvalidTransitNetSel = 91,
+ kgccInvalidMessage = 95,
+ kgccMissingMandatoryIe = 96,
+ kgccMsgTypeNotImplemented = 97,
+ kgccMsgIncompatWithState = 98,
+ kgccIeNotImplemented = 99,
+ kgccInvalidIe = 100,
+ kgccMsgIncompatWithState2 = 101,
+ kgccRecoveryOnTimerExpiry = 102,
+ kgccProtocolError = 111,
+ kgccInterworking = 127,
+};
+
+enum KGsmMobileCause
+{
+ kgmcPhoneFailure = 0,
+ kgmcNoConnectionToPhone = 1,
+ kgmcPhoneAdaptorLinkReserved = 2,
+ kgmcOperationNotAllowed = 3,
+ kgmcOperationNotSupported = 4,
+ kgmcPH_SIMPINRequired = 5,
+ kgmcPH_FSIMPINRequired = 6,
+ kgmcPH_FSIMPUKRequired = 7,
+ kgmcSIMNotInserted = 10,
+ kgmcSIMPINRequired = 11,
+ kgmcSIMPUKRequired = 12,
+ kgmcSIMFailure = 13,
+ kgmcSIMBusy = 14,
+ kgmcSIMWrong = 15,
+ kgmcIncorrectPassword = 16,
+ kgmcSIMPIN2Required = 17,
+ kgmcSIMPUK2Required = 18,
+ kgmcMemoryFull = 20,
+ kgmcInvalidIndex = 21,
+ kgmcNotFound = 22,
+ kgmcMemoryFailure = 23,
+ kgmcTextStringTooLong = 24,
+ kgmcInvalidCharInTextString = 25,
+ kgmcDialStringTooLong = 26,
+ kgmcInvalidCharInDialString = 27,
+ kgmcNoNetworkService = 30,
+ kgmcNetworkTimeout = 31,
+ kgmcNetworkNotAllowed = 32,
+ kgmcCommandAborted = 33,
+ kgmcNumParamInsteadTextParam = 34,
+ kgmcTextParamInsteadNumParam = 35,
+ kgmcNumericParamOutOfBounds = 36,
+ kgmcTextStringTooShort = 37,
+ kgmcNetworkPINRequired = 40,
+ kgmcNetworkPUKRequired = 41,
+ kgmcNetworkSubsetPINRequired = 42,
+ kgmcNetworkSubnetPUKRequired = 43,
+ kgmcServiceProviderPINRequired = 44,
+ kgmcServiceProviderPUKRequired = 45,
+ kgmcCorporatePINRequired = 46,
+ kgmcCorporatePUKRequired = 47,
+ kgmcSIMServiceOptNotSupported = 60,
+ kgmcUnknown = 100,
+ kgmcIllegalMS_N3 = 103,
+ kgmcIllegalME_N6 = 106,
+ kgmcGPRSServicesNotAllowed_N7 = 107,
+ kgmcPLMNNotAllowed_No11 = 111,
+ kgmcLocationAreaNotAllowed_N12 = 112,
+ kgmcRoamingNotAllowed_N13 = 113,
+ kgmcServiceOptNotSupported_N32 = 132,
+ kgmcReqServOptNotSubscribed_N33 = 133,
+ kgmcServOptTempOutOfOrder_N34 = 134,
+ kgmcLongContextActivation = 147,
+ kgmcUnspecifiedGPRSError = 148,
+ kgmcPDPAuthenticationFailure = 149,
+ kgmcInvalidMobileClass = 150,
+ kgmcGPRSDisconnectionTmrActive = 151,
+ kgmcTooManyActiveCalls = 256,
+ kgmcCallRejected = 257,
+ kgmcUnansweredCallPending = 258,
+ kgmcUnknownCallingError = 259,
+ kgmcNoPhoneNumRecognized = 260,
+ kgmcCallStateNotIdle = 261,
+ kgmcCallInProgress = 262,
+ kgmcDialStateError = 263,
+ kgmcUnlockCodeRequired = 264,
+ kgmcNetworkBusy = 265,
+ kgmcInvalidPhoneNumber = 266,
+ kgmcNumberEntryAlreadyStarted = 267,
+ kgmcCancelledByUser = 268,
+ kgmcNumEntryCouldNotBeStarted = 269,
+ kgmcDataLost = 280,
+ kgmcInvalidBessageBodyLength = 281,
+ kgmcInactiveSocket = 282,
+ kgmcSocketAlreadyOpen = 283
+};
+
+enum KGsmSmsCause
+{
+ kgscUnassigned = 1,
+ kgscOperatorDeterminedBarring = 8,
+ kgscCallBarred = 10,
+ kgscSMSTransferRejected = 21,
+ kgscDestinationOutOfService = 27,
+ kgscUnidentifiedSubscriber = 28,
+ kgscFacilityRejected = 29,
+ kgscUnknownSubscriber = 30,
+ kgscNetworkOutOfOrder = 38,
+ kgscTemporaryFailure = 41,
+ kgscCongestion = 42,
+ kgscResourcesUnavailable = 47,
+ kgscFacilityNotSubscribed = 50,
+ kgscFacilityNotImplemented = 69,
+ kgscInvalidSMSTransferRefValue = 81,
+ kgscInvalidMessage = 95,
+ kgscInvalidMandatoryInformation = 96,
+ kgscMessageTypeNonExistent = 97,
+ kgscMsgNotCompatWithSMProtState = 98,
+ kgscInformationElementNonExiste = 99,
+ kgscProtocolError = 111,
+ kgscInterworking = 127,
+ kgscTelematicInterworkingNotSup = 128,
+ kgscSMSTypeZeroNotSupported = 129,
+ kgscCannotReplaceSMS = 130,
+ kgscUnspecifiedTPPIDError = 143,
+ kgscAlphabetNotSupported = 144,
+ kgscMessageClassNotSupported = 145,
+ kgscUnspecifiedTPDCSError = 159,
+ kgscCommandCannotBeActioned = 160,
+ kgscCommandUnsupported = 161,
+ kgscUnspecifiedTPCommandError = 175,
+ kgscTPDUNotSupported = 176,
+ kgscSCBusy = 192,
+ kgscNoSCSubscription = 193,
+ kgscSCSystemFailure = 194,
+ kgscInvalidSMEAddress = 195,
+ kgscDestinationSMEBarred = 196,
+ kgscSMRejectedDuplicateSM = 197,
+ kgscTPVPFNotSupported = 198,
+ kgscTPVPNotSupported = 199,
+ kgscSIMSMSStorageFull = 208,
+ kgscNoSMSStorageCapabilityInSIM = 209,
+ kgscErrorInMS = 210,
+ kgscMemoryCapacityExceeded = 211,
+ kgscSIMDataDownloadError = 213,
+ kgscUnspecifiedError = 255,
+ kgscPhoneFailure = 300,
+ kgscSmsServiceReserved = 301,
+ kgscOperationNotAllowed = 302,
+ kgscOperationNotSupported = 303,
+ kgscInvalidPDUModeParameter = 304,
+ kgscInvalidTextModeParameter = 305,
+ kgscSIMNotInserted = 310,
+ kgscSIMPINNecessary = 311,
+ kgscPH_SIMPINNecessary = 312,
+ kgscSIMFailure = 313,
+ kgscSIMBusy = 314,
+ kgscSIMWrong = 315,
+ kgscMemoryFailure = 320,
+ kgscInvalidMemoryIndex = 321,
+ kgscMemoryFull = 322,
+ kgscSMSCAddressUnknown = 330,
+ kgscNoNetworkService = 331,
+ kgscNetworkTimeout = 332,
+ kgscUnknownError = 500,
+ kgscNetworkBusy = 512,
+ kgscInvalidDestinationAddress = 513,
+ kgscInvalidMessageBodyLength = 514,
+ kgscPhoneIsNotInService = 515,
+ kgscInvalidPreferredMemStorage = 516,
+ kgscUserTerminated = 517
+};
+#endif
+#ifndef k3lVersion_h
+#define k3lVersion_h
+#define k3lApiMajorVersion 2
+#define k3lApiMinorVersion 1
+#define k3lApiBuildVersion 0
+#endif
+#if !defined K3L_H
+#define K3L_H
+
+enum KDeviceType
+{
+ kdtE1 = 0,
+ kdtFXO = 1,
+ kdtConf = 2,
+ kdtPR = 3,
+ kdtE1GW = 4,
+ kdtFXOVoIP = 5,
+ kdtE1IP = 6,
+ kdtE1Spx = 7,
+ kdtGWIP = 8,
+ kdtFXS = 9,
+ kdtFXSSpx = 10,
+ kdtGSM = 11,
+ kdtGSMSpx = 12,
+ kdtFax = 13,
+ kdtDevTypeCount
+};
+enum KSignaling
+{
+ ksigInactive = 0,
+ ksigR2Digital = 1,
+ ksigContinuousEM = 2,
+ ksigPulsedEM = 3,
+ ksigUserR2Digital = 4,
+ ksigAnalog = 5,
+ ksigOpenCAS = 6,
+ ksigOpenR2 = 7,
+ ksigSIP = 8,
+ ksigOpenCCS = 9,
+ ksigPRI_EndPoint = 10,
+ ksigAnalogTerminal = 11,
+ ksigPRI_Network = 12,
+ ksigPRI_Passive = 13,
+ ksigLineSide = 14,
+ ksigCAS_EL7 = 15,
+ ksigGSM = 16,
+ ksigE1LC = 17,
+ ksigISUP = 18,
+ ksigFax = 19,
+};
+enum KE1DeviceModel
+{
+ kdmE1600 = 0,
+ kdmE1600E = 1,
+ kdmE1600EX = 2
+};
+enum KE1GWDeviceModel
+{
+ kdmE1GW640 = 1,
+ kdmE1GW640EX = 2
+};
+enum KE1IPDeviceModel
+{
+ kdmE1IP = 1,
+ kdmE1IPEX = 2
+};
+enum KGWIPDeviceModel
+{
+ kdmGWIP = 1,
+ kdmGWIPEX = 2
+};
+enum KFXODeviceModel
+{
+ kdmFXO80 = 0,
+ kdmFXOHI = 1,
+ kdmFXO160HI = 2
+};
+enum KFXOVoIPDeviceModel
+{
+ kdmFXGW180 = kdmFXO80
+};
+enum KConfDeviceModel
+{
+ kdmConf240 = 0,
+ kdmConf120 = 1,
+ kdmConf240EX = 2,
+ kdmConf120EX = 3
+};
+enum KPRDeviceModel
+{
+ kdmPR300v1 = 0,
+ kdmPR300 = 1,
+ kdmPR300SpxBased = 2,
+ kdmPR300EX = 3
+};
+enum KFXSDeviceModel
+{
+ kdmFXS300 = 1,
+ kdmFXS300EX = 2
+};
+enum KFXSSpxDeviceModel
+{
+ kdmFXSSpx300 = 0,
+ kdmFXSSpx2E1Based = 1,
+ kdmFXSSpx300EX = 2
+};
+enum KE1SpxDeviceModel
+{
+ kdmE1Spx = 0,
+ kdm2E1Based = 1,
+ kdmE1SpxEX = 2
+};
+enum KGSMDeviceModel
+{
+ kdmGSM = 0
+};
+enum KGSMSpxDeviceModel
+{
+ kdmGSMSpx = 0
+};
+enum KFaxDeviceModel
+{
+ kdmFax = 0,
+ kdmFaxEX = 1
+};
+enum KSystemObject
+{
+ ksoLink = 0x00,
+ ksoLinkMon = 0x20,
+ ksoChannel = 0x1000,
+ ksoH100 = 0x200,
+ ksoFirmware = 0x80,
+ ksoDevice = 0x100,
+ ksoAPI = 0x150
+};
+enum KFirmwareId
+{
+ kfiE1600A,
+ kfiE1600B,
+ kfiFXO80,
+ kfiGSM40
+};
+enum KE1Status
+{
+ kesOk = 0x00,
+ kesSignalLost = 0x01,
+ kesNetworkAlarm = 0x02,
+ kesFrameSyncLost = 0x04,
+ kesMultiframeSyncLost = 0x08,
+ kesRemoteAlarm = 0x10,
+ kesHighErrorRate = 0x20,
+ kesUnknownAlarm = 0x40,
+ kesE1Error = 0x80,
+ kesNotInitialized = 0xFF
+};
+enum KE1ChannelStatus
+{
+ kecsFree = 0x00,
+ kecsBusy = 0x01,
+ kecsOutgoing = 0x02,
+ kecsIncoming = 0x04,
+ kecsLocked = 0x06,
+ kecsOutgoingLock = 0x10,
+ kecsLocalFail = 0x20,
+ kecsIncomingLock = 0x40,
+ kecsRemoteLock = 0x80
+};
+enum KVoIPChannelStatus
+{
+ kipcsFree = kecsFree,
+ kipcsOutgoingLock = kecsOutgoingLock,
+ kipcsIncomingLock = kecsIncomingLock
+};
+enum KFXOChannelStatus
+{
+ kfcsDisabled = 0x00,
+ kfcsEnabled = 0x01
+};
+enum KFXSChannelStatus
+{
+ kfxsOnHook,
+ kfxsOffHook,
+ kfxsRinging,
+ kfxsFail
+};
+enum KGsmChannelStatus
+{
+ kgsmIdle,
+ kgsmCallInProgress,
+ kgsmSMSInProgress,
+ kgsmModemError,
+ kgsmSIMCardError,
+ kgsmNetworkError,
+ kgsmNotReady
+};
+enum KCallStatus
+{
+ kcsFree = 0x00,
+ kcsIncoming = 0x01,
+ kcsOutgoing = 0x02,
+ kcsFail = 0x04
+};
+enum KCallStartInfo
+{
+ kcsiHumanAnswer,
+ kcsiAnsweringMachine,
+ kcsiCellPhoneMessageBox,
+ kcsiUnknown,
+ kcsiCarrierMessage
+};
+enum KChannelFeatures
+{
+ kcfDtmfSuppression = 0x0001,
+ kcfCallProgress = 0x0002,
+ kcfPulseDetection = 0x0004,
+ kcfAudioNotification= 0x0008,
+ kcfEchoCanceller = 0x0010,
+ kcfAutoGainControl = 0x0020,
+ kcfHighImpEvents = 0x0080,
+ kcfCallAnswerInfo = 0x0100,
+ kcfOutputVolume = 0x0200,
+ kcfPlayerAGC = 0x0400
+};
+enum KMixerSource
+{
+ kmsChannel,
+ kmsPlay,
+ kmsGenerator,
+ kmsCTbus,
+ kmsNoDelayChannel
+};
+struct KMixerCommand
+{
+ int32 Track;
+ int32 Source;
+ int32 SourceIndex;
+};
+struct KPlayFromStreamCommand
+{
+ void *Buffer;
+ uint32 BufferSize;
+ int32 CodecIndex;
+};
+struct KBufferParam
+{
+ void *Buffer;
+ uint32 BufferSize;
+};
+enum KMixerTone
+{
+ kmtSilence = 0x00,
+ kmtDial = 0x01,
+ kmtBusy = 0x02,
+ kmtFax = 0x03,
+ kmtVoice = 0x04,
+ kmtEndOf425 = 0x05,
+ kmtCollect = 0x06,
+ kmtEndOfDtmf= 0x07,
+};
+struct K3L_CHANNEL_STATUS
+{
+ KCallStatus CallStatus;
+ KMixerTone AudioStatus;
+ int32 AddInfo;
+ int32 EnabledFeatures;
+};
+struct K3L_LINK_STATUS
+{
+ int16 E1;
+ byte Channels[ KMAX_E1_CHANNELS ];
+};
+enum KPllErrors
+{
+ kpeClockAError = 0x01,
+ kpeClockBError = 0x02,
+ kpeSCbusError = 0x04,
+ kpeMVIPError = 0x08,
+ kpeMasterPllError = 0x10,
+ kpeModeError = 0x20,
+ kpeLocalRefError = 0x40,
+ kpeInternalError = 0x80
+};
+struct K3L_H100_STATUS
+{
+ int32 Mode;
+ int32 MasterClock;
+ int32 Enable;
+ int32 Reference;
+ int32 SCbus;
+ int32 HMVIP;
+ int32 MVIP90;
+ int32 CT_NETREF;
+ int32 PllLocalRef;
+ int32 PllErrors;
+};
+enum KEchoLocation
+{
+ kelNetwork = 0x0,
+ kelCtBus = 0x1
+};
+enum KCodecIndex
+{
+ kci8kHzALAW = 0x00,
+ kci8kHzPCM = 0x01,
+ kci11kHzPCM = 0x02,
+ kci8kHzGSM = 0x03,
+ kci8kHzADPCM= 0x04,
+ kci8kHzULAW = 0x05,
+ kci8kHzG729 = 0x06,
+ kci8kHziLBC = 0x07,
+ kciLastCodecEntryMark
+};
+enum KEchoCancellerConfig
+{
+ keccNotPresent,
+ keccOneSingleBank,
+ keccOneDoubleBank,
+ keccTwoSingleBank,
+ keccTwoDoubleBank,
+ keccFail
+};
+struct K3L_DEVICE_CONFIG
+{
+ int32 LinkCount;
+ int32 ChannelCount;
+ int32 EnabledChannelCount;
+ int32 MixerCount;
+ int32 MixerCapacity;
+ int32 WorkStatus;
+ int32 DeviceModel;
+ int32 H100_Mode;
+ int32 PciBus;
+ int32 PciSlot;
+ int32 PlayerCount;
+ int32 VoIPChannelCount;
+ int32 CTbusCount;
+ KEchoCancellerConfig EchoConfig;
+ KEchoLocation EchoLocation;
+ sbyte SerialNumber[ KMAX_SERIAL_NUMBER ];
+};
+
+typedef K3L_DEVICE_CONFIG K3L_E1_DEVICE_CONFIG;
+typedef K3L_DEVICE_CONFIG K3L_FX_DEVICE_CONFIG;
+struct K3L_API_CONFIG
+{
+ int32 MajorVersion;
+ int32 MinorVersion;
+ int32 BuildVersion;
+ int32 SvnRevision;
+ int32 RawCmdLogging;
+ int32 VpdVersionNeeded;
+ sbyte StrVersion[ KMAX_STR_VERSION ];
+};
+struct K3L_LINK_CONFIG
+{
+ KSignaling Signaling;
+ int32 IncomingDigitsRequest;
+ int32 IdentificationRequestPos;
+ int32 ChannelCount;
+ int32 ReceivingClock;
+ sbyte NumberA[ KMAX_DIAL_NUMBER + 1 + 3 ];
+};
+struct K3L_CHANNEL_CONFIG
+{
+ KSignaling Signaling;
+ int32 AutoEnableFeatures;
+ int32 CapableFeatures;
+};
+struct K3L_E1600A_FW_CONFIG
+{
+ int32 MfcExchangersCount;
+ int32 MonitorBufferSize;
+ sbyte FwVersion[ KMAX_STR_VERSION ];
+ sbyte DspVersion[ KMAX_DSP_NAME ];
+};
+struct K3L_E1600B_FW_CONFIG
+{
+ int32 AudioBufferSize;
+ int32 FilterCount;
+ int32 MixerCount;
+ int32 MixerCapacity;
+ sbyte FwVersion[ KMAX_STR_VERSION ];
+ sbyte DspVersion[ KMAX_DSP_NAME ];
+};
+typedef K3L_E1600B_FW_CONFIG K3L_GSM40_FW_CONFIG;
+typedef K3L_E1600B_FW_CONFIG K3L_FXO80_FW_CONFIG;
+struct K3L_COMMAND
+{
+ int32 Object;
+ int32 Cmd;
+ byte *Params;
+};
+
+enum KEventObjectId
+{
+ koiDevice = 0x00,
+ koiChannel = 0x01,
+ koiPlayer = 0x02,
+ koiLink = 0x03,
+ koiSystem = 0x04
+};
+
+struct K3L_EVENT
+{
+ int32 Code;
+ int32 AddInfo;
+ int32 DeviceId;
+ int32 ObjectInfo;
+ void *Params;
+ int32 ParamSize;
+ int32 ObjectId;
+};
+struct KIncomingSeizeParams
+{
+ sbyte NumberB[ KMAX_DIAL_NUMBER + 1 ];
+ sbyte NumberA[ KMAX_DIAL_NUMBER + 1 ];
+ sbyte Padding[2];
+};
+struct KCtbusCommand
+{
+ int32 Stream;
+ int32 TimeSlot;
+ int32 Enable;
+};
+struct KUserInformation
+{
+ int32 ProtocolDescriptor;
+ int32 UserInfoLength;
+ byte UserInfo[ KMAX_USER_USER_LEN ];
+};
+struct KISDNSubaddressInformation
+{
+ KQ931TypeOfSubaddress TypeOfSubaddress;
+ bool OddNumberOfSignals;
+ int32 InformationLength;
+ byte Information[ KMAX_SUBADRESS_INFORMATION_LEN ];
+};
+struct KISDNSubaddresses
+{
+ KISDNSubaddressInformation Called;
+ KISDNSubaddressInformation Calling;
+};
+enum KLinkErrorCounter
+{
+ klecChangesToLock = 0,
+ klecLostOfSignal = 1,
+ klecAlarmNotification = 2,
+ klecLostOfFrame = 3,
+ klecLostOfMultiframe = 4,
+ klecRemoteAlarm = 5,
+ klecUnknowAlarm = 6,
+ klecPRBS = 7,
+ klecWrogrBits = 8,
+ klecJitterVariation = 9,
+ klecFramesWithoutSync = 10,
+ klecMultiframeSignal = 11,
+ klecFrameError = 12,
+ klecBipolarViolation = 13,
+ klecCRC4 = 14,
+ klecCount = 15
+};
+struct K3L_LINK_ERROR_COUNTER
+{
+ int32 ErrorCounters[ klecCount ];
+};
+struct KSipData
+{
+ int32 DataLength;
+ byte Data[ KMAX_SIP_DATA ];
+};
+
+enum KLibParams
+{
+ klpDebugFirmware,
+ klpResetFwOnStartup,
+ klpResetFwOnShutdown,
+ klpSeizureEventCompat,
+ klpDisableTDMBufferWarnings,
+ klpDisableInternalVoIP,
+ klpLogCallControl,
+ klpDoNotLogApiInterface,
+ klpMaxParams
+};
+
+typedef stt_code ( Kstdcall K3L_CALLBACK )();
+typedef stt_code ( Kstdcall K3L_MONITOR_CALLBACK )( byte *, byte );
+typedef stt_code ( Kstdcall K3L_EVENT_CALLBACK )( int32 Object, K3L_EVENT * );
+typedef stt_code ( Kstdcall *K3L_THREAD_CALLBACK )( void * );
+typedef void ( Kstdcall K3L_AUDIO_CALLBACK )( int32 DevId, int32 Channel, byte *Buffer, int32 Size );
+#if __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+extern "C"
+{
+sbyte *Kstdcall k3lStart( int32 Major, int32 Minor, int32 Build );
+void Kstdcall k3lStop();
+void Kstdcall k3lRegisterEventHandler( K3L_EVENT_CALLBACK *Function );
+void Kstdcall k3lRegisterAudioListener( K3L_AUDIO_CALLBACK *Player, K3L_AUDIO_CALLBACK *Recorder );
+int32 Kstdcall k3lSendCommand( int32 DeviceId, K3L_COMMAND *Cmd );
+int32 Kstdcall k3lSendRawCommand( int32 DeviceId, int32 IntfId, void *Command, int32 CmdSize );
+int32 Kstdcall k3lRegisterMonitor( K3L_MONITOR_CALLBACK *EventMonitor, K3L_MONITOR_CALLBACK *CommandMonitor, K3L_MONITOR_CALLBACK *BufferMonitor );
+int32 Kstdcall k3lGetDeviceConfig( int32 DeviceId, int32 Object, void *Data, int32 DataSize );
+int32 Kstdcall k3lGetDeviceStatus( int32 DeviceId, int32 Object, void *Data, int32 DataSize );
+int32 Kstdcall k3lGetDeviceCount();
+int32 Kstdcall k3lGetDeviceType( int32 DeviceId );
+int32 Kstdcall k3lGetEventParam( K3L_EVENT *Evt, const sbyte *Name, sbyte *Buffer, int32 BufferSize );
+int32 Kstdcall k3lSetGlobalParam( int32 ParamIndex, int32 ParamValue );
+}
+#if __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+#endif
+
+
+enum KISDNDebugFlag
+{
+ kidfQ931 = 0x01,
+ kidfLAPD = 0x02,
+ kidfSystem = 0x04,
+ kidfInvalid = 0x08,
+};
+
+#define CM_VOIP_START_DEBUG 0x20
+#define CM_VOIP_STOP_DEBUG 0x21
+#define CM_VOIP_DUMP_STAT 0x22
+
+#define CM_ISDN_DEBUG 0x24
+
+#define CM_PING 0x123456
+#define EV_PONG 0x654321
+
+#define CM_LOG_REQUEST 0x100
+#define CM_LOG_CREATE_DISPATCHER 0x101
+#define CM_LOG_DESTROY_DISPATCHER 0x102
+
+#endif /* INCLUDED_K3LDEFS_H */
More information about the Freeswitch-trunk
mailing list