爱博企信通开放接口参考.docx
- 文档编号:7431251
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:15
- 大小:22.87KB
爱博企信通开放接口参考.docx
《爱博企信通开放接口参考.docx》由会员分享,可在线阅读,更多相关《爱博企信通开放接口参考.docx(15页珍藏版)》请在冰豆网上搜索。
爱博企信通开放接口参考
爱博企信通开放接口参考手册
杭州爱博通信技术有限公司
版权声明
未经杭州爱博通信技术有限公司明确的书面许可,本文的任何部分不得以任何方式或手段进行复制或传播,或用于任何用途。
对于本文涉及的任何主题,本公司已用于专利、专利应用程序、商标、版权或其他知识产权。
提供本文,并不意味着向您授予这些专利、商标、版权或其他知识产权的任何许可。
这里提及的其他产品或公司是它们各自所有者的商标。
内容简介
杭州爱博通信技术有限公司致力于提供无线互联网解决方案,以及为无线运营商和企业提供无线增值业务。
短消息作为当前无线网络最基本、最成熟、最普及的数据业务,已经得到了广泛的普及。
iPiMobileOpen是提供企业短消息解决方案的强力产品。
使用iPiMobileOpen,企业的各种运作活动将不受空间的限制,企业的信息将突破传统的桌面,传送到员工和客户所能够到达的任何地方。
不仅如此,企业员工同样可以通过移动电话,随时向企业内部传递信息,从企业内部查询信息,也可以向不在办公桌旁的同事发送信息。
并且,iPiMobileOpen可以和企业现有的邮件系统(比如LotusNotes,MicrosoftExchangeServer)和企业的呼叫中心无缝结合,把现有的桌面系统扩展到任何地域空间。
本文将详细介绍iPiMobileOpen开放接口的组成、参数、调用规则等。
iPiMobileOpen简介
现在,大中型企业普遍建立了内部信息网络,同时企业给移动性较强的员工,比如市场销售、技术支持、工程建设人员,普遍配置了移动电话。
可是这并不能解决信息传递的各种问题。
员工不在办公桌旁,如何把信息及时通知给员工?
拨打他的移动电话,这个费用将是多少?
如果要通知很多员工,有没有可能去一一拨打员工的移动电话?
员工在外,他如何才能随时随地把信息传递给企业?
如何与其他同事通信?
假如您负责本企业的客户关系建设,如何能够低成本、快捷地把信息传递到您的庞大的客户群体手中?
假如您负责市场宣传,如何能够低成本、快捷地把本企业的产品信息传递到庞大的目标客户群体手中?
随着企业员工日益增多,企业内部实体的地域分布日益扩大,企业的目标客户群体日益膨胀,上述问题会日益明显。
如何使用最有效的方式进行沟通交流,进行资源的合理分配,降低管理以及市场成本是每一个企业都在不断探索的目标。
杭州爱博通信技术有限公司基于多年对短消息中心、呼叫中心、CRM系统的理解和经验,推出了iPiMobileOpen艾派企业短消息系统,能够有力地解决上述问题。
iPiMobileOpen以短消息作为信息传递的基本途径,企业的各种运作活动将不受空间的限制,企业的信息将突破传统的桌面,传送到员工和客户所能够到达的任何地方。
不仅如此,企业员工同样可以通过移动电话,随时向企业内部传递信息,从企业内部查询信息,也可以向不在办公桌旁的同事发送信息。
并且,iPiMobileOpen可以和企业现有的邮件系统(比如LotusNotes,MicrosoftExchangeServer)和企业的呼叫中心无缝结合,把现有的桌面系统扩展到任何地域空间。
关于短消息的一些基本概念
在使用iPiMobileOpen开放接口之前,请先了解一下关于短消息的一些基本概念。
⏹短消息中心:
实现短消息功能的基本设备之一,实现短消息的存储转发,调度,与无线网络的通信等重要的基本功能;
⏹源地址:
OrgAddr,短消息通过此号码发送出来的,不一定是手机号码;
⏹目的地址:
DestAddr,短消息发送给这个号码,不一定是手机号码;
⏹提交短消息:
Submit,指通过手机或其他的客户端软件把短消息发送给短消息中心;
⏹下发短消息:
Deliver,指短消息中心把短消息发送给手机或其他的客户端软件;
⏹优先级:
Prior,类似电子邮件的优先级,将影响到此短消息在短消息中心的调度级别;
⏹定时时间:
Schedule,定义短消息何时才下发到目标地址上,如果定时时间超过了系统定义的短消息的缺省有效时间,此短消息将无法发送到目标地址上。
如果定时时间传入空字符串,系统将立即下发此短消息;如果定时时间小于当前时间,不同的短消息中心可能存在不同的处理,有的当成立即下发,有的在提交短消息时就会出错;
⏹有效期:
Expire,定义短消息的有效期。
通常短消息中心都有一个系统缺省的有效期,比如48小时,这就是说,如果一条短消息提交到短消息中心,如果在48小时之内没有下发到目的地址,那么短消息中心将删除此短消息。
通过客户端软件提交短消息时,有效期如果添入空字符串,将使用系统缺省的有效期。
如果填入合法的绝对时间(注意不是相对时间,如果提交短消息的时间是“2001/9/1812:
00:
00”,你想定义短消息的有效期是24小时,就应该传入时间字符串“2001/9/1912:
00:
00”;如果有效期比提交时间早,不同的短消息中心可能存在不同的处理,有的使用系统缺省有效期,有的短消息中心会拒绝下发;
⏹短消息ID:
任何一条成功提交到短消息中心的短消息都会分配一个唯一的标识,以标记任何一条短消息。
通过这个标记,可以查询到此短消息的状态,短消息的详细内容,可以在短消息下发之前删除此短消息,可以在短消息下发之前替换此短消息;
iPiMobileOpen开放接口说明
iPiMobileOpen单从发送短消息来看,与发送E-MAIL的过程很类似,目前,系统提供的开放接口的形式是标准的Windows动态库MobileOpenSDK.dll。
下面详细讲解系统提供的开放接口。
InitConnection
这是必须调用的第一个函数,它的作用是设置连接服务器的参数,设置登录信息,并初始化一些内部的系统变量。
下面是具体的输入参数和返回值的说明:
参数名
数据类型
意义
Server
pchar
iPiMobileOpen服务器的IP地址
Port
int
IpiMobileOpen服务器的端口号
UseProxy
Bool
是否通过代理服务器连接到服务器,如果设置为0,可以随意填写下面关于Proxy的信息。
ProxyServer
Pchar
代理服务器的IP地址
ProxyUser
Pchar
能够访问代理服务器的用户名
ProxyPwd
Pchar
与上面用户名对应的密码
ProxyPort
Int
代理服务器的端口号
EnterpriseID
Int
企业的编码,这是由iPiMobileOpen的运营商为每个企业分配的企业唯一的编码
User
pchar
企业中系统用户名,这是由企业的系统管理员添加的本企业的系统用户的名称,也是唯一的。
Password
Pchar
企业中系统用户的密码
AppVersion
Pchar
通过此API开发的应用程序的版本号,不能为空。
AppName
Pchar
通过此API开发的应用程序的名称,不能为空
ServiceNO
Pchar
预留。
传入空字符串
SlaveServer
Pchar
iPiMobileOpen备用服务器的IP地址
SlavePort
int
iPiMobileOpen备用服务器的端口号
返回值
Int
⏹INIT_SUCC=1:
初始化成功;
⏹INIT_FAILED=0:
初始化失败;
⏹INIT_INVALID_APP_VERSION=-1:
非法的应用程序版本号;
⏹INIT_INVALID_APP_NAME=-2:
非法的应用程序名;
FreeConnection
这是在程序退出时必须调用的函数,它的作用是与服务器断开连接,并释放系统占用的资源,如果不调用此函数,有可能导致系统资源的不断浪费。
此函数没有输入参数。
参数名
数据类型
意义
返回值
Bool
释放成功返回1,否则为0
Connect
此函数使用InitConnection设置的参数去建立与服务器之间的连接。
此函数没有输入参数。
参数名
数据类型
意义
返回值
Int
⏹CONN_SUCC=1:
连接成功;
⏹CONN_FAILED=0:
连接失败;
⏹CONN_INVALID_SERVICE_NO=-1:
非法的ServiceNO。
合法ServiceNO的定义参见InitConnection中的描述;
如果连接失败,请检查您的系统和网络是否属于下面的情况:
⏹根本无法ping通iPiMobileOpen服务器;
⏹iPiMobileOpen服务器在指定的服务器上不存在或没有运行;
⏹由于企业内部安装了防火墙,防火墙没有开放iPiMobileOpen服务器的端口;
⏹客户端与iPiMobileOpen服务器之间是通过HTTPPOST通信,请确认防火墙是否在相应的端口上开放了POST的权限;
⏹如果通过代理服务器连接到iPiMobileOpen服务器,请确认您设置的代理服务器的用户和密码是否正确;
⏹如果通过代理服务器连接到iPiMobileOpen服务器,请确认相关的代理服务器的用户是否开放了HTTPPOST的权限;
Disconnect
此函数断开客户端和iPiMobileOpen服务器之间的连接。
在程序中,请在退出时务必执行此操作以断开与服务器之间的连接。
此函数没有输入参数。
参数名
数据类型
意义
返回值
Bool
断连成功返回1,否则为0
Login
此函数使用InitConnection中设置的企业编码、用户名和相应的密码进行用户登录,即身份检查。
只有登录合法的用户才能执行以后的各种操作。
参数名
数据类型
意义
返回值
Int
1-LOGIN_SUCC:
登录成功;
0-LOGIN_FAILED:
由于与服务器的通信、或服务器本身的错误、或根本不存在符合条件的用户;
-1-LOGIN_ENTERPRISE_PAUSED:
存在符合条件的用户,但是所属的企业已经被暂停服务;
-2-LOGIN_NO_RIGHT:
存在符合条件的用户,但是此用户已经被禁用,没有最基本的权限;
-3-LOGIN_NO_CONNECTION:
还没有建立客户端与服务端之间的连接;
AdvSubmitShortMsg
此函数是最重要的一个函数,它实现一个最重要的功能——发送短消息。
与iPiMobileOpen强大的短消息发送功能相一致,借助此函数,不需要作其他的编程工作,就可以实现对手机号码、用户名、群组的任意发送。
也可以实现超长短消息发送。
下面是具体的函数说明:
参数名
数据类型
意义
Recipients
Pchar
短消息接收者,这里可以接受的内容十分广泛,接受的内容包括:
⏹手机号码;
⏹本企业的系统用户名;
⏹本企业定义的系统群组;
⏹登录的用户的个人地址簿中的定义联系人;
⏹登录的用户的个人地址簿中的定义的群组;
⏹上述各项的任意混合;
在输入上述各项的任意组合时,需要注意各项之间以ASC字符逗号隔开,其他一切分隔符不被系统所识别。
Prior
Int
定义短消息的优先级,1为高优先级,0为普通。
定义短消息的优先级将导致短消息中心对此短消息进行优先调度。
优先级的设置为高优先级或普通,只是影响此短消息的调度,与下面的定时时间和有效期没有任何关系。
Schedule
Pchar
定义短消息的定时时间,短消息在此时间才发送到接受者的手机上。
注意此时间的格式是“YYYY/MM/DDHH:
MM:
SS”,非法的日期格式将导致发送失败。
如果想要此短消息立即发送,直接传入空字符串。
Expire
Pchar
定义短消息的有效期,如果超过了有效期,短消息还没有发送到接受者的手机上,系统将取消此短消息。
时间格式同上。
如果使用短消息中心定义的系统缺省有效期,可以直接传入空字符串。
注意有效期使用的绝对时间,而不是相对时间。
注意:
该功能暂未使用。
SMContent
Pchar
短消息的内容。
在iPiMobileOpen中,短消息内容不受140个字节的限制,用户可以发送1000个字节的短消息内容,系统会自动把长短消息拆分成多条短消息,并且在每条短消息的前部打上类似“顺序号/短消息条数”的标记。
ContentIsBig5
Int
发送内容是否为繁体中文,若为1,则系统会自动将繁体中文转为简体中文;若为0,则直接发送。
SM_ID
*ulong
返回短消息的ID,如果您作群组发送,将只能返回最后一条短消息ID。
Error
*Int
保留,暂未使用
AdvSubmitShortMsgEx
此函数是最重要的一个函数,它实现一个最重要的功能——发送短消息,扩展了是否需要消息状态报告设置。
与iPiMobileOpen强大的短消息发送功能相一致,借助此函数,不需要作其他的编程工作,就可以实现对手机号码、用户名、群组任意发送,建议使用单个手机号码或者用户名发送,以能够准确得获取该条短消息的状态。
也可以实现超长短消息发送。
下面是具体的函数说明:
参数名
数据类型
意义
Recipients
Pchar
短消息接收者,这里可以接受的内容十分广泛,接受的内容包括:
⏹手机号码;
⏹本企业的系统用户名;
⏹本企业定义的系统群组;
⏹登录的用户的个人地址簿中的定义联系人;
⏹登录的用户的个人地址簿中的定义的群组;
⏹上述各项的任意混合;
在输入上述各项的任意组合时,需要注意各项之间以ASC字符逗号隔开,其他一切分隔符不被系统所识别。
Prior
Int
定义短消息的优先级,1为高优先级,0为普通。
定义短消息的优先级将导致短消息中心对此短消息进行优先调度。
优先级的设置为高优先级或普通,只是影响此短消息的调度,与下面的定时时间和有效期没有任何关系。
Schedule
Pchar
定义短消息的定时时间,短消息在此时间才发送到接受者的手机上。
注意此时间的格式是“YYYY/MM/DDHH:
MM:
SS”,非法的日期格式将导致发送失败。
如果想要此短消息立即发送,直接传入空字符串。
Expire
Pchar
定义短消息的有效期,如果超过了有效期,短消息还没有发送到接受者的手机上,系统将取消此短消息。
时间格式同上。
如果使用短消息中心定义的系统缺省有效期,可以直接传入空字符串。
注意有效期使用的绝对时间,而不是相对时间。
注意:
该功能暂未使用。
SMContent
Pchar
短消息的内容。
在iPiMobileOpen中,短消息内容不受140个字节的限制,用户可以发送1000个字节的短消息内容,系统会自动把长短消息拆分成多条短消息,并且在每条短消息的前部打上类似“顺序号/短消息条数”的标记。
ContentIsBig5
Int
发送内容是否为繁体中文,若为1,则系统会自动将繁体中文转为简体中文;若为0,则直接发送。
SM_ID
*ulong
返回短消息的ID,如果您作群组发送,将只能返回最后一条短消息ID。
Error
*Int
保留,暂未使用
IsReportStatus
Int
是否需要状态报告。
0表示不需要,1表示需要;默认值为0。
QueryShortMsgStatus
查询已经成功提交的短消息的状态。
参数名
数据类型
意义
SM_ID
Ulong
短消息的ID
Status
*Int
⏹STATUS_SUBMIT_SUCC=0提交成功;
⏹STATUS_SUBMIT_FAIL=1提交失败;
⏹STATUS_SEND_SUCC=2发送成功;
⏹STATUS_SEND_FAIL=-2发送失败
⏹STATUS_RECVED_SUCC=3已收到;
返回值
Int
⏹QUERY_STATUS_SUCC=0查询短消息状态成功;
⏹QUERY_STATUS_ERROR=-1由于客户端和服务端通信等方面产生的错误;
⏹QUERY_STATUS_SM_NOT_EXIST=28短讯不存在
⏹QUERY_STATUS_SM_OTHER_ERR=29查询其他错误
⏹QUERY_STATUS_ADDR_ERROR=30地址错误
GetDeliverMsgCount
IntWINAPIGetDeliverMsgCount;
调用此函数来获得短消息数目,返回值如下:
N:
收到N条短消息,N为0表示没有任何短消息;
返回值<0:
获取短消息过程发生错误。
若接收短消息成功,该函数会把接收到的短消息暂时存在内存中,等待程序员调用函数GetDeliverMsg(char*PMsgs)把短消息取走。
GetDeliverMsg
IntWINAPIGetDeliverMsg(char*PMsgs);
调用此函数来获取短消息。
如果用户在InitConnection中定义了合法的ServiceNO,那么可以通过调用此函数来获取发往ServiceNO的短消息。
此函数需传入一个字符指针PMsgs,它指向存储GetDeliverMsgCount返回的指定数目的短消息的内存区域。
每条短消息的结构定义如下:
typedefTShortMsgstruct
{
ulongSM_ID;//短消息的ID,4个字节长度的无符号整数
charDestAddr[21];//短消息的目的地址,应该是等同于InitConnection设ServiceNO
charOrgAddr[21];//短消息的源地址
ucharPrior;//短消息的优先级,1个字节长度的无符号整数
charTimeStamp[20];//短消息的下发时间
charContent[1000];//短消息的内容
}
因此一条短消息的长度为:
4+21+21+1+20+1000=1067字节
函数返回值如下:
N:
接收到的短消息条数,若为0则没有短消息可接收。
程序员在调用该函数前,需先调用函数GetDeliverMsgCount确定获取到的短消息数目,并申请一片大小为1067*N的内存区,该内存区由pMsgs指向,然后再调用本函数,将pMsgs传给本函数,本函数将会把接收到的短消息顺序存储在刚才申请的内存区里。
Example:
Voidmain()
{
TshortMsg*Msg;
Char*pMsgs;
IntRecordcount=GetDeliverMsgCount;
If(RecordCount>0)
{
pMsgs=NewChar[1067*RecordCount];
GetDeliverMsg(pMsgs);
for(intI=0;I { memcpy(Msg,pMsgs+I*1067,1067); //处理*Msg; } Delete[]pMsgs; } } 函数原型声明 下面是基于C语言的函数原型声明,请参考: IntWINAPIInitConnection(LPCSTRlpszServer,IntnPort, IntbUseProxy,LPCSTRlpszProxyServer,LPCSTRlpszProxyUser,LPCSTRlpszProxyPwd,IntnProxyPort, intEnterpriseID,LPCSTRlpszUser,LPCSTRlpszPwd, LPCSTRlpszAppVersion,LPCSTRlpszAppName, LPCSTRlpszServiceNO); BOOLWINAPIFreeConnection(void); IntWINAPIConnect(void); BOOLWINAPIDisconnect(void); intWINAPILogin(void); BOOLWINAPICheckAlias(LPCSTRlpszSrcAlias,LPCSTRlpszRptAlias,LPCSTRlpszNoRptAlias,LPCSTRlpszAliasWithPre); intWINAPIAdvSubmitShortMsg(LPCSTRlpszRecipients,intnPrior,LPCSTRlpszSchedule,LPCSTRlpszExpire,LPCSTRlpszSMContent,intContentIsBig5,ULONG*upSM_ID,int*npError); intWINAPIAdvSubmitShortMsgEx(LPCSTRlpszRecipients,intnPrior,LPCSTRlpszSchedule,LPCSTRlpszExpire,LPCSTRlpszSMContent,intContentIsBig5,ULONG*upSM_ID,int*npError,intIsReportStatus); intWINAPIQueryShortMsgStatus(ULONGSM_ID,int*npStatus); IntWINAPIGetDeliverMsgCount; intWINAPIGetDeliverMsg(char*PMsgs);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 爱博企信通 开放 接口 参考
![提示](https://static.bdocx.com/images/bang_tan.gif)