From 749def2b983d2338272c0891d15de20df22e2eea Mon Sep 17 00:00:00 2001 From: Kitsune Ral Date: Thu, 22 Jun 2017 16:38:29 +0900 Subject: Enable sending RoomMessageEvents 1. PostMessageJob is now SendEventJob, which reflects two things: first, it's a PUT instead of a POST (POST for /send is not supported by the latest spec anyway), so that we could enable tracking transaction ids for local echo in the near future; second, it's no more just about messages, the job can support sending any room events (topic changes etc.). 2. Room::postMessage() now uses the new RoomMessageEvent API to send m.room.message events. --- room.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'room.cpp') diff --git a/room.cpp b/room.cpp index 24745b9b..cfdd33ac 100644 --- a/room.cpp +++ b/room.cpp @@ -21,14 +21,12 @@ #include #include -#include #include // for efficient string concats (operator%) #include #include "connection.h" #include "state.h" #include "user.h" -#include "events/roommessageevent.h" #include "events/roomnameevent.h" #include "events/roomaliasesevent.h" #include "events/roomcanonicalaliasevent.h" @@ -36,7 +34,7 @@ #include "events/roommemberevent.h" #include "events/typingevent.h" #include "events/receiptevent.h" -#include "jobs/postmessagejob.h" +#include "jobs/sendeventjob.h" #include "jobs/roommessagesjob.h" #include "jobs/postreceiptjob.h" #include "jobs/leaveroomjob.h" @@ -560,13 +558,18 @@ void Room::updateData(SyncRoomData&& data) void Room::postMessage(const QString& type, const QString& plainText) { - connection()->callApi(id(), type, plainText); + connection()->callApi(id(), type, plainText); } -void Room::postMessage(const QString& type, const QString& plainText, - const QString& richText) +void Room::postMessage(const QString& plainText, MessageEventType type) { - connection()->callApi(id(), type, plainText, richText); + RoomMessageEvent rme(plainText, type); + postMessage(&rme); +} + +void Room::postMessage(RoomMessageEvent* event) +{ + connection()->callApi(id(), event); } void Room::getPreviousContent(int limit) -- cgit v1.2.3