我正在调试zabbix短信报警,遇到无法发送中文的问题,具体情况如下:
调试环境:
zabbix 3.0.5;
Linux centos 6.8;
短信猫 simens MC35i;
短信猫串口直连Linux服务器,zabbix直接调用设备/dev/ttyS1;
问题描述如下:
1.报警信息为英文时,发送短信正常;报警信息包含中文时,发送失败;报错如下:Expected [+CMGS: ] received [OK];
2.使用gnokii工具发送中文短信正常,发现其初始化流程中有修改短信模式的流程(at+cmgf=0);
3.短信猫的短信模式初始化为text模式,这个模式无法发送中文,通过minicom终端调试发现初始化后为text模式(at+cmgf=1),修改为pdu模式,退出minicom(不进行reset),通过zabbix 发送测试短信失败,再次进入minicom发现再次改为text模式;
怀疑zabbix调用短信猫时进行了初始化,该如何验证?请各位大神指导一下,如何排错···多谢
已经搞清楚问题原因,查看源码后发现zabbix调用短信猫时,确实有初始化,代码如下:
zbx_sms_scenario scenario[] =
text 模式不支持中文,将其改为pdu模式即可。