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

📄 clientapi.h

📁 华为ussd开发指南,运行环境Win9X/Win2000/WinXP/Win2003
💻 H
字号:
// ClientApi.h: interface for the USSD API routines.
//
#ifndef  __CLIENT_API
#define  __CLIENT_API

#define  MAX_MSISDN_LENGTH             20
#define  MAX_SERVICECODE_LENGTH        3
#define  MAX_USSDSTRING_LENGTH         181

#define  UT_REQUEST        1     // Request.
#define  UT_NOTIFY         2     // Notify.
#define  UT_RESPONSE       3     // Response.
#define  UT_RELEASE        4     // Release.

#define  UV_UNKNOWN        0x00  // 未知.
#define  UV_PHASE_I        0x10  // Phase I (只能由移动台发起)
#define  UV_PHASE_II       0x20  // Phase II
#define  UV_PHASE_II_PLUS  0x25  // Phase II+

#define  INVALID_INSTANCE_HANDLE   ((HANDLE)-1)

struct TUssdSwitchInfo   //业务转移信息
{
    BYTE           m_bSwitchMode;
    char           m_szMsIsdn[MAX_MSISDN_LENGTH + 1];
    char           m_szServiceCode[MAX_SERVICECODE_LENGTH + 1];
    char           m_szUssdString[MAX_USSDSTRING_LENGTH + 1];
};

struct TUssdChargeIndInfo  //计费指示信息
{
    DWORD          m_dwChargeRatio;
    DWORD          m_dwChargeType;
    char           m_szChargeSource[MAX_MSISDN_LENGTH + 1];
    BYTE           m_bChargeLocation;
};

struct TUssdData
{
	DWORD  m_dwUssdCmd;	    // USSD会话操作类型(Request、Response、Abort、Error)
	BYTE   m_bUssdVersion;	// USSD会话版本号(Phase I、Phase II、Phase II+)
    BYTE   m_bCodeScheme;   //编码方案
	DWORD  m_dwErrorCode;	// USSD错误代码(仅对UssdAbort和UssdError)
	char   m_szMsIsdn[MAX_MSISDN_LENGTH + 1];	        // 移动台号码.
	char   m_szServiceCode[MAX_SERVICECODE_LENGTH + 1];	// 业务码.
	char   m_szUssdString[MAX_USSDSTRING_LENGTH + 1];	// USSD串内容。
	DWORD  m_dwUssdAppParam;	                        // USSD业务应用程序自定义的参数。
};

//-----------------------------------------------------------------------------
//                     CallBack Functions For GetMessage
//------------------------------------------------------------------------------
typedef	int (*LPONUSSDREQUEST)(HANDLE hLoginInstance, HANDLE hUssdDialog,
			         TUssdData UssdData, DWORD *pdwUssdAppParam);
typedef	int (*LPONUSSDRESPONSE)(HANDLE hLoginInstance, HANDLE hUssdDialog, 
					 char szUssdString[], DWORD dwUssdAppParam);
typedef	int (*LPONUSSDABORT)(HANDLE hLoginInstance, HANDLE hUssdDialog, 
					 DWORD dwErrorCode, DWORD dwUssdAppParam);
typedef	int (*LPONUSSDERROR)(HANDLE hLoginInstance, HANDLE hUssdDialog, 
					 DWORD dwErrorCode, DWORD dwUssdAppParam);
typedef	int (*LPONUSSDTIMEOUT)(HANDLE hLoginInstance, HANDLE hUssdDialog, 
					 DWORD dwUssdAppParam);

struct TUssdCallbacks
{
    LPONUSSDREQUEST   m_pOnUssdRequest;
    LPONUSSDRESPONSE  m_pOnUssdResponse;
    LPONUSSDABORT     m_pOnUssdAbort;
    LPONUSSDERROR     m_pOnUssdError;
    LPONUSSDTIMEOUT   m_pOnUssdTimeOut;
};
 
extern "C" 
{
int    PASCAL EXPORT UssdInit(char szServerAddress[],int nServicePort);
int    PASCAL EXPORT UssdExit();
HANDLE PASCAL EXPORT UssdLogin(char szAccountName[],char szPassword[],int *pnErrorCode,BOOL fAutoConnect,DWORD dwTimeOut);
BOOL   PASCAL EXPORT UssdLogout(HANDLE hLoginInstance,int *pnErrorCode);
BOOL   PASCAL EXPORT UssdIsConnectionOK(HANDLE hLoginInstance);
void   PASCAL EXPORT UssdGetErrorString(int nErrorCode,char *pszErrorString);
BOOL   PASCAL EXPORT UssdReloadErrorInfoLib();
HANDLE PASCAL EXPORT UssdLocalOpen(HANDLE hLoginInstance, DWORD dwUssdAppParam, DWORD *pdwErrorCode);
BOOL   PASCAL EXPORT UssdLocalClose(HANDLE hUssdDialog);
int    PASCAL EXPORT UssdSendRequest(HANDLE hUssdDialog, TUssdData UssdData);
int    PASCAL EXPORT UssdSendNotify(HANDLE hUssdDialog, TUssdData UssdData);
int    PASCAL EXPORT UssdSendResponse(HANDLE hUssdDialog, TUssdData UssdData);
int    PASCAL EXPORT UssdSendRelease(HANDLE hUssdDialog);
int    PASCAL EXPORT UssdSendAbort(HANDLE hUssdDialog,  DWORD dwErrorCode);
int    PASCAL EXPORT UssdSendError(HANDLE hUssdDialog,  DWORD dwErrorCode);
int    PASCAL EXPORT UssdSendSwitch(HANDLE hUssdDialog, TUssdSwitchInfo SwitchInfo);
int    PASCAL EXPORT UssdSendChargeInd(HANDLE hUssdDialog, TUssdChargeIndInfo ChargeIndInfo);
int    PASCAL EXPORT RegisterUssdCallbackFunctions(TUssdCallbacks CallbackFuncs);
};

#endif   // __CLIENT_API defined.

⌨️ 快捷键说明

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