gloox
1.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
src
mucroomhandler.h
1
/*
2
Copyright (c) 2006-2009 by Jakob Schroeter <js@camaya.net>
3
This file is part of the gloox library. http://camaya.net/gloox
4
5
This software is distributed under a license. The full license
6
agreement can be found in the file LICENSE in this distribution.
7
This software may not be copied, modified, sold or distributed
8
other than expressed in the named license agreement.
9
10
This software is distributed without any warranty.
11
*/
12
13
14
15
#ifndef MUCROOMHANDLER_H__
16
#define MUCROOMHANDLER_H__
17
18
#include "gloox.h"
19
#include "presence.h"
20
#include "disco.h"
21
22
#include <string>
23
24
namespace
gloox
25
{
26
27
class
JID;
28
class
MUCRoom;
29
class
Message;
30
class
DataForm;
31
35
struct
MUCRoomParticipant
36
{
37
JID
*
nick
;
43
MUCRoomAffiliation
affiliation
;
44
MUCRoomRole
role
;
45
JID
*
jid
;
49
int
flags
;
54
std::string
reason
;
57
JID
*
actor
;
62
std::string
newNick
;
72
std::string
status
;
74
JID
*
alternate
;
77
};
78
90
class
GLOOX_API
MUCRoomHandler
91
{
92
public
:
96
virtual
~MUCRoomHandler
() {}
97
107
virtual
void
handleMUCParticipantPresence(
MUCRoom
* room,
const
MUCRoomParticipant
participant,
108
const
Presence
& presence ) = 0;
109
130
virtual
void
handleMUCMessage(
MUCRoom
* room,
const
Message
& msg,
bool
priv ) = 0;
131
149
virtual
bool
handleMUCRoomCreation(
MUCRoom
* room ) = 0;
150
158
virtual
void
handleMUCSubject(
MUCRoom
* room,
const
std::string& nick,
159
const
std::string& subject ) = 0;
160
168
virtual
void
handleMUCInviteDecline(
MUCRoom
* room,
const
JID
& invitee,
169
const
std::string& reason ) = 0;
170
187
virtual
void
handleMUCError(
MUCRoom
* room,
StanzaError
error ) = 0;
188
201
virtual
void
handleMUCInfo(
MUCRoom
* room,
int
features,
const
std::string& name,
202
const
DataForm
* infoForm ) = 0;
203
210
virtual
void
handleMUCItems(
MUCRoom
* room,
const
Disco::ItemList
& items ) = 0;
211
212
};
213
214
}
215
216
#endif// MUCROOMHANDLER_H__
Generated on Thu Jun 27 2013 13:02:36 for gloox by
1.8.1.2