的提交包CMPP代码示例
如果(!PkMsg.stPK(slabel,人体))
{
ostringstream之上OSS;
OSS gruninfo.addinfo(oss.str());
}
国际npknum = int(pkmsg.m_vbody.size());
为(int = i 0;i {)
字符串scurbody = pkmsg.m_vbody.at(我); / /送体显示字符串
长纳秒= sequenceid();
字符串sfeetype,sfeecode,ssrvtype;
sfeetype = pkmsg.sfeetype;
sfeecode = pkmsg.sfeecode;
ssrvtype = pkmsg.sservicetype;
如果(npknum > 1){ / /发送必须的铃声或图片,然后,只有最后一个是收费的
如果(我sfeetype =01;
sfeecode =0;
如果(pkmsg.sarea = =北京){ ssrvtype =BZ;}
别的{ ssrvtype =MF;}
}
}
矢量vcur;
PkMsg.gtPKBody(我,vcur); / /把要发送的内容,可以是二进制
CSmsCmpp smCmpp(m_badd86);
SmCmpp.EncodeSubmit(纳秒,
1,
1,
PkMsg.nMsgMode,
9,
SSrvType,
PkMsg.nFeeUserType,
PkMsg.sFeeAddr,
PkMsg.nMsgFmt,
m_sspid,
SFeeType,
SFeeCode,
PkMsg.sOrgAddr,
PkMsg.sDestAddr,
VCur);
m_datasend.write(smcmpp.getpackage());
如果(pkmsg。nmsgmode = = 2){
监视器(2,pkmsg.sorgaddr,pkmsg.sdestaddr,pkmsg.nmsgfmt,int(strlen(scurbody.c_str())),scurbody);
m_ncount.smcqueueadd();
}
{其他
监视器(1,pkmsg.sorgaddr,pkmsg.sdestaddr,pkmsg.nmsgfmt,int(strlen(scurbody.c_str())),scurbody);
m_ncount.mtqueueadd();
}
字符串(scurlabel = pkmsg。gtlabel); / /获取当前标签
如果(sfeetype = =01){
SCurLabel.replace(8,1,1 );
SCurLabel.replace(9,0 );
如果(ssrvtype = =MF){
SCurLabel.replace(13,6,MF);
}
如果(ssrvtype = =BZ){
SCurLabel.replace(13,6,BZ);
}
}
m_datalist.addsubmit(纳秒,scurlabel,scurbody);
}
返回true;