⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 attpriv.h

📁 TSapi 软件电话源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/***********************************************************/
/* Copyright (C) 2001 Avaya Inc.  All rights reserved.*/
/***********************************************************/
/*
 *  attpriv.h    ATT Private Defines
 *
 *  Header File Dependencies
 *   	acs.h
 *   	csta.h
 *
 */

#ifndef ATT_PRIV__H
#define ATT_PRIV__H

/* platform-dependent definitions */
#include "tsplatfm.h"

/* structure definitions for AT&T private messages */
#include "attpdefs.h"


#define	ATT_MAX_PRIVATE_DATA	1024	/* Max size of encoded private data */
#define ATT_MAX_USER_INFO		129	/* Max user to user length	    */
#define ATT_MAX_UUI_SIZE		96	/* Max supported V6 user to user length   */
#define ATTV5_MAX_UUI_SIZE	        32	/* Max supported V5 user to user length   */
#define ATT_MAX_USER_CODE		25		/* Max length of user entered code  */
#define ATT_MAX_RECEIVERS		5		/* Max receivers for touch tones    */
#define ATT_MAX_PARTIES_ON_CALL	6		/* Max parties on a call	    */
#define ATT_MAX_AGENT_EXT		10		/* Max agent extensions for query   */
#define ATT_MAX_TONES			33		/* Max touch tones sent		    */
#define ATT_MAX_PROVIDED_CODE	25		/* Max size of user provided code   */
#define ATT_MAX_ENTERED_DIGITS  ATT_MAX_USER_CODE


/* the following two defines are the vendor sent back in private data 
 * If there is a change, MAX_VENDOR_LENGTH may change please make sure
 * the longest string is used.  Thought about using macro that took max of two
 * lengths, but did not like it because of performance issues.  So set to
 * 16 + 1 for NULL termination
 */

#define ATT_VENDOR_STRING	"AT&T Definity G3"
#define ECS_VENDOR_STRING	"ECS"
#define MAX_VENDOR_LENGTH 17	// 16 +1 for NULL termination Cannot be bigger than 32 bytes

#define ATTPRIV_MAX_HEAP            64

#define ATT_NULL_UCID            "00000000000000000000"   // used as no universal call id

	/*
	 * ATT Private Data Structure
	 * 	Structure large enough to hold all ATT encoded 
	 *	private data sent and received via the Private Data 
	 *	Parameter for TSAPI function calls.
	 */

typedef struct ATTPrivateData_t {
	char			vendor[32];
	unsigned short	length;
   	char			data[ATT_MAX_PRIVATE_DATA];
} ATTPrivateData_t;


typedef unsigned short ATTEventType_t;

	/*
	 * ATT Private Data Event Structure
	 * ATT Event structure created by the ATT Private Data 
	 * decoding functions.
	 */

