CMPPDELIVER
国际nmsgfmt,字符串ssrc_terminalid nregdel,int,int nmsglen,矢量smsgcontent,矢量vmsgid)
{
如果(int(m_body.size())gruninfo.error_package(m_body);
返回false;
}
std::复制(m_body.begin(),m_body.begin()+ 8,back_inserter(vmsgid));
smsgid = gtmsgid(vmsgid);
sdestid = fetchoct(8,21);
sserviceid = fetchoct(29,10);
ntp_pid = fetchint8(39);
ntp_udhi = fetchint8(40);
nmsgfmt = fetchint8(41);
ssrc_terminalid = fetchoct(42,21);
如果(strlen((ssrc_terminalid。c_str))= = 13){
ssrc_terminalid = ssrc_terminalid.substr(2,11);
}
nregdel = fetchint8(63);
nmsglen = fetchint8(64);
如果(nmsglen > 160 | | nmsglen如果(int((m_body。大小))=(65 + nmsglen + 8))
{
std::复制(m_body.begin()+ 65,m_body.begin()+ 65 + nmsglen,back_inserter(smsgcontent));
}
{其他
gruninfo.error_package(m_body);
返回false;
}
返回true;
}