From 15dbcdb9e8d7e4e83a11d6f70934dc0d58bb9923 Mon Sep 17 00:00:00 2001 From: oneRain Date: Mon, 18 May 2020 17:16:48 +0800 Subject: [PATCH 1/4] =?UTF-8?q?chore:=20=E5=8F=91=E9=80=81=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E8=AE=B0=E5=BD=95=E5=8F=91=E9=80=81=E8=80=85=20Id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Realtime/Realtime/Internal/Controller/LCIMMessageController.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Realtime/Realtime/Internal/Controller/LCIMMessageController.cs b/Realtime/Realtime/Internal/Controller/LCIMMessageController.cs index 784a895..0369be1 100644 --- a/Realtime/Realtime/Internal/Controller/LCIMMessageController.cs +++ b/Realtime/Realtime/Internal/Controller/LCIMMessageController.cs @@ -70,6 +70,7 @@ namespace LeanCloud.Realtime.Internal.Controller { AckCommand ack = response.AckMessage; message.Id = ack.Uid; message.SentTimestamp = ack.T; + message.FromClientId = Client.Id; return message; } From ec95b05d772e441e8ca688d926ecc0fdd338f5a3 Mon Sep 17 00:00:00 2001 From: oneRain Date: Mon, 18 May 2020 17:17:26 +0800 Subject: [PATCH 2/4] =?UTF-8?q?fix:=20=E6=9F=A5=E8=AF=A2=E5=AF=B9=E8=AF=9D?= =?UTF-8?q?=E6=97=B6=E6=B2=A1=E6=9C=89=E5=90=8D=E5=AD=97=E7=9A=84=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Realtime/Realtime/Conversation/LCIMConversation.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Realtime/Realtime/Conversation/LCIMConversation.cs b/Realtime/Realtime/Conversation/LCIMConversation.cs index fb6c9a0..b0f4015 100644 --- a/Realtime/Realtime/Conversation/LCIMConversation.cs +++ b/Realtime/Realtime/Conversation/LCIMConversation.cs @@ -477,6 +477,9 @@ namespace LeanCloud.Realtime { if (conv.TryGetValue("objectId", out object idObj)) { Id = idObj as string; } + if (conv.TryGetValue("name", out object nameObj)) { + Name = nameObj as string; + } if (conv.TryGetValue("unique", out object uniqueObj)) { Unique = (bool)uniqueObj; } From d2cdb7bd69ae3b5cf3c5f2b73761c1baa5155ad6 Mon Sep 17 00:00:00 2001 From: oneRain Date: Tue, 19 May 2020 16:58:46 +0800 Subject: [PATCH 3/4] =?UTF-8?q?chore:=20=E5=88=9B=E5=BB=BA=E5=AF=B9?= =?UTF-8?q?=E8=AF=9D=E5=90=8E=E5=8A=A0=E5=85=A5=E8=87=AA=E5=B7=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Realtime/Internal/Controller/LCIMConversationController.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs b/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs index af0455f..c7e7d16 100644 --- a/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs +++ b/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs @@ -84,6 +84,8 @@ namespace LeanCloud.Realtime.Internal.Controller { conversation.CreatorId = Client.Id; conversation.ids = members != null ? new HashSet(members) : new HashSet(); + // 将自己加入 + conversation.ids.Add(Client.Id); conversation.CreatedAt = DateTime.Parse(response.ConvMessage.Cdate); conversation.UpdatedAt = conversation.CreatedAt; return conversation; From 6d3064e29d1d9577f395eff5749fd9d11542cc45 Mon Sep 17 00:00:00 2001 From: oneRain Date: Wed, 20 May 2020 12:34:16 +0800 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E5=AF=B9=E8=AF=9D=E5=90=8D=E7=A7=B0=E6=97=A0=E6=95=88=E7=9A=84?= =?UTF-8?q?=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controller/LCIMConversationController.cs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs b/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs index c7e7d16..1f23ead 100644 --- a/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs +++ b/Realtime/Realtime/Internal/Controller/LCIMConversationController.cs @@ -43,18 +43,21 @@ namespace LeanCloud.Realtime.Internal.Controller { if (members != null) { conv.M.AddRange(members); } - if (!string.IsNullOrEmpty(name)) { - conv.N = name; - } if (temporary) { conv.TempConv = temporary; conv.TempConvTTL = temporaryTtl; } - if (properties != null) { - conv.Attr = new JsonObjectMessage { - Data = JsonConvert.SerializeObject(LCEncoder.Encode(properties)) - }; + Dictionary attrs = new Dictionary(); + if (!string.IsNullOrEmpty(name)) { + attrs["name"] = name; } + if (properties != null) { + attrs = properties.Union(attrs) + .ToDictionary(k => k.Key, v => v.Value); + } + conv.Attr = new JsonObjectMessage { + Data = JsonConvert.SerializeObject(LCEncoder.Encode(attrs)) + }; if (Client.SignatureFactory != null) { LCIMSignature signature = await Client.SignatureFactory.CreateStartConversationSignature(Client.Id, members); conv.S = signature.Signature;