查看单个帖子
旧 2010-10-09   #2 (permalink)
admin
论坛管理员
 
admin 的头像
 
注册日期: 2009-06-30
帖子: 861
admin 的声望功能已被禁用
默认 金笛短信组件开发接口说明

金笛短信组件开发接口说明

概述:短信组件接口为COM组件形式,可以工作在Window 98/Me/NT4/2000/ XP/2003等各种版本的Windows操作系统中,可以直接在VB6VC6Delphi.NET(VC.NETC#VB.NETJ#)Lotus NotesExchange ServerVJ6C++ BuilderPowerBuilderVBScriptJavaScriptJScript等开发语言和环境中调用。
一、 COM组件接口描述(适用于VBVBScriptJavaScriptLotusScript)

1、 属性
1.1 ReadAutoDelete As Boolean
读取短信(执行ReadSimMsg操作)后是否自动删除SIM卡中的记录标志,读写,系统缺省为False
:如果没有说明在什么情况下可调用,那就意味着任何时候都可调用,下同
1.2 CommunicationPara As EMobileCommPara
通讯参数如波特率、数据位、停止位等,只读
EMobileCommPara定义如下:
COMM_BAUDRATE2400=0,数字2400表示波特率
COMM_BAUDRATE4800=1
COMM_BAUDRATE9600=29600,n,8,19600波特率、无校验位、8位数据位、1位停止位;此值最常用,系统缺省
COMM_BAUDRATE19200=3
COMM_BAUDRATE38400=4
COMM_BAUDRATE57600=5
COMM_BAUDRATE115200=6
1.3 CommunictionPort As EMobileCommPort
通讯端口,只读,EMobileCommPort定义如下:
INVALID_COMMPORT=0 //无效端口,系统缺省
COM1_COMMPORT=1 //对应COM1端口
COM2_COMMPORT=2 //对应COM2端口
……
COM32_COMMPORT=32 //对应COM32端口
通过驱动可将红外或USB口虚拟成串口,但通过红外收发速度较低,计算机缺省只提供几个串口,但可通过串口扩充卡实现更多串口。
1.4 EnableLoadSend As Boolean
连接短信猫后是否自动发送上次退出时未发送短信的标记,读写,系统缺省为False,注意:仅在连接短信猫前设置有效,只需要设置一次即可,不需要每次连接前设置一次,针对多个短信猫并联时同时有效
1.5 EnableLog As Boolean
是否启用日志标记,系统缺省为False,读写
日志将自动记录短信猫的相关操作,有效掌握其工作状态
1.6 EncodeMode As EMobileSendEncode
发送短信编码方式,读写。EMobileSendEncode定义如下
PDU_SENDENCODE=1,最常用,基本上手机都支持,系统缺省
TEXT_SENDENCODE=2,某些手机不支持,不推荐使用
UNICODE_SENDENCODE=4,通过CDMA短信猫发送时采用,为组件将来升级预留
ENCRYPT_SENDENCODE=128此方式可与前面的几种联合使用,为本公司其它产品而预留,OEM开发商不能使用
在发送短信前设置有效
1.7 ModemVersion As Variant
短信猫唯一序列号,只读,连接短信猫成功后调用有效
1.8 ModemModel As Variant
短信猫型号,只读,连接短信猫成功后调用有效
1.9 ModemName As Variant
短信猫名称,只读,连接短信猫成功后调用有效
1.10 ModemStatus As EMobileModemStatus
短信猫状态,只读。EMobileModemStatus定义如下:
UNINIT_STATUS=0 //没有初始化
OPENING_STATUS=1 //正在打开,为无阻塞模式连接时返回的状态
OK_STATUS=2 //正常状态,可以执行收发短信等操作
OTHERUSED_STATUS=3 //已经被打开使用,不能再打开
SENDBUSY_STATUS=4 //正在发送短信
RECBUSY_STATUS=5 //正在接收短信
OTHERBUSY_STATUS=6 //设备忙,正在执行其它操作
ONREST_STATUS=7 //出于休息期,短信猫收发一定数量的短信后需要休息一定时间
1.11 ModemTime As Date
短信猫系统时间,读写,连接短信猫成功后调用有效
1.12 EnableSendFunction As Boolean
短信猫是否启用发送标志,读写。缺省为真,设为假将只接收短信,用于大量查询业务情况以有效提高查询反馈速度。
1.13 ModemVersion As Variant
短信猫版本,连接短信猫成功后有效
1.14 ModemType As EMobileModemType
短信猫类型,读,对于标准的短信猫不用设置,内部会自动判别,连接短信猫前设置有效
EMobileModemType定义如下:
UNKNOWN_MODEMTYPE=0, //不确定的类型
WAVECOM_GSM_MODEMTYPE=1, //WAVECOM公司产品
SONYERICSSON_GSM_MODEMTYPE=2,//索尼/爱立信产品,系统缺省
NOKIA_GSM_MODEMTYPE=3, //诺基亚公司产品
SIEMENS_GSM_MODEMTYPE=4, //西门子公司产品
CDMA_MODEMTYPE=5, //CDMA
GPRS_MODEMTYPE=11 //GPRS
1.15 SimTelCode As Variant
短信猫中插入的SIM卡对应的电话号码,需要首先写入才可读取,设置手机号码可以更好的发送短信,有超过一个短信猫同时工作时推荐分别采用一个移动和联通的SIM卡,系统可以根据此号码分类发送到移动和联通网络的手机,这样可以避免短信互通时可能出现的故障,读写
1.16 Timeouts As Integer
操作(比如执行读取短信猫IMEI、型号、名称等)超时时间,以秒为单位,系统缺省为15秒,不能低于5秒,设置后对以后的操作有效,读写
1.17 WorkMode As EMobileWorkMode
短信猫工作模式,读写。EMobileWorkMode定义如下:
SYNCHRONOUS_WORKMODE=1 //阻塞模式(同步)
ASYNCHRONOUS_WORKMODE=2 //无阻塞模式(异步)
系统缺省为阻塞模式,以上两种模式互斥使用,连接短信猫前设置对连接操作有效,连接后设置对发送短信操作有效,如果要完成定时发送短信操作可以在发送前改为阻塞模式发送即可实现。
1.18 SendFailedTry As Integer
发送失败时尝试的次数,缺省为6次。读写,只对无阻塞模式发送的短信有效,只需要设置一次即可,不需要每次连接都设置,针对多个短信猫并联时同时有效
1.19 KeepHistoryDay As Integer
发送历史记录缓存的天数,系统缺省为一个月(30),不能低于一个星期,此值对于日志的保留时间同样有效,读写。只需要设置一次即可,不需要每次连接都设置,针对多个短信猫并联时同时有效
1.20 LogFilePath As Variant
日志及发送缓冲数据保存路径,读写。只需要设置一次即可,组件自动记录到注册表中,针对多个短信猫并联时同时有效。注意,如果设置的路径在NTFS分区下面,而组件在脚本环境中使用,需要设置此目录脚本用户写的权限
1.21 CountryCode As Variant
国别代码,缺省设置了“86”,发送短信时使用。
1.22 ServiceStartTime As Variant
短信猫发送短信的开始时间,如果不设置表示全天都可以发送,格式如下:8/00/00 表示早上8点开始服务
1.23 ServiceEndTime As Variant
短信猫发送短信的结束时间,如果不设置表示全天都可以发送,格式如下:18/00/00 表示晚上6点停止服务
1.24 ModemSignal As Variant
短信猫当前工作的信号强度。返回值为整型(0-31),数字越大,表示信号越强,但如果为99表示无网络服务,将无法完成收发操作,请调整天线位置自动信号强度足够好,连接短信猫成功后有效
2、 方法
2.1 CreateUniqueID () As Variant
生成标识短信的唯一ID号,用于发送短信、查询短信状态及发送短信结果事件通知中
2.2 SetDbInterface (eParaType As EMobileParaType,varDbInfo As Variant) As Boolean
设置短信数据库接口相关参数,EMobileParaType指定varDbInfo具体的类型,定义如下:
BSTR_PARATYPE=8, //XML格式字符串类型
DISPATCH_PARATYPE=9, //XML文档接口指针
FILE_PARATYPE=10 //XML文件路径
varDbInfo对应的XML格式描述由其它文档说明,返回是否成功标志,如果设置成功,连接短信猫正常后就将开始定时查询数据库来收发短信
2.3 ConnectModem ( eCommPort As EMobileCommPort, [ eCommPara As EMobileCommPara = COMM_BAUDRATE9600] ) As EMobileModemStatus
给定通讯短信端口连接短信猫,连接参数eCommPara可选,返回短信猫状态,对于无阻塞模式可能返回UNINIT_STATUS(说明根本无法打开端口,可能是指定端口没有连接短信猫或已经被其它软件如超级终端等打开)OPENING_STATUS(正在打开端口进行初始化工作)状态,OPENING_STATUS为正常状态
2.4 SetSMCA (bstrSMCA As String, [bSimFlag As Boolean = True])
设置短信服务中心号码,比如移动的北京地区为8613800100500,初始化短信猫时只需要设置一次即可,不需要每次连接都设置,bSimFlag为真表示设置到SIM卡,为假设置到内存,可选参数,缺省为真,设置到SIM卡操作的同时将自动设置到内存中,发送短信用内存中记录的短信服务中心号码,连接短信猫成功后调用有效
2.5 GetSMCA ([bSimFlag As Boolean = False])
得到短信服务中心号码,bSimFlag为真获取SIM卡中保存的短信中心号码,连接短信猫时自动将SIM卡中的短信服务中心号码设置到内存中,缺省为假,连接短信猫成功后调用有效
2.6 GetCallTransfer ()As Variant
获得呼叫转移设置,连接短信猫成功后调用有效
返回以XML格式描述的转移设置
2.7 SetCallTransfer (varCallTransfer As Variant) As Boolean
设置呼叫转移,需要相应的SIM卡支持,比如中国移动的全球通(我们推荐使用),而中国移动的神州行SIM卡则不支持,返回成功与否标志,连接短信猫成功后调用有效
varCallTransfer:为呼叫转移的XML格式描述文档,我们推荐首先把SIM卡插入普通的手机来设置呼叫转移,然后再插入短信猫中,这样设置同样有效,而且更直接些
2.8 GetPhoneBookCount (eStoragePosition As EMobileStoragePosition, pvUsed As Variant) As Variant
获取指定存储位置电话簙已用及存储空间,EMobileStoragePosition定义如下:
SIMCARD_STORAGEPOSITION=1, //SIM卡中的电话簙
MOBILE_STORAGEPOSITION=2, //手机或短信猫电话簙
MSISDN_STORAGEPOSITION=4, //MSISDN,唯一标识
MISSING_STORAGEPOSITION=8, //未接来电
RECEIVEDCALL_STORAGEPOSITION=16, //已接来电
DAILEDCALL_STORAGEPOSITION=32 //已拨电话
pvUsed:标识返回已用数量
方法调用返回总的存储空间数量
连接短信猫成功后调用有效,此方法还未实现
2.9 ReadPhoneBook (eStoragePosition As EMobileStoragePosition, sPosNumber As Integer, pvTelName As Variant) As Variant
读取指定存储位置的电话簙记录
sPosNumber:指定记录位置
pvTelName:返回电话号码对应的名称
方法调用返回电话号码字符串
连接短信猫成功后调用有效,此方法还未实现
2.10 WritePhoneBook (eStoragePosition As EMobileStoragePosition, sPosNumber As Integer, bstrTelName As String, bstrTelNumber As String) As Boolean
写入指定存储位置的电话簙记录
sPosNumber:指定记录位置
bstrTelName:指定记录名称
bstrTelNumber:指定电话号码字符串
方法调用返回成功与否标志
连接短信猫成功后调用有效,此方法还未实现
2.11 AddPhoneBookItem (eStoragePosition As EMobileStoragePosition, bstrTelName As String, bstrTelNumber As String) As Boolean
向指定存储位置电话簙添加新记录
bstrTelName:指定记录名称
bstrTelNumber:指定记录电话号码
方法调用返回是否成功标志
连接短信猫成功后调用有效,此方法还未实现
2.12 DeletePhoneBook (eStoragePosition As EMobileStoragePosition, sPosNumber As Integer) As Boolean
删除指定存储位置的电话记录
sPosNumber:指定记录位置
方法返回是否成功标志
连接短信猫成功后有效,此方法还未实现
2.13 SendMsg (bstrMsgID As String, bstrDestNumber As String, bstrMsgContent As String, SplitCount As Variant, [eMsgType As EMobileMsgType = TEXTSMS_MSGTYPE], [bstrSignName As String], [sSendPriority As Integer = 16], [bStatusReport As Boolean = False], [bEnglish As Boolean = False]) As EmobileMsgStatus
发送单个短信,参数说明:
bstrMsgID:消息ID号,由GetMsgID生成
bstrDestNumber:发送目标手机号,请在手机号前加国际代码,如大陆的手机号前要加86
bstrMsgContent:发送内容,发送中文短信超过70个字符或全英文短信超过140个字符的内容将自动拆分发送
SplitCount:返回长短信拆分发送的条数,没有拆分的返回1
eMsgType:发送短信的类别,缺省为普通文字短信,定义如下:
TEXTSMS_MSGTYPE=0 //普通文字短信
FLASHSMS_MSGTYPE=1 //闪烁短信,仅部分手机支持
MINGTISMS_MSGTYPE=2 //免提短信,仅部分手机支持
EMS_MSGTYPE=3 //EMS彩信
MMS_MSGTYPE=4 //MMS多媒体短信
此参数可选,缺省为普通文字短信
bstrSignName:短信署名,比如您发送“祝您生日快乐!”的内容,署名为小张,则对方收到的短信显示为“[小张]:祝您生日快乐!”,此参数可选,缺省不采用署名
sSendPriority:发送优先级,类似于线程优先级,从132,数值大的优先发送,用于无阻塞模式发送短信;此外,阻塞模式此参数无效,优先级始终最高;此参数可选,缺省16
bStatusReport:是否需要状态报告,如报告是否成功发送,运营商短信中心是否成功传递,但需要等待更多的时间才能完成发送操作,此参数可选,缺省不需要状态报告
bEnglish:是否发送纯英文的短信,一条纯英文短信一次可以发送140个字符,此参数可选,缺省为非英文,发送非英文短信的话接收方手机必须支持相应的语言才能浏览短信内容,否则显示乱码
此方法返回短信发送状态,在发送前设置工作模式为ASYNCHRONOUS_WORKMODE,则执行无阻塞模式短信发送,调用立即返回,后台进行发送操作,发送结果以事件的形式通知,否则执行阻塞模式发送,直到完成发送操作才返回,推荐采用无阻塞模式发送,因为正常情况发送一条短信需要3秒左右的时间,连接短信猫成功后调用有效,对于阻塞模式群发或发送有拆分情况的短信,返回最后一条短信的发送状态,其它短信的发送状态由事件的形式通知。
返回值EMobileMsgStatus定义如下:
UNKNOWN_MSGSTATUS=0 //未知状态
WAITSEND_MSGSTATUS=1, //添加到发送队列中等待发送
SENDING_MSGSTATUS=2, //正在发送
TIMESOUT_MSGSTATUS=3, //发送超时
PARTSENDOK_MSGSTATUS=4, //部分发送成功
SENTOK_MSGSTATUS=5, //发送成功
RECEIVED_MSGSTATUS=6, //已经收到
RETURNCONFIG_MSGSTATUS=7, //回复确认
STOPSEND_MSGSTATUS=11, //被停止发送
FAILED_MSGSTATUS=12, //发送失败
FAILEDOVER_MSGSTATUS=13, //指定次数都发送失败
PARAERR_MSGSTATUS=14, //参数错误导致发送失败
2.14 SendGroupMsg (bstrMsgID As String, arrDestNumber As Variant, bstrMsgContent As String, [bstrSignName As String], [sSendPriority As Integer = 16], [bStatusReport As Boolean = False], [bEnglish As Boolean = False]) As Variant
群发短信,参数与SendMsg类似,但
arrDestNumber:为发送目标手机号数组,可以是以分号“;”分割的字符串(VT_BSTR),如:8613911713597;8613601146927,或者是字符串数组(VT_ARRAY | VT_BSTR),也可以是变体型数组(VT_ARRAY | VT_VARIANT),请参考调用范例的使用方法
返回值为长短信拆分发送的条数,没有拆分的返回1
而且仅支持发送普通文字短信,连接短信猫成功后调用有效
2.15 GetSimMsgCount (pvUsed As Variant) As Variant
读取SIM卡中短信数量,pvUsed为已经使用的,调用方法返回SIM卡整个存储空间大小,连接短信猫成功后调用有效
2.16 GetWaitSend ([bAllFlag As Boolean = False) As Variant
得到发送队列中等待发送的短信数量,bAllFlag为真表示获取所有端口的等待发送短信数量,为假获取本端口的等待发送短信数量,如果仅获得本端口则连接短信猫成功后调用有效,获取所有短信可以在连接前调用
2.17 GetNewMsgCount (pvPosition As Variant) As Variant
获取新短信保存的位置及数量,主要用于无法捕获组件事件通知的情况,如用于VBScript脚本环境
pvPosition:新短信位置,为字符串,如2;5;8,表示SIM258存储位置为新收到的短信
方法调用返回新短信的数量,如果没有新的返回0
2.18 ReadSimMsg (sPosIndex As Integer, pvFromNumber As Variant, pvArrivedTime As Variant, pvMsgContent As Variant, pvMsgType As Variant) As Boolean
读取SIM卡中指定位置的短信,参数说明:
sPosIndex:指定在SIM卡中的位置序号,从1开始,不能超过总的存储空间数量,需要注意的是在SIM卡中短信的需要不一定是连续的,如13位置有短信,2位置可能是空的
pvFromNumber:表示短信来源手机号(如果为草稿箱短信,则为发送目标手机号)
pvArrivedTime:表示到达时间(如果为草稿箱短信,时间无效)
pvMsgContent:表示短信内容
pvMsgType:表示短信类型
返回读取成功与否标记,连接短信猫成功后调用有效
2.19 DeleteSimMsg (sPosIndex As Integer) As Boolean
删除SIM卡中指定位置的短信,返回删除结果,新收到短信处理完成后推荐及时删除,否则SIM卡满后将无法在接收新的短信,连接短信猫成功后有效
sPosIndex指定删除短信在SIM卡中的保存位置
2.20 ClearSim () As Boolean
清空SIM卡中所有的短信,为接收新短信做准备,比较耗时,返回操作成功与否标记,连接短信猫成功后调用有效
2.21 GetMsgSendStatus (bsrtMsgID As String, bstrDestNumber As String, sSplitIndex As Integer,pvSentCommPort As Variant, pvStatusTime As Variant,pvErrCode As Variant) As EMobileMsgStatus
获得指定短信ID、发送目标手机号及拆分序号的短信发送状态,返回具体执行发送的端口、状态时间、发送失败时的错误码及对应发送状态
bsrtMsgID:指定短信ID
bstrDestNumber:指定发送目标号码
sSplitNum:指定拆分短信的序号
pvSentCommPort:执行发送的端口
pvStatusTime:返回其对应状态的时间
pvErrCode:发送失败时的错误码
eMsgStatus:返回其发送状态
说明:在组件内部会自动缓存指定天数的发送记录,超过天数的发送记录会自动清除,清除后的记录将无法再得到状态。
2.22 GetSendCount (bstrMsgID As String, pvSplitCount As Variant, pvSendToCount As Variant) As Variant
获得指定ID短信发送时拆分的条数、发送目标的个数,并返回已经成功发送总的条数
bstrMsgID:指定短信ID
pvSplitCount:返回发送时拆分的条数
pvSendToCount:返回发送目标的个数
2.23 GetMsgSendDetail (bstrMsgID As String, eParaType As EMobileParaType , bstrXmlFile As String) As Variant
获得指定短信ID的详细发送记录,返回为XML格式描述的形式
eParaType:指定得到的类型
bstrXmlFile:指定保存到XML文件的路径
2.24 DeleteSendMsg (bsrtMsgID As String) As Boolean
取消并删除消息发送队列及历史记录中指定ID的短信
bsrtMsgID:指定短信ID
调用返回成功与否标志
2.25 DisConnectModem ()As Variant
断开与短信猫的连接,释放相关资源,返回本端口等待发送短信数量,连接短信猫成功后调用有效
2.26 GetLogInfo (sWithinDay As Integer = 7)As Variant
得到指定天数以内的日志信息,为XML格式形式,由其它文档描述,连接短信猫成功后调用表示清除本端口日志信息,连接短信猫前调用表示清除所有端口日志记录
2.27 ClearLogInfo (sPreDay As Integer=7)
清空指定天数以前的日志信息,连接短信猫成功后调用表示清除本端口日志信息,连接短信猫前调用表示清除所有端口日志记录
2.28 GetLastError (pvErrDescription As Variant) As EMobileErrorType
pvErrDescription为最近一次操作错误的文字描述信息,并返回错误状态类型eErrorTypeEMobileErrorType定义如下:
OK_ERRTYPE=0, //正常
PARAINVALID_ERRTYPE=1, //参数无效
NOTSUPPORT_ERRTYPE=2, //还未实现
UNABLELOG_ERRTYPE=3, //没有启用日志功能
UNINIT_ERRTYPE=4, //短信猫还没有初始化
OPENPORTERR_ERRTYPE=5, //打开串口失败,可能是已经被其它工具打开或不存在指定的端口
NONSUPPORTAT_ERRTYPE=6, //连接的设备不支持AT指令
NOSIMCARD_ERRTYPE=7, //短信猫中没有插入SIM
NOMEMORY_ERRTYPE=8, //系统内存资源不足
NOTSETSMCA_ERRTYPE=9, //没有设置短信服务中心号码,无法执行发送短信操作
ADDQUEUEERR_ERRTYPE =10, //添加到队列失败,可能是相同ID的短信已经发送过
OVERCOUNT_ERRTYPE =11, //因为没有正确授权使用,连接一次最多发送18条短信
TIMEOUTS_ERRTYPE=12 //操作超时
WRITECOMMERR_ERRTYPE=13 //写通讯端口失败
RECORDNOTEXIST_ERRTYPE=14 //记录不存在
NETWORK_RP_ERRTYPE=30 //网络应答错误
NETWORK_TP_ERRTYPE=31 //网络传输错误
SMS_SERVICE_ERRTYPE=32 //短信服务错误
NOT_SUPPORT_ERRTYPE=33 //请求不支持错误
SMS_PDUPARAMETER_ERRTYPE=34 //PDU参数错误
SIM_NOTINSERTED_ERRTYPE=35 //SIM卡没有插入错误
SIM_PINREQUIRED_ERRTYPE=36 //SIM卡需要输入密码错误
SIM_COMMUNICATION_ERRTYPE=37 //SIM卡通讯错误错误
SEND_MEMORYFAIL_ERRTYPE=38 //内存错误错误
INVALID_INDEX_ERRTYPE=39 //无效索引错误
MEMORY_FULL_ERRTYPE=40 //内存已满错误
NETWORK_SERVICE_ERRTYPE=41 //网络服务错误
NETWORK_TIMEOUT_ERRTYPE=42 //网络超时错误
UNKNOWN_ERRTYPE=60 //未知错误
3、 事件
3.1 ConnectModemResult (eModemStatus As EMobileModemStatus)
连接短信猫结果通知
eModemStatus为连接短信猫后的当前状态
3.2 ModemReceivedMsg (eMsgType As EMobileMsgType, sSimPosition As Integer, bstrFromNumber As String, bstrContent As String, dtSentTime As Date)
短信猫收到消息通知
eMsgType:表示短信类型
sSimPosition:表示短信在SIM卡中的保存位置
bstrFromNumber:表示发信手机号码
bstrContent:表示短信内容
dtSentTime:表示对方发送的时间
3.3 ModemReceivedCall (bstrFromNumber As String)
短信猫收到呼入来电事件通知
bstrFromNumber表示来电号码
3.4 SentMsgStatus (bstrMsgID As String, bstrDestNumber As String, bstrContent As String, sSplitIndex As Integer, eMsgStatus As EMobileMsgStatus, dtStatusTime As Date)
短信猫发送短信结果事件通知,注意:对于阻塞模式群发或发送拆分短信同样有效
bstrMsgID:表示短信ID标识,对应发送短信的ID
bstrDestNumber:表示发送目标手机号
bstrContent:发送的短信内容
sSplitIndex:为短信拆分后的序号,发送的短信不需要拆分的话为1,如果拆分,相应会有123等数字来分别标识拆分的短信状态
eMsgStatus:表示短信发送的最终状态
dtStatusTime:表示此状态对应的时间
3.5 SimCardNoMemory ()
短信猫SIM卡存储空间已满通知,如果收到此事件,需要尽快把SIM卡中的短信内容取到其它地方保存或清空,否则将无法再接收新的短信
3.6 SimCardNoMoney ()
短信猫中SIM卡余额不足事件通知,但收到此事件通知时短信猫将无法再执行发送短信请求,请及时交费或为SIM卡充值
3.7 ModemException (eExceptionType As EMobileExceptionType)
短信猫异常通知,比如掉电、模块耗损导致无法正常工作等

4、 在脚本语言中调用说明
4.1 VBScript (LotusScriptNOTES开发语言,类似)
用脚本创建对象:CreateObject("XTTSmsCom.ModemService")
或者用HTML中的<OBJECT>标记在网页上创建一个IDSMSService的对象:
<OBJECT classid= clsid:77889F2E-B15C-4482-B7D3-0599EEBFC1E8 id=SMSService></OBJECT>
VBScript脚本中无法捕获组件事件,所以推荐使用阻塞模式连接及阻塞模式发送,也可以先用可以捕获事件的语言进行再包装后用于此环境中。
4. 2 JavaScript
在网页中用JavaScript来捕获连接短信猫事件演示:
创建名为SMSService的对象
<OBJECT classid="clsid:77889F2E-B15C-4482-B7D3-0599EEBFC1E8" id="SMSService" ></OBJECT>
将事件定向到SMSService _ConnectResult函数
  <SCRIPT FOR="SMSService" EVENT= "ConnectModemResult (eModemStatus)">
SMSService _ ConnectModemResult (eModemStatus)  </SCRIPT>
连接短信猫事件的处理函数
  <SCRIPT>
  function SMSService _ ConnectModemResult (eModemStatus)
  {
//根据eModemStatus返回值进行相应的处理
}
</SCRIPT>
__________________

让世界倾听我们的笛声
admin 当前离线   回复时引用此帖