已经搞清楚问题原因,查看源码后发现zabbix调用短信猫时,确实有初始化,代码如下:
zbx_sms_scenario scenario[] =
{
{ZBX_AT_ESC , NULL , 0}, /* Send */
{"AT+CMEE=2\r" , ""/*"OK"*/ , 5}, /* verbose error values */
{"ATE0\r" , "OK" , 5}, /* Turn off echo */
{"AT\r" , "OK" , 5}, /* Init modem */
{"AT+CMGF=1\r" , "OK" , 5}, /* Switch to text mode/
{"AT+CMGS=\"" , NULL , 0}, /* Set phone number */
{number , NULL , 0}, /* Write phone number */
{"\"\r" , "> " , 5}, /* Set phone number */
{message , NULL , 0}, /* Write message */
{ZBX_AT_CTRL_Z , "+CMGS: " , 40}, /* Send message */
{NULL , "OK" , 1}, /* ^Z */
{NULL , NULL , 0}
};
text 模式不支持中文,将其改为pdu模式即可。