提交 07073e9c authored 作者: João Mesquita's avatar João Mesquita

Proper includes...

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk/scripts/contrib@13776 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 758bd33e
差异被折叠。
/******************************************************************************
Erros e falhas
Errors and fails
******************************************************************************/
// EV_CHANNEL_FAIL
#define FC_REMOTE_FAIL 0x01
/* Falha remota.
Remote fail.
*/
#define FC_LOCAL_FAIL 0x02
/* Falha local.
Local fail.
*/
#define FC_REMOTE_LOCK 0x03
/* Canal bloqueado remotamente.
Channel remotely locked.
*/
#define FC_LINE_SIGNAL_FAIL 0x04
/* Falha na sinalizao de linha.
Line signaling fail.
*/
#define FC_ACOUSTIC_SIGNAL_FAIL 0x05
/* Falha na sinalizao de registro.
Register signaling fail.
*/
enum KChannelFail
{
kfcRemoteFail = FC_REMOTE_FAIL,
kfcLocalFail = FC_LOCAL_FAIL,
kfcRemoteLock = FC_REMOTE_LOCK,
kfcLineSignalFail = FC_LINE_SIGNAL_FAIL,
kfcAcousticSignalFail = FC_ACOUSTIC_SIGNAL_FAIL
};
// EV_INTERNAL_FAIL
#define ER_INTERRUPT_CTRL 0x01
/* Falha no controlador de interrupes
Interrupt controller fail
*/
#define ER_COMMUNICATION_FAIL 0x02
/* Falha na comunicao com a interface
Interface communication fail
*/
#define ER_PROTOCOL_FAIL 0x03
/* Falha no tratamento do protocolo de comunicao
Protocol fail
*/
#define ER_INTERNAL_BUFFER 0x04
/* Erro interno na API
API internal error
*/
#define ER_MONITOR_BUFFER 0x05
/* Erro no buffer de monitorao
Monitor buffer error
*/
#define ER_INITIALIZATION 0x06
/* Falha na inicializao do sistema
Initialization fail
*/
#define ER_INTERFACE_FAIL 0x07
/* A interface nao responde
Interface is dead
*/
#define ER_CLIENT_COMM_FAIL 0x08
/* Falha do cliente na comunicacao cliente/servidor
Client fails in client/server communication
*/
#define ER_POLL_CTRL 0x09
/* Falha no controle de polling
Polling control fail
*/
#define ER_EVT_BUFFER_CTRL 0x0A
/* Falha da API no controle de buffer circular de eventos
Circular buffer event control fails
*/
#define ER_INVALID_CONFIG_VALUE 0x0B
/* Valor invalido em arquivo de configuracao
Invalid configuration value
*/
#define ER_INTERNAL_GENERIC_FAIL 0x0C
/* Falha generica. Dados sobre o erro encontrados nos logs
Generic fail. See logs for more information
*/
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
};
// EV_SEIZE_FAIL
#define FS_CHANNEL_LOCKED 0x01
/* Ocupao negada por bloqueio de sada.
The channel is locally locked for outgoing calls.
*/
#define FS_INCOMING_CHANNEL 0x02
/* Canal liberado somente para entrada.
Channel is only for income calls.
*/
#define FS_CHANNEL_NOT_FREE 0x03
/* Canal ocupado ou com falha.
Channel busy.
*/
#define FS_DOUBLE_SEIZE 0x04
/* Dupla ocupao (canal recebeu uma ocupao ao invs de uma confirmao).
Double seize (channel receives a seize instead of a seize confirmation).
*/
#define FS_LOCAL_CONGESTION 0x06
/* Congestionamento local
Local congestion
*/
#define FS_NO_DIAL_TONE 0x07
/* Sem tom de discagem (utilizado na analogica)
No dial tone (analog lines)
*/
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
};
#ifndef KGSM_H
#define KGSM_H
/*
* KGsmCallCause: Causes for Call Fail
*/
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,
};
/*
* KGsmMobileCause: Causes of Mobile Equipment Fail
*/
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
};
/*
* KGsmSmsCause: Causes of SMS Fail
*/
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
#if !defined KH100DEFS_H
#define KH100DEFS_H
/******************************************************************************
Comandos do H100
H100 commands
******************************************************************************/
#define CM_SEND_TO_CTBUS 0x90
/*
Liga o TX do canal especificado a um determinado Stream/Timeslot do ctbus.
Link the TX of the specified channel to the specified ctbus stream/timeslot
K3L_COMMAND.Object = ChannelNumber
Params:
[0] - Ctbus stream
[1] - Ctbus timeslot
[2] - Start/Stop
*/
#define CM_RECV_FROM_CTBUS 0x91
/* Liga o RX do canal especificado a um determinado Stream/Timeslot do ctbus.
Link the RX of the specified channel to the specified ctbus stream/timeslot
K3L_COMMAND.Object = ChannelNumber
Params:
[0] - Ctbus stream
[1] - Ctbus timeslot
[2] - Start/Stop
*/
#define CM_SEND_RANGE_TO_CTBUS 0x92
/*
Liga o TX dos canais especificados aos determinados Stream/Timeslots do ctbus.
Link the TX of the specified channels to the specified ctbus stream/timeslots
K3L_COMMAND.Object = First channel to be used in the block
Params:
A null terminated ascii string with the command parameters.
The expected call parameters are:
Parameter: Required: Description:
range_count yes Number of channels in the block
stream yes Stream of the H100 BUS
first_timeslot yes First timeslot, its linked with the first channel
enabled no if true enable the transmission, else disable it. Default value is true.
*/
#define CM_SETUP_H100 0x93
/* Este comando est obsoleto e no mais processado pela API, a configurao
deve ser feita utilizando o aplicativo KConfig.
This command is deprecated and is no longer supported, this configuration
should be done using KConfig.
------
Configura a iterao entre a placa e o ctbus
Sets up the iteration between the board and the ctbus
K3L_COMMAND.Object = Command*
Params:
[0] - Params*
* See documentation
Command definitions will be finded in KH100Defs.h
*/
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
};
// enumerados usados juntamente a estrutura K3L_H100_STATUS
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
};
/******************************************************************************
CM_SETUP_H100
Configura o H100. Este comando na verdade um grupo de comandos de configurao.
*******************************************************************************/
#define H100_DEVICE_MODE khciDeviceMode
// Define o modo de operao da placa.
enum KH100Mode
{
h100_Slave,
h100_Master,
h100_StandbyMaster,
h100_Diagnostic,
h100_NotConnected
};
#define H100_MASTER_GEN_CLOCK khciMasterGenClock
// Define qual o clock a ser gerado (A ou B) no CTbus caso a placa seja ou venha a ser a master
enum KH100SelectCtbusClock
{
h100_scClockA,
h100_scClockB
};
// trier - changes... :)
#define H100_CT_NETREF_ENABLE khciCTNetRefEnable
// Habilita ou desabilita e programa a freq. de gerao do CT_NETREF.
enum KH100CtNetref
{
h100_nrOff,
h100_nrEnable
};
#define H100_SCBUS_ENABLE khciSCbusEnable
// Habilita ou desabilita e configura o clock da gerao da referncia do scbus.
enum KH100ScbusEnable
{
h100_seOff,
h100_seOn2Mhz,
h100_seOn4Mhz,
h100_seOn8Mhz
};
#define H100_HMVIP_ENABLE khciHMVipEnable
// Habilita ou desabilita a gerao da referncia do HMVIP.
// 1 - On, 0 - Off KH100Enable
#define H100_MVIP90_ENABLE khciMVip90Enable
// Habilita ou desabilita a gerao da referncia do MVIP90.
// 1 - On, 0 - Off KH100Enable
#define H100_CTBUS_DATA_ENABLE khciCTbusDataEnable
// Habilita ou desabilita a transmissao de dados no CTbus.
// 1 - On, 0 - Off KH100Enable
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
// Configura a frequncia de gerao dos clocks do ctbus em blocos de 4 streams conforme a
// especificao do H100. Bloco 0, streams de 0 a 3, bloco 1, de 4 a 7, etc..
// As stream de 16 a 31 estaro sempre em 8Mhz conforme especificao.
enum KH100CtbusFreq
{
h100_cf_2Mhz = 0,
h100_cf_4Mhz = 1,
h100_cf_8Mhz = 2
};
#endif
#ifndef _KISDN_H_
#define _KISDN_H_
#define KMAX_USER_USER_LEN 32
#define KMAX_SUBADRESS_INFORMATION_LEN 20
/**
KQ931Cause: Causes for disconnection and/or fails.
*/
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,
};
/**
KQ931ProgressIndication: Used internally to indicate and to be informed of the
presence of call control tones in band.
*/
enum KQ931ProgressIndication
{
kq931pTonesMaybeAvailable = 1,
kq931pDestinationIsNonIsdn = 2,
kq931pOriginationIsNonIsdn = 3,
kq931pCallReturnedToIsdn = 4,
kq931pTonesAvailable = 8,
};
/**
KQ931Hlc: High Layer compatibility: Used internally to indicate the call content
('kq931hTelefony' is always sent).
*/
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,
};
/**
KQ931BearerCapability: Used internally to indicate the call bearer's capability
(can be changed in KConfig).
*/
enum KQ931BearerCapability
{
kq931bSpeech = 0x00,
kq931bUnrestrictedDigital = 0x08,
kq931bAudio31kHz = 0x10,
kq931bAudio7kHz = 0x11,
kq931bVideo = 0x18,
};
/**
KQ931TypeOfNumber: Indicates the caller/called party type of number. Defaults to
'kq931tUnknownNumber', but can be changed by a parameter in CM_MAKE_CALL.
*/
enum KQ931TypeOfNumber
{
kq931tUnknownNumber = 0x00,
kq931tInternationalNumber = 0x10,
kq931tNationalNumber = 0x20,
kq931tNetworkSpecificNumber = 0x30,
kq931tSubscriberNumber = 0x40,
kq931tAbbreviatedNumber = 0x60,
kq931tReservedNumber = 0x70,
kq931tDefaultNumber = kq931tUnknownNumber,
};
/**
KQ931NumberingPlan: Indicates the caller/called party numbering plan. Defaults to
'kq931pUnknownPlan', but can be changed by a parameter in CM_MAKE_CALL.
*/
enum KQ931NumberingPlan
{
kq931pUnknownPlan = 0x00,
kq931pIsdnPlan = 0x01,
kq931pDataPlan = 0x03,
kq931pTelexPlan = 0x04,
kq931pNationalPlan = 0x08,
kq931pPrivatePlan = 0x09,
kq931pReservedPlan = 0x0F,
kq931pDefaultPlan = kq931pUnknownPlan,
};
/**
KQ931UserInfoProtocolDescriptor: Used in 'struct KUserInformation' (declared in k3l.h) to indicate
the protocol that is being used with the CM_USER_INFORMATION command.
*/
enum KQ931UserInfoProtocolDescriptor
{
kq931uuUserSpecific = 0x00,
kq931uuOSI_HighLayer = 0x01,
kq931uuX244 = 0x02,
kq931uuIA5_Chars = 0x04,
kq931uuX208_X209 = 0x05,
kq931uuV120 = 0x07,
kq931uuQ931_CallControl = 0x08,
kq931uuNational = 0x40 //MASK
};
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 //_KISDN_H_
/******************************************************************************
Comandos de controle do mixer
Mixer control commands
******************************************************************************/
#define CM_MIXER 0x60
/* Envia um comando para o mixer associado ao canal.
Sends a command to a channel associated mixer.
K3L_COMMAND.Object = MixerNumber
Params:
A pointer to a KMixerCommand strutcture which has the following members
Track - Track index
Source - Audio source (KMixerSource, k3l.h)
SourceIndex - Channel number or generator code
*/
#define CM_CLEAR_MIXER 0x61
/* Coloca todas as trilhas do mixer em silncio.
Sets all mixer tracks to silent.
K3L_COMMAND.Object = MixerNumber
*/
#define CM_PLAY_FROM_FILE 0x62
/* Reproduz um arquivo de audio
Play an audio file
K3L_COMMAND.Object = PlayerNumber
Events: EV_END_OF_STREAM
Params:
FileName (null terminated)
*/
#define CM_RECORD_TO_FILE 0x63
/* Inicia gravaao de audio em arquivo
Starts audio recording in file
K3L_COMMAND.Object = PlayerNumber
Params:
FileName (null terminated)
*/
#define CM_PLAY_FROM_STREAM 0x64
/* Reproduz um buffer de audio
Play an audio buffer
K3L_COMMAND.Object = PlayerNumber
Events: EV_END_OF_STREAM
Params:
struct KPlayFromStreamCommand
Buffer - Pointer to the buffer
BufferSize - Buffer size
*/
#define CM_INTERNAL_PLAY 0x65
/* Used internally
*/
#define CM_STOP_PLAY 0x66
/* Para o reprodutor.
Stops player.
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_STOP_RECORD 0x67
/* Para a gravo do canal.
Stops channel recording.
K3L_COMMAND.Object = ChannelNumber
*/
#define CM_PAUSE_PLAY 0x68
/* Pausa a reproducao de audio de um player
Pauses a player
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_PAUSE_RECORD 0x69
/* Pausa a gravacao de audio de um canal
Pauses recording of a channel
K3L_COMMAND.Object = ChannelNumber
*/
#define CM_RESUME_PLAY 0x6A
/* Continua um play anteriormente pausado
Resumes a paused play
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_RESUME_RECORD 0x6B
/* Continua um play anteriormente pausado
Resumes a paused play
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_INCREASE_VOLUME 0x6C
/* Aumenta o volume na saida do mixer
Increases volume on mixer out
K3L_COMMAND.Object = MixerNumber
*/
#define CM_DECREASE_VOLUME 0x6D
/* Diminui o volume na saida do mixer
Decreases volume on mixer out
K3L_COMMAND.Object = MixerNumber
*/
#define CM_LISTEN 0x6E
/* Inicia o processo de transmissao de audio para reconhecimento de voz.
Starts audio transmission process for voice recognition.
K3L_COMMAND.Object = MixerNumber
Params:
[0..3] - Inteiro contendo a quantidade de milisegundos de audio em chamada da callback
*/
#define CM_STOP_LISTEN 0x6F
/* Para o processo de transmissao de audio e para a gravacao do buffer de guarda.
Stops audio tranmission process, and stops the buffer guard recoring..
K3L_COMMAND.Object = MixerNumber
*/
#define CM_PREPARE_FOR_LISTEN 0x70
/* Inicia a gravacao do buffer de guarda.
Start guard buffer recording.
K3L_COMMAND.Object = MixerNumber
Params:
[0..3] - Inteiro contendo o tamanho do buffer de guarda em milisegundos
*/
#define CM_PLAY_SOUND_CARD 0x71
/* Inicia o play de canal na placa de som
Starts the sound card channel player
K3L_COMMAND.Object = ChannelNumber
*/
#define CM_STOP_SOUND_CARD 0x72
/* Para o play de canal na placa de som
Stops the sound card channel player
K3L_COMMAND.Object = ChannelNumber
*/
#define CM_MIXER_CTBUS 0x73
/* Envia um comando para o mixer associado ao de interconexao. Soh para placas com CTbus
Sends a command to a inteconnect channel associated mixer. Only for boards with CTbus
K3L_COMMAND.Object = CtbusMixerNumber
Params:
[0] - Mixer index
[1] - Audio source
[2] - Channel number or generator code
kmsChannel - Channel
kmsPlay - Play
kmsGenerator - Signal
kmsCTbus - another mixer channel
*/
#define CM_PLAY_FROM_STREAM_EX 0x74
/* Reproduz um buffer de audio
Play an audio buffer
K3L_COMMAND.Object = PlayerNumber
Events: EV_END_OF_STREAM
Params:
struct KPlayFromStreamCommand
Buffer - Pointer to the buffer
BufferSize - Buffer size
CodecIndex - 0 = 8Khz ALAW, 1 = 8Khz PCM, 2 = 11khz PCM
*/
#define CM_INTERNAL_PLAY_EX 0x75
/* Used internally
*/
#define CM_ENABLE_PLAYER_AGC 0x76
/*
Habilita o controle de ganho automtico do player.
Enable player automatic gain contol.
K3L_COMMAND.Object = ChannelNumber
*/
#define CM_DISABLE_PLAYER_AGC 0x77
/*
Desabilita o controle de ganho automtico do player.
Disable player automatic gain contol.
K3L_COMMAND.Object = ChannelNumber
*/
#define CM_START_STREAM_BUFFER 0x78
/* Inicia um play de buffer contuo
Start continuous play buffer
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_ADD_STREAM_BUFFER 0x79
/* Adiciona dados a um stream de buffer contnuo
Add data to a continuous play buffer
K3L_COMMAND.Object = PlayerNumber
Params:
[0..3] - Pointer to the buffer
[4..7] - Buffer size
*/
#define CM_STOP_STREAM_BUFFER 0x7A
/* Para um play de buffer contnuo
Stop a continuous play buffer
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_SEND_BEEP 0x7B
/* Envia um bip no canal
Sends a beep
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_SEND_BEEP_CONF 0x7C
/* Envia um bip na conferencia
Sends a beep
K3L_COMMAND.Object = PlayerNumber
*/
#define CM_ADD_TO_CONF 0x7D
/* Adiciona um canal a uma conferencia
Adds a channel to a specified conference
K3L_COMMAND.Object = MixerNumber
Params:
[0] - Conference index
*/
#define CM_REMOVE_FROM_CONF 0x7E
/* Retira um canal de uma conferencia
Adds a channel to a specified conference
K3L_COMMAND.Object = MixerNumber
*/
#define CM_RECORD_TO_FILE_EX 0x7F
/* Inicia gravaao de audio em arquivo, utilizando codec especfico
Starts audio recording in file, using specific codec
K3L_COMMAND.Object = PlayerNumber
Params:
A null terminated ascii string with the parameters.
The expected command parameters are:
Parmeter: Description:
file_name File name for use in recording
codec Codec index(defined in KCodecIndex enum) for audio compression
if ommited ALaw 8khz will be used
*/
#define CM_SET_VOLUME 0xA0
/* Configura o volume de sada do mixer para um valor na vaixa de -10 a +10. Zero reseta o volume.
Sets output volume from mixer channel to a values between -10 and +10. Zero resets the volume.
K3L_COMMAND.Object = MixerNumber
Params:
A null terminated ascii string with the parameters.
The expected command parameters are:
Parmeter: Description:
volume File name for use in recording
type Defines if is the "input" or "output" volume to be changed
*/
#define CM_START_CADENCE 0xA1
/* Inicia a reproduo da cadncia especificada com tom de 425Hz.
Starts to play the specified 425Hz tone cadence.
K3L_COMMAND.Object = MixerNumber
Params:
A null terminated ascii string with the parameters.
The expected command parameters are:
Parmeter: Description:
cadence_times A comma separated list of times (in milliseconds) for dialtone
and silence (in pairs), or "continuous" for continuous dialtone.
mixer_track The mixer track that sould be used to play the cadence. "0" (zero)
is the default mixer track.
*/
#define CM_STOP_CADENCE 0xA2
/* Pra a cadncia iniciada com o comando CM_START_CADENCE.
Stops the cadence started with CM_START_CADENCE.
K3L_COMMAND.Object = MixerNumber
*/
差异被折叠。
#if !defined KLTYPEDEFS_H
#define KLTYPEDEFS_H
#if defined( _WINDOWS ) || defined( _Windows ) || defined( _WIN32 )
#ifndef KWIN32
#define KWIN32 1
#endif
#endif
// Khomp defined types
#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 uint64 intptr;
typedef intptr 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
};
// Below structures are deprecated
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
#ifndef k3lVersion_h
#define k3lVersion_h
#define k3lApiMajorVersion 2
#define k3lApiMinorVersion 0
#define k3lApiBuildVersion 0
#endif
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论