深信服、信锐设备与联通一信通短信平台对接的注意事项

现有一台信锐无线控制器3.7.9.7要做短信认证,短信平台是联通的一信通。

做完配置发送测试短信,接收不到,深信服设备会有日志显示短信平台的返回值报错信息,但是信锐设备的日志中暂时没有这些日志信息。在信锐设备后台抓包,根据抓包结果result=1得知是提交参数不能为空的报错。

查询一信通的接口文档,得知是用户名和密码不正确,获取到正确密码后,提交,仍然报错,返回result=5,这是IP没有在一信通后台加入白名单导致,让一信通客服把IP加入到白名单后,再次提交,仍然报错,返回值28,这是发送内容与模板不符的报错,仔细核对模板,发现模板中写的是“登陆”,提交的URL中填写的是“登录”,修改后,可以正常收到测试短信。

以下是信锐无线控制器上的一些配置:

并且这里的短信内容要与一信通模板保持一致:

目前已经对接成功,可以正常收到认证短信。

对于与一信通对接,除了要将设备的固定公网IP加入白名单,PPPOE这种不是固定的IP没有办法加到白名单,还要让短信模板与一信通的模板保持一致,并且在提交密码时,如果密码中含有特殊字符,需要写转义字符,比如#写成%23,%写成%25。

附URL中的转义方式:

特殊字符URL中用途转义方式
+表示空格%2B
(空格)应换用加号 + 或%20 表示%20
/分隔目录和子目录%2F
?分隔实际的 URL 和参数%3F
%指定特殊字符%25
#表示书签%23
&URL中指定的参数间的分隔符%26
=URL中指定参数的值%3D
!URL中指定参数的值%21

另外深信服不仅支持HTTP协议也支持HTTPS协议的短信平台对接,信锐截止3.7.9.7版本只支持与HTTP协议对接。