typedef struct  ATTEvent_t
{
    ATTEventType_t	eventType;
	union
	{

		
		/* private version 6 */
		ATTSingleStepConferenceCallConfEvent_t      ssconference;
		ATTSelectiveListeningHoldConfEvent_t  slhold;
		ATTSelectiveListeningRetrieveConfEvent_t slretrieve;
		ATTSendDTMFToneConfEvent_t			sendDTMFTone;
		ATTQueryAcdSplitConfEvent_t			queryAcdSplit;
		ATTQueryAgentLoginConfEvent_t		queryAgentLogin;
		ATTQueryAgentLoginResp_t			queryAgentLoginResp;
		ATTQueryAgentStateConfEvent_t		queryAgentState;
		ATTQueryCallClassifierConfEvent_t	queryCallClassifier;
		ATTQueryDeviceInfoConfEvent_t		queryDeviceInfo;
		ATTQueryDeviceNameConfEvent_t		queryDeviceName;
		ATTQueryMwiConfEvent_t				queryMwi;
		ATTQueryStationStatusConfEvent_t	queryStationStatus;
		ATTQueryTodConfEvent_t				queryTod;
		ATTQueryTgConfEvent_t				queryTg;
		ATTQueryAgentMeasurementsConfEvent_t		queryAgentMeas;
		ATTQuerySplitSkillMeasurementsConfEvent_t	querySplitSkillMeas;
		ATTQueryTrunkGroupMeasurementsConfEvent_t	queryTrunkGroupMeas;
		ATTQueryVdnMeasurementsConfEvent_t			queryVdnMeas;
		ATTSnapshotDeviceConfEvent_t		snapshotDevice;
		ATTMonitorConfEvent_t		  		monitorStart;
		ATTMonitorCallConfEvent_t			monitorCallStart; 
		ATTMonitorStopOnCallConfEvent_t		monitorStopOnCall;
		ATTCallClearedEvent_t				callClearedEvent;
		ATTConferencedEvent_t				conferencedEvent;
		ATTConnectionClearedEvent_t			connectionClearedEvent;
		ATTDeliveredEvent_t					deliveredEvent;
		ATTEnteredDigitsEvent_t				enteredDigitsEvent;
		ATTEstablishedEvent_t				establishedEvent;
		ATTLoggedOnEvent_t					loggedOnEvent;
		ATTNetworkReachedEvent_t			networkReachedEvent;
		ATTOriginatedEvent_t				originatedEvent;
		ATTTransferredEvent_t				transferredEvent;
		ATTRouteRequestEvent_t				routeRequest;
		ATTRouteUsedEvent_t					routeUsed;
		ATTLinkStatusEvent_t				linkStatus;
		ATTGetAPICapsConfEvent_t			getAPICaps;
		ATTServiceInitiatedEvent_t			serviceInitiated;
		ATTChargeAdviceEvent_t				chargeAdviceEvent;
		ATTSetBillRateConfEvent_t			setBillRate;
		ATTQueryUcidConfEvent_t				queryUCID;
		ATTLoggedOffEvent_t					loggedOffEvent;
		ATTConsultationCallConfEvent_t		consultationCall;
		ATTConferenceCallConfEvent_t		conferenceCall;
		ATTMakeCallConfEvent_t				makeCall;
		ATTMakePredictiveCallConfEvent_t	makePredictiveCall;
		ATTTransferCallConfEvent_t			transferCall;
		ATTSetAdviceOfChargeConfEvent_t		setAdviceOfCharge;
		ATTSetAgentStateConfEvent_t			setAgentState;

		/* the following are obsolete as of protocol version 4 and should not be used */

		ATTV3ConferencedEvent_t				v3conferencedEvent;
		ATTV3DeliveredEvent_t				v3deliveredEvent;
		ATTV3EstablishedEvent_t				v3establishedEvent;
		ATTV3TransferredEvent_t				v3transferredEvent;
		ATTV3LinkStatusEvent_t				v3linkStatus;

		/* version 4 events */
		ATTV4QueryDeviceInfoConfEvent_t		v4queryDeviceInfo;
		ATTV4GetAPICapsConfEvent_t			v4getAPICaps;
		ATTV4SnapshotDeviceConfEvent_t		v4snapshotDevice;
		ATTV4ConferencedEvent_t				v4conferencedEvent;
		ATTV4DeliveredEvent_t				v4deliveredEvent;
		ATTV4EstablishedEvent_t				v4establishedEvent;
		ATTV4TransferredEvent_t				v4transferredEvent;
		ATTV4LinkStatusEvent_t				v4linkStatus;
		ATTV4RouteRequestEvent_t			v4routeRequest;
		ATTV4QueryAgentStateConfEvent_t		v4queryAgentState;
		ATTV4QueryDeviceNameConfEvent_t		v4queryDeviceName;
		ATTV4MonitorConfEvent_t		  		v4monitorStart;
		ATTV4MonitorCallConfEvent_t			v4monitorCallStart;
		ATTV4NetworkReachedEvent_t			v4networkReachedEvent;

		/*version 5 events*/
		ATTV5QueryAgentStateConfEvent_t		v5queryAgentState;
		ATTV5RouteRequestEvent_t			v5routeRequest;
		ATTV5TransferredEvent_t				v5transferredEvent;
		ATTV5ConferencedEvent_t				v5conferencedEvent;
		ATTV5ConnectionClearedEvent_t		v5connectionClearedEvent;
		ATTV5OriginatedEvent_t				v5originatedEvent;
		ATTV5EstablishedEvent_t				v5establishedEvent;
		ATTV5DeliveredEvent_t				v5deliveredEvent;


		/* events received by the G3PD */

		ATTClearConnection_t				clearConnectionReq;
		ATTConsultationCall_t				consultationCallReq;
		ATTMakeCall_t						makeCallReq;
		ATTDirectAgentCall_t				directAgentCallReq;
		ATTMakePredictiveCall_t				makePredictiveCallReq;
		ATTSupervisorAssistCall_t			supervisorAssistCallReq;
		ATTReconnectCall_t					reconnectCallReq;
		ATTSendDTMFTone_t					sendDTMFToneReq;
		ATTSingleStepConferenceCall_t       ssconferenceReq;
		ATTSelectiveListeningHold_t         slholdReq;
		ATTSelectiveListeningRetrieve_t     slretrieveReq;
		ATTSetAgentState_t					setAgentStateReq;
		ATTQueryAgentState_t				queryAgentStateReq;
		ATTQueryAcdSplit_t					queryAcdSplitReq;
		ATTQueryAgentLogin_t				queryAgentLoginReq;                          
		ATTQueryCallClassifier_t			queryCallClassifierReq;
		ATTQueryDeviceName_t				queryDeviceNameReq;
		ATTQueryStationStatus_t				queryStationStatusReq;
		ATTQueryTod_t						queryTodReq;
		ATTQueryTg_t						queryTgReq;
		ATTQueryAgentMeasurements_t			queryAgentMeasReq;
		ATTQuerySplitSkillMeasurements_t	querySplitSkillMeasReq;
		ATTQueryTrunkGroupMeasurements_t	queryTrunkGroupMeasReq;
		ATTQueryVdnMeasurements_t			queryVdnMeasReq;
		ATTMonitorFilter_t					monitorFilterReq;
		ATTMonitorStopOnCall_t				monitorStopOnCallReq;
		ATTRouteSelect_t					routeSelectReq;
		ATTSysStat_t						sysStatReq;
		ATTSetBillRate_t					setBillRateReq;
		ATTQueryUcid_t						queryUCIDReq;
		ATTSetAdviceOfCharge_t				adviceOfChargeReq;

		// private data version 4

		ATTV4SendDTMFTone_t					v4sendDTMFToneReq;
		ATTV4SetAgentState_t				v4setAgentStateReq;
		ATTV4MonitorFilter_t				v4monitorFilterReq;

		// version 5 of private data
		ATTV5SetAgentState_t				v5setAgentStateReq;
		ATTV5ClearConnection_t				v5clearConnectionReq;
		ATTV5ConsultationCall_t				v5consultationCallReq;
		ATTV5MakeCall_t						v5makeCallReq;
		ATTV5DirectAgentCall_t				v5directAgentCallReq;
		ATTV5MakePredictiveCall_t			v5makePredictiveCallReq;
		ATTV5SupervisorAssistCall_t			v5supervisorAssistCallReq;
		ATTV5ReconnectCall_t				v5reconnectCallReq;
		ATTV5RouteSelect_t					v5routeSelectReq;
    } u;
    char    heap[ATTPRIV_MAX_HEAP];
    
} ATTEvent_t;
	
