本文整理汇总了C++中IQ::setFrom方法的典型用法代码示例。如果您正苦于以下问题:C++ IQ::setFrom方法的具体用法?C++ IQ::setFrom怎么用?C++ IQ::setFrom使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IQ
的用法示例。
在下文中一共展示了IQ::setFrom方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: send
void TestInitiator::send( IQ& iq, IqHandler*, int ctx )
{
m_result = false;
iq.setFrom( JID( "self" ) );
Tag* t = iq.tag();
std::string expected;
// printf( "TestInitiator: test %d: %s\n", m_test, t->xml().c_str() );
switch( m_test )
{
case 1:
{
expected = "<iq to='[email protected]' from='self' id='id' type='set'><jingle xmlns='" + XMLNS_JINGLE + "' action='session-initiate' initiator='notself' sid='somesid'/></iq>";
if( t->xml() == expected )
m_result = true;
else
fprintf( stderr, "Jingle::Session test %d\nHave: %s\nExpected: %s\n", m_test, t->xml().c_str(), expected.c_str() );
res->sm()->handleIq( iq );
break;
}
}
delete t;
}
示例2: IQ
void SOCKS5BytestreamManager::acknowledgeStreamHost( bool success, const JID& jid,
const std::string& sid )
{
AsyncTrackMap::const_iterator it = m_asyncTrackMap.find( sid );
if( it == m_asyncTrackMap.end() || !m_parent )
return;
const AsyncS5BItem& item = (*it).second;
IQ* iq = 0;
if( item.incoming )
{
iq = new IQ( IQ::Result, item.from.full(), item.id );
if( item.to )
iq->setFrom( item.to );
if( success )
iq->addExtension( new Query( jid, sid, false ) );
else
iq->addExtension( new Error( StanzaErrorTypeCancel, StanzaErrorItemNotFound ) );
m_parent->send( *iq );
}
else
{
if( success )
{
const std::string& id = m_parent->getID();
iq = new IQ( IQ::Set, jid.full(), id );
iq->addExtension( new Query( item.from, sid, true ) );
m_trackMap[id] = sid;
m_parent->send( *iq, this, S5BActivateStream );
}
}
delete iq;
}