void UserDetailsManager::slotReceiveContactDetails( const GroupWise::ContactDetails & details )
{
	m_client->debug( "UserDetailsManager::slotReceiveContactDetails()" );
	m_pendingDNs.remove( details.dn );
	/*client()->userDetailsManager()->*/
	addDetails( details );
	//emit temporaryContact( details );
	emit gotContactDetails( details );
}
示例#2
0
void QPalringoConnection::onContactDetailReceived( const Headers headers, const QByteArray body )
{
    qpContactData contactData;
    contactData.getData( headers, body );

    if( this->contacts.contains( contactData.contactId_ ) )
    {
#if qpDEBUG
        qDebug( "We have this contact already" );
#endif
        Contact* contact = this->contacts.value( contactData.contactId_ );

        if( contactData.nickname_.size() )
        {
            contact->setNickname( contactData.nickname_ );
        }
        if( contactData.status_.size() )
        {
            contact->setStatusline( contactData.status_ );
        }
        if( contactData.onlineStatus_ > -1 )
        {
            contact->setOnlineStatus( contactData.onlineStatus_ );
        }
    }
    else
    {
#if qpDEBUG
        qDebug( "New contact recieved" );
#endif
        Contact *contact = new Contact;
        contact->setNickname( contactData.nickname_ );
        contact->setStatusline( contactData.status_ );
        contact->setOnlineStatus( contactData.onlineStatus_ );
        contact->setIsContact( contactData.isContact_ );
        contact->setDeviceType( contactData.deviceType_ );
        contact->setID( contactData.contactId_ );

        this->contactLock.lockForWrite();
        this->contacts.insert( contactData.contactId_, contact );
        this->contactLock.unlock();
#if SIGNALS
        qDebug( "emitting gotContactDetails( Contact* )" );
#endif
        emit gotContactDetails( contact );
    }
}
void UserDetailsManager::slotReceiveContactDetails( const GroupWise::ContactDetails & details )
{
	m_client->debug( "UserDetailsManager::slotReceiveContactDetails()" );
	m_pendingDNs.removeAll( details.dn );
	/*client()->userDetailsManager()->*/
	addDetails( details );
		kDebug() 
		<< "  Auth attribute: " << details.authAttribute
		<< "  , Away message: " << details.awayMessage
		<< "  , CN" << details.cn
		<< "  , DN" << details.dn
		<< "  , fullName" << details.fullName
		<< "  , surname" << details.surname
		<< "  , givenname" << details.givenName
		<< "  , status" << details.status
		<< endl;
	//emit temporaryContact( details );
	emit gotContactDetails( details );
}