1629 Commits

Author SHA1 Message Date
Andrea Maria Piana
ab01a05cd6 Don't use bytes anymore for LastMessage
LastMessage in chat was encoded in bytes so that we don't have to
encoded/decode everytime we save to db or pass the client.

An issue with emoji surfaced a problem with this approach.
Chat.LastClockValue represent the last clock value of any type of
message exchanged in a chat (emoji,group membership updates, contact
updates).
So when receving a new message, we should update LastMessage if the
clock of the LastMessage is lower than the received message, and we
should not only check LastClockValue, otherwise the message might be
discarded although it is the most recent.

This commit fixes the issue by keeping LastMessage as an object and
comparing LastMessage.Clock instead of LastClockValue
v0.56.5
2020-07-31 13:40:11 +02:00
Andrea Maria Piana
14e426f39f
Merge branch 'feature/emoji-reactions' into develop v0.56.4 2020-07-30 21:30:38 +02:00
Andrea Maria Piana
5e4d58a807
Fix lastMessage when receive an emoji out of order 2020-07-30 21:14:47 +02:00
Andrea Maria Piana
b346d08d91
bump version 2020-07-30 20:25:06 +02:00
Andrea Maria Piana
2cc3a9bab1
increase count & add comment 2020-07-30 20:21:10 +02:00
Andrea Maria Piana
ecd919ebc2
increase test timeout 2020-07-30 20:21:09 +02:00
Andrea Maria Piana
b17d51e83d
describe chat entity comment 2020-07-30 20:21:08 +02:00
Andrea Maria Piana
33c87a670a
Uncommet test 2020-07-30 20:21:07 +02:00
Andrea Maria Piana
5910de3683
Handle emoji reaction in group chat 2020-07-30 20:21:06 +02:00
Andrea Maria Piana
b3c6afe99b
dont use a pointer 2020-07-30 20:21:05 +02:00
Andrea Maria Piana
eb087a00a4
add retracted 2020-07-30 20:21:04 +02:00
Andrea Maria Piana
fcb901daf2
remove leftover emojialias 2020-07-30 20:21:03 +02:00
Andrea Maria Piana
4a83c86c3e
Add EmojiReaction to membershipupdatemessage 2020-07-30 20:21:02 +02:00
Andrea Maria Piana
7e7d95a907
camel case emojiReactions 2020-07-30 20:21:01 +02:00
Andrea Maria Piana
a1a6e1c6c0
linting 2020-07-30 20:21:00 +02:00
Andrea Maria Piana
29f25c5486
Use local chat-id for matching messages 2020-07-30 20:20:59 +02:00
Andrea Maria Piana
d067b56fc2
Fix cursored query for emoji 2020-07-30 20:20:58 +02:00
Andrea Maria Piana
9ddd963591
vendor 2020-07-30 20:20:56 +02:00
Andrea Maria Piana
37a2073008
add endpoint for getting emojis 2020-07-30 20:20:40 +02:00
Andrea Maria Piana
3e4e1ff663
update migrations 2020-07-30 20:20:39 +02:00
Andrea Maria Piana
db43fa4894
camel case emojiReactions 2020-07-30 20:20:38 +02:00
Andrea Maria Piana
5a178939de
Use same message with flag for emoji retraction and use compound id 2020-07-30 20:20:37 +02:00
Andrea Maria Piana
2bf1991190
Use reflect.Value as ParsedMessage type and handle type case 2020-07-30 20:20:36 +02:00
Samuel Hawksby-Robinson
de79f2ced0
Fix bug, logger var name collided with package name 2020-07-30 20:20:35 +02:00
Samuel Hawksby-Robinson
acfcac6748
Implemented encodeChatEntity() into SendChatMessage and SendEmojiReaction 2020-07-30 20:20:34 +02:00
Samuel Hawksby-Robinson
b70c362f2b
Bug fix on SendChatMessage() related to membership update 2020-07-30 20:20:33 +02:00
Samuel Hawksby-Robinson
e9eb05e3d1
Bug fix on HandleMembershipUpdate() 2020-07-30 20:20:32 +02:00
Samuel Hawksby-Robinson
45c1e5ba1c
Updated MembershipUpdateMessage to use interfaced ChatEntity
Replaces ChatMessage only field
2020-07-30 20:20:31 +02:00
Samuel Hawksby-Robinson
b6d24e950c
Added oneof chat_entity option to membership_update_message 2020-07-30 20:20:30 +02:00
Samuel Hawksby-Robinson
3e857203ac
Created ChatEntity encoding per chat type 2020-07-30 20:20:29 +02:00
Samuel Hawksby-Robinson
6ffe67deec
Added ChatEntity interface and made required changes for its use 2020-07-30 20:20:28 +02:00
Samuel Hawksby-Robinson
ceed618102
Updated all MessageType references 2020-07-30 20:20:27 +02:00
Samuel Hawksby-Robinson
c0a0238b0e
Moved protobuf MessageType enum into dedicated file 2020-07-30 20:20:26 +02:00
Samuel Hawksby-Robinson
373ddc5449
Added chat id to emoji reaction protobuf 2020-07-30 20:20:25 +02:00
Samuel Hawksby-Robinson
9a775619cd
Added basic EmojiReaction handler 2020-07-30 20:20:24 +02:00
Samuel Hawksby-Robinson
eb562122b6
Added general protobuf umarshaller function 2020-07-30 20:20:23 +02:00
Samuel Hawksby-Robinson
5823ebe446
Added emoji reaction retraction message type unmarshalling 2020-07-30 20:20:22 +02:00
Samuel Hawksby-Robinson
5ee3a0a1b5
Added check emoji reaction retraction sender against current identity 2020-07-30 20:20:21 +02:00
Samuel Hawksby-Robinson
0a26d5a37d
Added emoji reaction retraction persistence 2020-07-30 20:20:20 +02:00
Samuel Hawksby-Robinson
106ccfcf0f
Added main functionality for SendEmojiReactionRetraction() 2020-07-30 20:20:19 +02:00
Samuel Hawksby-Robinson
8779b9a333
Added emoji_reaction get by id db func 2020-07-30 20:20:18 +02:00
Samuel Hawksby-Robinson
fdc180039f
Added emoji_reaction persistence 2020-07-30 20:20:17 +02:00
Samuel Hawksby-Robinson
241439e56b
make generate 2020-07-30 20:20:16 +02:00
Samuel Hawksby-Robinson
9b8d0ba167
Added chat_id to emoji_reactions table 2020-07-30 20:20:15 +02:00
Samuel Hawksby-Robinson
4899b43a48
delinted 2020-07-30 20:20:14 +02:00
Samuel Hawksby-Robinson
0fdb2de6d1
Added return to prevent compile fail 2020-07-30 20:20:13 +02:00
Samuel Hawksby-Robinson
db517eb1f4
Removed lines I've added 2020-07-30 20:20:12 +02:00
Samuel Hawksby-Robinson
ae1e6db883
Removed original iteration 2020-07-30 20:20:11 +02:00
Samuel Hawksby-Robinson
2d9db29f31
Added Messenger.SendEmojiReaction()
stubbed SendEmojiReactionRetraction() added new protocol/EmojiReaction{}
2020-07-30 20:20:10 +02:00
Samuel Hawksby-Robinson
1dadab9104
Added emoji reaction app meta message type 2020-07-30 20:20:09 +02:00