Mas短信开发增值服务平台建设

中国移动MAS机的知识本人不是很熟悉,只知道如何使用它和.net开发链接起来做短信发布,下面是我在网上看到的一些介绍:

    移动代理服务器 Mobile Agent Server(MAS)

他的功能很多,下面就简单介绍一下自己一个月来对他的使用。主要是在短信发送接收方面的一些内容

   Mas机的数据库我们可以看一下,里面有很多的表,我们做移动增值开发的时候,真正用到的只有两张表:tbl_SMSendTask和tbl_SMReceived

   Tbl_SMSendTask表:这是短信发出任务表,添加到这个表里面得内容,如果条件符合,或者说对应的插入信息是真实的话,那么mas机就会立即发出该条信息,发出成功后这条记录就会自动删除。

  下面简单介绍一下,该表的字段名称以及作用:

字段名

说明

ID

主键,任务的ID号,自动增加字段

CreatorID

创建者ID

TaskName

任务名称
当SMType为3或4时,表示企业代码 spId

SmSendedNum

该任务的已经发送的数量,初始值为0
暂停的实现也需要这里支持。

OperationType

标识是移动办公:WAS,业务定制:SPS

SuboperationType

对应移动办公WAS中的常用业务的类型,取值50-99;sps中配置的业务,取值0-49。便于扩展定制化的业务类型。和小类别的统计

SendType

1:表示普通短信2:表示群发短信3:表示点点通4:表示常用业务5:表示wap-push短信

OrgAddr

主叫标识号码,源地址

DestAddr

1.目的地址手机号码.当为SPS业务和WAS的单发任务时为手机号码用空隔分隔;2.当目的地址为文件时,目前为一条消息一个文件号码,不支持多个文件;3.当SMType为3或4时,表示使用用户标识destUserId

SM_Content

消息内容,当SMType为3或4时,表示计费用户类型 feeUserId

SendTime

短信要求下发时间

NeedStateReport

是否需要状态报告;0:不要状态报告;1:要状态报告

ServiceID

业务代码

FeeType

该短信的资费类型

FeeCode

资费代码(以分为单位)

MsgID

从网关返回的消息ID,用于匹状态报告

SMType

默认值为0
表明该短信的类型
0:普通短信1:点播短信3 反向定购消息4 反向取消定购消息5 正向消息应答

MessageID

默认值为'0'
SMType为0,本字段为0
SMType为1,本字段为LindID
SMType为2,本字段为TransactionID(CMPP3的版本支持)
当SMType为3或4时,表示事务ID号 transactionID

DestAddrType

默认值为0
标识DestAddr是真实的手机号码还是伪码
0:真实的手机号码
1:伪码(CMPP3的版本支持)

SubTime

消息被提交到待发表中的时间

TaskStatus

该任务是否已经被取出,没有被取出为:0,取出后为:1

SendLevel

普通发送级别,0级最高,依次类推,现在分为最高 0,高 1,中 2,低 3,四级。Sps的都为0级,was的使用后面三级。

SendState

短信发送任务的状态分为:发送 0,暂停 1,取消 3,暂停转发送,如果该任务已经被加载到内存即(TaskStatus=1)设为2,如果还没有加载到内存即(TaskStatus=0),设为0。由取消状态转为发送时需要将 TaskStatus设为0,发送状态为0,对已经加载到内存的任务,要同时删除Tbl_SMSendState表中该任务的相关记录。

TryTimes

重发次数

Count

任务的总条数

SuccessID

任务发送进度,表示发送到任务的第几条短信

Reserve1

保留字段

Reserve2

保留字段

看完这些字段作用之后,还是有很多不明白的地方,那么看一下下面的这个插入实例:

insert into tbl_SMSendTask  (CreatorID,ServiceID,OperationType,sm_Content,OrgAddr,DestAddr,SendType,TaskStatus,FeeType,FeeCode,MsgID)

values('0000','MSC2110505','WAS', '对不起,该投票已结束',' 10657307023210170','1354444****','4','0','01','0','0')

上述使用的这条插入语句中字段都为必须添加的字段,不然的话mas机就不会发送这条短信。

ServiceID是mas机的编码,每个mas机都有一个名字,就像计算机名称一样。

OrgAddr:主叫的号码地址,这是send表,那么这个主叫地址就是mas机的地址,这个地址很长,大致为:10657307023210170。这个号码的前十二位是每个mas机启用后中国移动给的固定的标示。就像mas机的身份证一样的,利用他中国移动可以追踪到具体的硬件位置。这条记录进到mas数据库里面之后,如果符合条件,mas机就会与中国移动通信从而将短信内容发布到对应的手机号码。

上面的那条插入语句,可以实现向中国移动用户1354444****发送短信息,用户收到的短信息显示的号码就是10657307023210170。

另外一张表就是接受短信的表tbl_SMReceived

这张表是用来接收移动用户给本Mas机回复的短信息。

这张表也是很重要的表,我们做增值开发的人员可以从这张表中读取我们想要的信息,进行统计分析等,得到我们想要的内容。

这张表中的字段中存有的我们比较关心的东西有:回复短信的电话号码,回复内容,回复时间等。

总结

    介绍到这儿,我们应该可以了解到,移动增值服务系统的一些开发思路了吧。其实一开始接触mas系统开发的时候,我最无从下手的就是不明白这个短信是怎么发出去的,以及回复的短信是怎么收到的。经过本文,我们应该可以了解到,对于短信的发送和收取,我们要做的就只是mas机的数据库中的发送表中加入记录,在接收表中读取记录就可以啦,至于短信怎么发出去的,我们没有必要去知道啦。

    另外,这些东西很多是关于数据库处理的,那么很多操作我们不能在程序中完成,这样就没了时效性,比如用户针对某个投票调查回复了一条信息,那么他应该立即收到提示说投票成功或失败,如果这一过程要在程序中实现,那么你必须将程序时刻运行,时刻刷新进行回复,否则用户就只能在你程序下一次执行时才会收到信息提示,时效性就没啦。这个例子中的用户提示信息可能可以晚一些,但是对于做数据统计或者其他的工作就不一样啦,系统的使用者不可能时刻去刷新系统,重新去访问数据库,那样负载也太大啦。

    所以,在开发移动MAS增值服务时,我们要在数据库中作很多处理而不是程序。比如触发器的使用,作业的使用等,这样就可以立即对用户回复的短信内容进行有效性判断和一些简单的统计归类个、分析,使得系统更人性化,可用性、时效性更强。

    以上便是我对mas增值服务开发的一些小的心得,不足之处或错误之处还请指正。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值