qTox
Version: nightly | Commit: bc751c8e1cac455f9690654fcfe0f560d2d7dfdd
|
Go to the documentation of this file.
28 , messageSender(messageSender_)
29 , processor(std::move(processor_))
30 , coreExtPacketAllocator(coreExtPacketAllocator_)
38 std::pair<DispatchedMessageId, DispatchedMessageId>
52 return std::make_pair(firstId, lastId);
58 std::pair<DispatchedMessageId, DispatchedMessageId>
73 return std::make_pair(firstId, lastId);
114 for (
auto const&
message : messagesToResend) {
150 onOfflineMsgComplete(
false);
156 const auto friendId =
f.
getId();
160 receipt.get() = packet->addExtendedMessage(
message.content);
176 uint32_t friendId =
f.
getId();
192 return [
this, messageId] (
bool success) {
void clearOutgoingMessages()
Clears all currently outgoing messages.
void sendProcessedMessage(Message const &msg, OfflineMsgEngine::CompletionFn fn)
void onReceiptReceived(ReceiptNum receipt)
Handles received receipt from toxcore.
virtual bool sendAction(uint32_t friendId, const QString &action, ReceiptNum &receipt)=0
void onlineOfflineChanged(const ToxPk &friendId, bool isOnline)
OfflineMsgEngine offlineMsgEngine
virtual bool sendMessage(uint32_t friendId, const QString &message, ReceiptNum &receipt)=0
void onExtMessageReceived(const QString &message)
void sendExtendedProcessedMessage(Message const &msg, OfflineMsgEngine::CompletionFn fn)
std::pair< DispatchedMessageId, DispatchedMessageId > sendExtendedMessage(const QString &content, ExtensionSet extensions) override
void messageSent(DispatchedMessageId id, const Message &message)
Emitted when a message is processed and sent.
FriendMessageDispatcher(Friend &f, MessageProcessor processor, ICoreFriendMessageSender &messageSender, ICoreExtPacketAllocator &coreExt)
Message processIncomingExtMessage(const QString &content)
MessageProcessor processor
Status::Status getStatus() const
OfflineMsgEngine::CompletionFn getCompletionFn(DispatchedMessageId messageId)
void addSentCoreMessage(ReceiptNum receipt, Message const &message, CompletionFn completionCallback)
Add a message which has been saved to history, and which has been sent to the peer.
void onMessageReceived(bool isAction, const QString &content)
Handles received message from toxcore.
ExtensionSet getSupportedExtensions() const
void messageComplete(DispatchedMessageId id)
Emitted when a receiver report is received from the associated chat.
void onReceiptReceived(ReceiptNum receipt)
Notification that the message is now delivered.
This class represents a Tox Public Key, which is a part of Tox ID.
NamedType< uint32_t, struct ExtendedReceiptNumTag, Orderable > ExtendedReceiptNum
void addUnsentMessage(Message const &message, CompletionFn completionCallback)
Add a message which has been saved to history, but not sent yet to the peer.
NamedType< size_t, struct SentMessageIdTag, Orderable, Incrementable > DispatchedMessageId
ICoreFriendMessageSender & messageSender
virtual std::unique_ptr< ICoreExtPacket > getPacket(uint32_t friendId)=0
Gets a new packet builder for friend with core friend id friendId.
std::pair< DispatchedMessageId, DispatchedMessageId > sendMessage(bool isAction, const QString &content) override
std::vector< Message > processOutgoingMessage(bool isAction, const QString &content, ExtensionSet extensions)
Converts an outgoing message into one (or many) sanitized Message(s)
std::bitset< ExtensionType::max > ExtensionSet
Message processIncomingCoreMessage(bool isAction, const QString &content)
Converts an incoming message into a sanitized Message.
std::vector< RemovedMessage > removeAllMessages()
Removes all messages which are being tracked.
void addSentExtendedMessage(ExtendedReceiptNum receipt, Message const &message, CompletionFn completionCallback)
std::function< void(bool)> CompletionFn
const ToxPk & getPublicKey() const
void sendCoreProcessedMessage(Message const &msg, OfflineMsgEngine::CompletionFn fn)
void messageReceived(const ToxPk &sender, const Message &message)
Emitted when a message is received and processed.
void onExtendedReceiptReceived(ExtendedReceiptNum receipt)
void onFriendOnlineOfflineChanged(const ToxPk &key, bool isOnline)
Handles status change for friend.
NamedType< uint32_t, struct ReceiptNumTag, Orderable > ReceiptNum
DispatchedMessageId nextMessageId
uint32_t getId() const override
bool isOnline(Status status)
void onExtReceiptReceived(uint64_t receiptId)
ICoreExtPacketAllocator & coreExtPacketAllocator
void messageBroken(DispatchedMessageId id, BrokenMessageReason reason)