ImagingTools Core SDK
IChatService.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4// ACF includes
5#include <istd/IPolymorphic.h>
6
7// ImtCore includes
8#include <imtchat/IConversation.h>
9#include <imtchat/IChatMessage.h>
10
11
12namespace imtchat
13{
14
15
24class IChatService: virtual public istd::IPolymorphic
25{
26public:
35 virtual QByteArray SendMessage(
36 const QByteArray& conversationId,
37 const QString& content,
38 const QByteArrayList& entityReferences = QByteArrayList(),
39 const QByteArrayList& attachmentIds = QByteArrayList()) = 0;
40
48 virtual QByteArrayList GetMessages(
49 const QByteArray& conversationId,
50 int offset = 0,
51 int limit = 50) const = 0;
52
60 virtual QByteArray CreateConversation(
61 const QString& name,
62 int conversationType,
63 const QByteArrayList& participantIds) = 0;
64
71 virtual QByteArrayList GetConversations(int offset = 0, int limit = -1) const = 0;
72
79 virtual bool MarkMessageRead(
80 const QByteArray& conversationId,
81 const QByteArray& messageId) = 0;
82};
83
84} // namespace imtchat
virtual bool MarkMessageRead(const QByteArray &conversationId, const QByteArray &messageId)=0
virtual QByteArray SendMessage(const QByteArray &conversationId, const QString &content, const QByteArrayList &entityReferences=QByteArrayList(), const QByteArrayList &attachmentIds=QByteArrayList())=0
virtual QByteArray CreateConversation(const QString &name, int conversationType, const QByteArrayList &participantIds)=0
virtual QByteArrayList GetConversations(int offset=0, int limit=-1) const =0
virtual QByteArrayList GetMessages(const QByteArray &conversationId, int offset=0, int limit=50) const =0
Internal Service Desk Chat Domain Model Module.