Now SMS/MMS是一个强大的短信/彩信发送服务器,它内置了彩信中心,在某些运营商的网络内可以通过普通的短信猫发送彩信,而不需要使用支持GPRS的短信猫,也就是说系统本身就具有了运营商的彩信中心的功能。然而,在中国移动的网络内是不能实现这种方式发送彩信的,必须通过移动梦网的彩信中心转发。
彩信的发送其实是两个过程:
1、向目标手机发送一条普通的提醒短信,其中包含了发送者号码、彩信的URL等信息,该URL指向彩信中心的某个web目录下的某个彩信文件;
2、目标手机接收到这条提醒短信后,主动发起GPRS连接,根据短信中的URL向彩信中心提取该彩信,并显示出来。
Now SMS/MMS 自带的彩信中心其实就是一个支持手机连接的web服务器,它把制作好的彩信放在某个web目录下,手机连接时就可以下载。
然而,实践证明,如果使用中国移动的SIM卡,无论使用的是什么短信猫,都不能通过系统自带的彩信中心发送彩信。
要设置成通过移动公司的彩信中心发送彩信,必须把系统的默认设置——使用自带的MMSC(彩信中心)——改为使用移动公司的MMSC。方法如下:
在Now SMS/MMS Gateway配置程序中选择MMSC Routing,然后点击Add按钮,在弹出的对话框中建立一个新的MMSC配置,其中Acount Name和Account Description可以随便填,只是用来识别配置名称,因为系统可以设置多个MMSC。
Default Sender Address必须留空,否则发送很难成功(有极少部分能够发送成功)。Allow Sender Address Override前的复选框也必须留空。Route messages to this account for recipient phone number(s)不用填(这是一个掩码,只有符合要求的号码才用这个路由,按照官方文档的说法,不填的话是不会用这个路由的,但实际上把它设成默认路由的话,即使不填也会用这个,也许填上+861*,1*会好些,表示中国的手机都用这个发)。Route messages to VASP via选择MM1,之后会出现更多的输入框,点击Look up Operator Seetings,出现一个选择运营商的对话框,很幸运,中国移动在里面,选择China - China Mobile,然后OK即可,系统自动把适合中国移动的内容填了进去。但是Network Connection和Modem Used两个下拉列表还没选好。这里必须使用对应的GPRS猫的调制解调器(在控制面板-电话和调制解调器选项-调制解调器-添加,按照提示一步步就能找到GPRS猫,看好哪个调制解调器对应哪个端口,从而知道哪个调制解调器对应哪个GPRS猫)。填好这些东西后点击Test Connection可以检测连接,成功就可以了,检测时间比较长,要耐心等待。填好之后点击OK,在MMSC Routing标签页里的Additional Routes里面就能看到刚才的那个配置名称,然后在Default Route里面选择刚才的配置名称作为默认路由就可以了。
之后打开MMSC标签,配置自带的MMSC。虽然我们使用的是中国移动的MMSC,但通过web发送彩信时,必须先发送到系统自带的MMSC,再转发到移动的MMSC,所以必须把系统的MMSC也配置好。这里就是普通web服务器的配置(还有SMTP的配置,可选),把端口和IP选好后,还要注意Local Host Name or IP Address里要填入一个本机的IP,如果在仅在内网使用,可以直接填本机IP(外网的情况没有研究过,看看说明书先)。其他默认的就可以了。
再打开Web标签页,把Web服务器配置好。
打开浏览器,输入http://服务器IP:web服务器端口/,就能看到发送各种短信、彩信的链接,然后就可以发送彩信进行测试了。如果发送不成功,可以打开Serial #标签页,把底下的三个Debug选项都勾上,再发送一下,然后在Now SMS/MMS 的安装目录下找到MMSCDEBUG.LOG等几个LOG文件查看究竟是什么问题。文件太大会导致发送失败,系统不会自动检查的。文件大小的上限还不清楚,但超过100KB似乎就肯定不行。
今天搞了一天这个东西,终于能正常发送彩信了。在这里备忘一下。慢慢再作深入研究。
感谢:
http://blog.csdn.net/phiger/archive/2006/12/19/1449176.aspx
官方文档:
http://www.nowsms.com/documentation/ProductDocumentation/mms_notifications_and_content/Connecting_to_operator_MMSC.htm#SendingMMSMessages