[SOLVED]QXmpp creating a MUC room (xep--0045) on the server



  • Hi,
    I am trying to add MUC capabilities to my application with QXmpp, I am following this info in the QXmppMucManager.h header file

    /// \brief The QXmppMucManager class makes it possible to interact with
    /// multi-user chat rooms as defined by XEP-0045: Multi-User Chat.
    ///
    /// To make use of this manager, you need to instantiate it and load it into
    /// the QXmppClient instance as follows:
    ///
    /// \code
    /// QXmppMucManager *manager = new QXmppMucManager;
    /// client->addExtension(manager);
    /// \endcode
    ///
    /// You can then join a room as follows:
    ///
    /// \code
    /// QXmppMucRoom *room = manager->addRoom("room@conference.example.com");
    /// room->setNickName("mynick");
    /// room->join();
    /// \endcode
    ///
    /// \ingroup Managers
    

    In a constructor of one of my classes I am adding a MuCManager like this

    QXmppMucManager *manager = new QXmppMucManager;
    m_xmppClient.addExtension(manager);
    

    and in a slot to create an Muc group I am doing this

    QXmppMucRoom *room = manager->addRoom("livefit@mthinkpad");
    room->setNickName("mThinkpad");
    room->join();
    

    I expect this to create a room and join if it doesn't exist and join if it already exists but it is just crashing my application.I can't wrap my brains around how qxmpp implements the xep--0045.I would appreciate it if somebody helped point what I am doing wrong or how I can create an Muc room on my server from my client.
    My server is a local ejabberd installation and I can access it at the "mthinkpad" domain.

    [edit: Added missing coding tags 3 ` before and after the code SGaist]


  • Lifetime Qt Champion

    Hi,

    Although QXmpp is not an official Qt module, what does a run through the debugger tell you ?



  • @musimbate said:

    QXmppMucRoom

    here is a example



  • Thanks,really helpful.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.