summaryrefslogtreecommitdiff
path: root/TelepathyQt/account.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TelepathyQt/account.cpp')
-rw-r--r--TelepathyQt/account.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/TelepathyQt/account.cpp b/TelepathyQt/account.cpp
index c35759a3..c2ad581e 100644
--- a/TelepathyQt/account.cpp
+++ b/TelepathyQt/account.cpp
@@ -418,6 +418,20 @@ QVariantMap dbusTubeRequest(const Tp::ContactPtr &contact, const QString &servic
return request;
}
+QVariantMap dbusTubeRoomRequest(const QString &roomName, const QString &serviceName)
+{
+ QVariantMap request;
+ request.insert(TP_QT_IFACE_CHANNEL + QLatin1String(".ChannelType"),
+ TP_QT_IFACE_CHANNEL_TYPE_DBUS_TUBE);
+ request.insert(TP_QT_IFACE_CHANNEL + QLatin1String(".TargetHandleType"),
+ (uint) Tp::HandleTypeRoom);
+ request.insert(TP_QT_IFACE_CHANNEL_TYPE_DBUS_TUBE + QLatin1String(".ServiceName"),
+ serviceName);
+ request.insert(TP_QT_IFACE_CHANNEL + QLatin1String(".TargetID"),
+ roomName);
+ return request;
+}
+
QVariantMap conferenceCommonRequest(const QString &channelType, Tp::HandleType targetHandleType,
const QList<Tp::ChannelPtr> &channels)
{
@@ -2892,6 +2906,19 @@ PendingChannelRequest* Account::createDBusTube(
preferredHandler, true, hints);
}
+PendingChannelRequest* Account::createDBusTubeRoom(
+ const QString &room,
+ const QString &serviceName,
+ const QDateTime &userActionTime,
+ const QString &preferredHandler,
+ const ChannelRequestHints &hints)
+{
+ QVariantMap request = dbusTubeRoomRequest(room, serviceName);
+
+ return new PendingChannelRequest(AccountPtr(this), request, userActionTime,
+ preferredHandler, true, hints);
+}
+
/**
* Start a request to create a conference media call with the given
* channels \a channels.