blob: 4448d530733b73f703a994c1d0ccb40c7798df1b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
#define PsiAccount JabberAccount
#ifndef JINGLEVOICECALLER_H
#define JINGLEVOICECALLER_H
#include <qmap.h>
#include "im.h"
#include "voicecaller.h"
using namespace XMPP;
class PsiAccount;
namespace cricket {
class SocketServer;
class Thread;
class NetworkManager;
class BasicPortAllocator;
class SessionManager;
class PhoneSessionClient;
class Call;
class SocketAddress;
}
class JingleClientSlots;
class JingleCallSlots;
class JingleVoiceCaller : public VoiceCaller
{
Q_OBJECT
friend class JingleClientSlots;
public:
JingleVoiceCaller(PsiAccount* account);
~JingleVoiceCaller();
virtual bool calling(const Jid&);
virtual void initialize();
virtual void deinitialize();
virtual void call(const Jid&);
virtual void accept(const Jid&);
virtual void reject(const Jid&);
virtual void terminate(const Jid&);
protected:
void sendStanza(const char*);
void registerCall(const Jid&, cricket::Call*);
void removeCall(const Jid&);
protected slots:
void receiveStanza(const QString&);
private:
bool initialized_;
static cricket::SocketServer *socket_server_;
static cricket::Thread *thread_;
static cricket::NetworkManager *network_manager_;
static cricket::BasicPortAllocator *port_allocator_;
static cricket::SocketAddress *stun_addr_;
cricket::SessionManager *session_manager_;
cricket::PhoneSessionClient *phone_client_;
JingleClientSlots *slots_;
QMap<QString,cricket::Call*> calls_;
};
#endif
|