00001
00002
00003
00004
00005
00006
00007
00008 #include <TelepathyQt/AbstractAdaptor>
00009 #include <TelepathyQt/Global>
00010 #include <TelepathyQt/Types>
00011
00012 #include <QObject>
00013 #include <QtDBus>
00014
00015 namespace Tp
00016 {
00017 namespace Service
00018 {
00019
00027 class TP_QT_EXPORT CallContentAdaptor : public Tp::AbstractAdaptor
00028 {
00029 Q_OBJECT
00030 Q_CLASSINFO("D-Bus Interface", "org.freedesktop.Telepathy.Call1.Content")
00031 Q_CLASSINFO("D-Bus Introspection", ""
00032 " <interface name=\"org.freedesktop.Telepathy.Call1.Content\">\n"
00033 " <property access=\"read\" type=\"as\" name=\"Interfaces\"/>\n"
00034 " <property access=\"read\" type=\"s\" name=\"Name\"/>\n"
00035 " <property access=\"read\" type=\"u\" name=\"Type\"/>\n"
00036 " <property access=\"read\" type=\"u\" name=\"Disposition\"/>\n"
00037 " <property access=\"read\" type=\"ao\" name=\"Streams\"/>\n"
00038 " <method name=\"Remove\"/>\n"
00039 " <signal name=\"StreamsAdded\">\n"
00040 " <arg type=\"ao\" name=\"streams\"/>\n"
00041 " </signal>\n"
00042 " <signal name=\"StreamsRemoved\">\n"
00043 " <arg type=\"ao\" name=\"streams\"/>\n"
00044 " <arg type=\"(uuss)\" name=\"reason\">\n"
00045 " <annotation value=\"Tp::CallStateReason\" name=\"com.trolltech.QtDBus.QtTypeName.In1\"/>\n"
00046 " </arg>\n"
00047 " </signal>\n"
00048 " </interface>\n"
00049 "")
00050 Q_PROPERTY(QStringList Interfaces READ Interfaces )
00051 Q_PROPERTY(QString Name READ Name )
00052 Q_PROPERTY(uint Type READ Type )
00053 Q_PROPERTY(uint Disposition READ Disposition )
00054 Q_PROPERTY(Tp::ObjectPathList Streams READ Streams )
00055
00056 public:
00057 CallContentAdaptor(const QDBusConnection& dbusConnection, QObject* adaptee, QObject* parent);
00058 virtual ~CallContentAdaptor();
00059
00060 typedef Tp::MethodInvocationContextPtr< > RemoveContextPtr;
00061
00062 public:
00080 QStringList Interfaces() const;
00102 QString Name() const;
00116 uint Type() const;
00128 uint Disposition() const;
00156 Tp::ObjectPathList Streams() const;
00157
00158 public Q_SLOTS:
00174 void Remove(const QDBusMessage& dbusMessage);
00175
00176 Q_SIGNALS:
00189 void StreamsAdded(const Tp::ObjectPathList& streams);
00205 void StreamsRemoved(const Tp::ObjectPathList& streams, const Tp::CallStateReason& reason);
00206 };
00207
00215 class TP_QT_EXPORT CallContentInterfaceDTMFAdaptor : public Tp::AbstractAdaptor
00216 {
00217 Q_OBJECT
00218 Q_CLASSINFO("D-Bus Interface", "org.freedesktop.Telepathy.Call1.Content.Interface.DTMF")
00219 Q_CLASSINFO("D-Bus Introspection", ""
00220 " <interface name=\"org.freedesktop.Telepathy.Call1.Content.Interface.DTMF\">\n"
00221 " <property access=\"read\" type=\"b\" name=\"CurrentlySendingTones\"/>\n"
00222 " <property access=\"read\" type=\"s\" name=\"DeferredTones\"/>\n"
00223 " <method name=\"StartTone\">\n"
00224 " <arg direction=\"in\" type=\"y\" name=\"event\"/>\n"
00225 " </method>\n"
00226 " <method name=\"StopTone\"/>\n"
00227 " <method name=\"MultipleTones\">\n"
00228 " <arg direction=\"in\" type=\"s\" name=\"tones\"/>\n"
00229 " </method>\n"
00230 " <signal name=\"TonesDeferred\">\n"
00231 " <arg type=\"s\" name=\"tones\"/>\n"
00232 " </signal>\n"
00233 " <signal name=\"SendingTones\">\n"
00234 " <arg type=\"s\" name=\"tones\"/>\n"
00235 " </signal>\n"
00236 " <signal name=\"StoppedTones\">\n"
00237 " <arg type=\"b\" name=\"cancelled\"/>\n"
00238 " </signal>\n"
00239 " </interface>\n"
00240 "")
00241 Q_PROPERTY(bool CurrentlySendingTones READ CurrentlySendingTones )
00242 Q_PROPERTY(QString DeferredTones READ DeferredTones )
00243
00244 public:
00245 CallContentInterfaceDTMFAdaptor(const QDBusConnection& dbusConnection, QObject* adaptee, QObject* parent);
00246 virtual ~CallContentInterfaceDTMFAdaptor();
00247
00248 typedef Tp::MethodInvocationContextPtr< > StartToneContextPtr;
00249 typedef Tp::MethodInvocationContextPtr< > StopToneContextPtr;
00250 typedef Tp::MethodInvocationContextPtr< > MultipleTonesContextPtr;
00251
00252 public:
00266 bool CurrentlySendingTones() const;
00286 QString DeferredTones() const;
00287
00288 public Q_SLOTS:
00314 void StartTone(uchar event, const QDBusMessage& dbusMessage);
00333 void StopTone(const QDBusMessage& dbusMessage);
00381 void MultipleTones(const QString& tones, const QDBusMessage& dbusMessage);
00382
00383 Q_SIGNALS:
00396 void TonesDeferred(const QString& tones);
00409 void SendingTones(const QString& tones);
00422 void StoppedTones(bool cancelled);
00423 };
00424
00432 class TP_QT_EXPORT CallInterfaceMuteAdaptor : public Tp::AbstractAdaptor
00433 {
00434 Q_OBJECT
00435 Q_CLASSINFO("D-Bus Interface", "org.freedesktop.Telepathy.Call1.Interface.Mute")
00436 Q_CLASSINFO("D-Bus Introspection", ""
00437 " <interface name=\"org.freedesktop.Telepathy.Call1.Interface.Mute\">\n"
00438 " <property access=\"read\" type=\"u\" name=\"LocalMuteState\"/>\n"
00439 " <method name=\"RequestMuted\">\n"
00440 " <arg direction=\"in\" type=\"b\" name=\"muted\"/>\n"
00441 " </method>\n"
00442 " <signal name=\"MuteStateChanged\">\n"
00443 " <arg type=\"u\" name=\"muteState\"/>\n"
00444 " </signal>\n"
00445 " </interface>\n"
00446 "")
00447 Q_PROPERTY(uint LocalMuteState READ LocalMuteState )
00448
00449 public:
00450 CallInterfaceMuteAdaptor(const QDBusConnection& dbusConnection, QObject* adaptee, QObject* parent);
00451 virtual ~CallInterfaceMuteAdaptor();
00452
00453 typedef Tp::MethodInvocationContextPtr< > RequestMutedContextPtr;
00454
00455 public:
00469 uint LocalMuteState() const;
00470
00471 public Q_SLOTS:
00490 void RequestMuted(bool muted, const QDBusMessage& dbusMessage);
00491
00492 Q_SIGNALS:
00505 void MuteStateChanged(uint muteState);
00506 };
00507
00508 }
00509 }