欢迎来到天天文库
浏览记录
ID:8970607
大小:81.50 KB
页数:5页
时间:2018-04-13
《mas二次开发说明(数据库结构)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、华为MAS二次开发说明二次开发方式说明根据用户的具体情况,有些时候需要在用户的系统上,结合MAS的功能,进行二次开发,以满足用户的需求。MAS的二次开发可以分成两种形式,如下所述:1、MAS到用户的数据库中轮询数据,然后发送出去这种方式需要用户授权MAS访问数据库,并且需要在数据库上建一张表,用户将要发送的数据写入表中,MAS到该表中轮询数据,然后发送出去。数据库表的具体结构根据用户实际情况,在开发的时候,具体商定。因为需要访问用户的数据库,所以出于对用户数据的安全性的考虑,我们一般不建议用户采用这种方式。
2、2、用户将数据写入MAS数据库中,由MAS负责发送出去这种方式是由用户将需要发送的数据,按照标准写入MAS的数据库,然后由MAS发送出去。这种方式MAS不需要访问用户的数据库,对用户来说,数据的安全性得到了保证,同时,由于不用到用户的数据库中轮询数据,节省了MAS和用户数据库服务器的资源,使二者能更好的工作。这种方式需要对MAS的数据库有所了解,下面将涉及到的MAS的表的结构,进行简单的说明,在用户进行开发时,如有不明白的地方,可以和我们联系。MAS数据库基本信息数据库类型:MSSQLServer(Msde
3、)数据库名:DB_CustomSMS用户帐号:CustomSMS登录密码:SqlMsde@InfoxEie2000数据库位置:企业MAS本地。数据库连接:MAS上是双网卡配置,在调试安装时,会配置一个内网,一个外网的IP地址。连接数据库时,最好填写MAS的内网IP地址,这样读写速度比较快。如果没有内网IP,填写外网IP地址也可以,但是读写速度会受到影响。短信发送及接收涉及的表结构说明短信发送MAS在处理短信发送时,所有的待发短信都放入表tbl_smsendtask中,由短信平台从表中轮询发送。在进行开发的时
4、候,只要把短信发送记录写入这个表中,短信平台会自动地将短信发送出去。下面对写发送记录时涉及到的表中的字段进行说明:tbl_smsendtask字段名类型长度备注SubtimeDatetime8短信提交时间,即写入数据库的时间,精确到秒。OrgaddrVarchar21源号码,发出短信的特服号,即MAS的特服号,用户收到短信后,在手机上显示得号码。DestaddrVarchar36目标号码,接收短信的号码,目前由于移动公司的限制,只能发送移动公司的网内短信。Sm_contentVarchar1600短信内容。
5、每条短信的默认长度是70个字符,超出后,短信平台自动将它分成两条以上的短信发出。SendtimeDatetime8短信发送时间,短信平台将根据这个时间将短信发送出去,如果是即时发送,要保证写入的时间小于等于MAS系统时间,如果是定时发送,则写入的时间是预定发送的时间,应该大于MAS的系统时间NeedstatereportInt4是否需要状态报告。0:不需要。1:需要。值为0时,MAS将短信发送到移动公司网关,就算是发送过程结束,通讯成功则发送成功,不关心最终用户是否真正收到短信。这种方式发送速度快,稳定。值
6、为1时,MAS将短信发送到移动公司网关,然后等待网关给回反馈信息,确认用户是否收到。这种方式发送速度慢,耗费资源。根据用户具体的需要,采用不同的方式。serviceidVarchar10短信服务编号,固定值,填写‘EIE’feetypeChar2费用类型,固定值,填写‘01’feecodeVarchar6费用代码,固定值,填写‘0’creatoridVarchar20短信提交人编号,二次开发中填写固定值即可,填写‘0000’smtypeTinyint1短信类型,普通得短信,填写0messageidVarch
7、ar36消息编号,固定值,填写‘0’destaddrtypeTinyint1目标地址类型,固定值,填写‘0’SmSendedNumInt4已发送数量,初始值,填写‘0’OperationTypeVarchar8短信业务类型标识:普通短信填写‘WAS’TaskStatusTinyint1任务状态:初始填写‘0’SendLevelTinyint1发送级别:填写‘0’SendStatetinyint1发送状态:填写‘0’sendtypeTinyint1短信类型:填写‘1’trytimesTinyint1重试次数:
8、填写‘3’下面给出一个向发送表插入数据的例子程序,代码编写使用DelphiprocedureTFrmMain.bsSkinButton16Click(Sender:TObject);varvst:string;beginvst:=FormatDateTime('yyyy-MM-ddhh:mm:ss',now());withdm.ADOQuery1dobeginclose;sql.Clear;sql.text:='
此文档下载收益归作者所有