问题遇到的现象和发生背景
char xml_body[4096];是什么意思,gb28181里面碰到
问题相关代码,请勿粘贴截图
static void st_gb28181_keepAlive(struct eXosip_t *context) //保持活力函数
{
osip_message_t *rqt_msg = NULL; //SIP消息的结构(请求和响应)指针
char to[100]; /*sip:主叫用户名@被叫IP地址*/
char from[100]; /*sip:被叫IP地址:被叫IP端口*/
char xml_body[4096];
memset(to, 0, 100);
memset(from, 0, 100);
memset(xml_body, 0, 4096);
snprintf(to,sizeof(to), "sip:%s@%s:%s", gb28181_device_info.server_id,gb28181_device_info.server_ip, gb28181_device_info.server_port);
snprintf(from,sizeof(from), "sip:%s@%s:%s", gb28181_device_info.ipc_id, gb28181_device_info.server_ip,gb28181_device_info.server_port);
eXosip_message_build_request(context,&rqt_msg, "MESSAGE", to, from, NULL);/*构建"MESSAGE"请求*/
snprintf(xml_body, 4096, "<?xml version=\"1.0\"?>\n"
"<Notify>\n"
"<CmdType>Keepalive</CmdType>\n"/*命令类型*/
"<SN>1</SN>\n"/*命令序列号*/
"<DeviceID>%s</DeviceID>\n"/*设备编码*/
"<Status>OK</Status>\n"/*是否正常工作*/
"</Notify>\n",
gb28181_device_info.ipc_id);
osip_message_set_body(rqt_msg, xml_body, strlen(xml_body));
osip_message_set_content_type(rqt_msg, "Application/MANSCDP+xml");
eXosip_lock(context);
eXosip_message_send_request(context,rqt_msg);/*回复"MESSAGE"请求*/
eXosip_unlock(context);
dbg("dt_eXosip_sendKeepAlive success!\n");
}