/* function prototypes */

#ifdef __cplusplus
extern "C"
{
#endif  


TSAPI
attMakeVersionString (CONST_PARAM char FAR * requestedVersion, char FAR * supportedVersion);

/********* ATT Private Data Encoding Function	*******/
TSAPI
encodePrivate ( int pdunum, CONST_PARAM void FAR * pdu, ATTPrivateData_t FAR * priv );

/********* ATT Private Data Decoding Function	*******/

TSAPI
attPrivateData(	CONST_PARAM ATTPrivateData_t FAR *	privateData,
				ATTEvent_t FAR	*					eventBuffer);


/********* ATT Private Data Encoding Functions	*******/

TSAPI
attClearConnection(	ATTPrivateData_t FAR *					privateData,
					ATTDropResource_t						dropResource,
					CONST_PARAM ATTV5UserToUserInfo_t FAR *	userInfo);


TSAPI
attConsultationCall(ATTPrivateData_t FAR *					privateData,
					CONST_PARAM DeviceID_t FAR *			destRoute,
					Boolean									priorityCalling,
					CONST_PARAM ATTV5UserToUserInfo_t FAR *	userInfo);


TSAPI
attMakeCall(ATTPrivateData_t FAR *					privateData,
			CONST_PARAM DeviceID_t FAR *			destRoute,
			Boolean									priorityCalling,
			CONST_PARAM ATTV5UserToUserInfo_t	FAR *	userInfo);


TSAPI
attDirectAgentCall(	ATTPrivateData_t FAR *					privateData,
					CONST_PARAM DeviceID_t FAR *			split,
					Boolean									priorityCalling,
					CONST_PARAM ATTV5UserToUserInfo_t	FAR *	userInfo);


TSAPI
attMakePredictiveCall(	ATTPrivateData_t FAR *					privateData,
						Boolean									priorityCalling,
						short									maxRings,
						ATTAnswerTreat_t						answerTreat,
						CONST_PARAM DeviceID_t FAR *			destRoute,
						CONST_PARAM ATTV5UserToUserInfo_t FAR *	userInfo);


TSAPI
attSupervisorAssistCall(ATTPrivateData_t FAR *					privateData,
						CONST_PARAM DeviceID_t FAR *			split,
						CONST_PARAM ATTV5UserToUserInfo_t FAR *	userInfo);


TSAPI
attReconnectCall(	ATTPrivateData_t FAR *					privateData,
					ATTDropResource_t						dropResource,
					CONST_PARAM ATTV5UserToUserInfo_t	FAR *	userInfo);


TSAPI
attSendDTMFTone(ATTPrivateData_t FAR *				privateData,
				CONST_PARAM ConnectionID_t FAR *	sender,
				CONST_PARAM ATTV4ConnIDList_t FAR *	receivers,
				CONST_PARAM char FAR *				tones,
				short								toneDuration,
				short								pauseDuration);


TSAPI
attSetAgentState(	ATTPrivateData_t FAR *	privateData,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -