public void Conversation_Send_Text_Message()
        {
            AVClient.Initialize("JXyR8vfpeSr8cfaYnob2zYl0-9Nh9j0Va", "Fgq2YlPdnP1KJEoWyF5tk2az");
            var client = new AVIMClient("Tom");

            AVIMConversation conversation = AVIMConversation.CreateWithoutData("573df12679df540060417452", client);

            client.ConnectAsync().ContinueWith(_ =>
            {
                client.RegisterMessage <AVIMTextMessage>((message) =>
                {
                    var textMessage = message as AVIMTextMessage;
                    Trace.WriteLine(textMessage.TextContent);
                });

                client.RegisterMessage <AVIMAudioMessage>((audio) =>
                {
                });

                var text = new AVIMTextMessage("Hi,Jerry");
                conversation.SendMessageAsync(text).ContinueWith(t =>
                {
                    Trace.WriteLine(text.Id);
                }).Wait();
            }).Wait();
        }
        private async void btn_Send_Click(object sender, EventArgs e)
        {
            var text        = txb_InputMessage.Text != null ? txb_InputMessage.Text : "no text";
            var textMessage = new AVIMTextMessage(text);

            await this.client.SendMessageAsync(this.conversation, textMessage);
        }
Exemple #3
0
        private async void SendExecuteAsync()
        {
            var textMessage = new AVIMTextMessage(this.InputText);
            //await ConversationInSession.SendMessageAsync(textMessage);

            var emojiMessage = new Emoji()
            {
                Ecode = "#e001",
            };
            //await ConversationInSession.SendMessageAsync(emojiMessage);

            var emojiV2Message = new EmojiV2("#e001");
            //await ConversationInSession.SendMessageAsync(emojiV2Message);

            var text          = "I love Unity";
            var textBytes     = System.Text.Encoding.UTF8.GetBytes(text);
            var binaryMessage = new BinaryMessage(textBytes);
            await ConversationInSession.SendMessageAsync(binaryMessage);

            //await SendBinaryMessageAsync();
            //App.Current.Dispatcher.Invoke((Action)delegate
            //{
            //    var item = new MessageViewModel(textMessage);
            //    MessagesInSession.Add(item);
            //    this.SelectedItem = item;
            //});
            this.InputText = "";
        }
        public async Task CustomAttr()
        {
            var mre = new ManualResetEvent(false);
            var r0  = Utils.NewRealtime();
            var c0  = await r0.CreateClientAsync("mt1_c0");

            var r1 = Utils.NewRealtime();
            var c1 = await r1.CreateClientAsync("mt1_c1");

            c1.OnMessageReceived += (sender, e) => {
                if (e.Message is AVIMTextMessage)
                {
                    var textMsg = e.Message as AVIMTextMessage;
                    var world   = textMsg["hello"] as string;
                    Console.WriteLine(world);
                    Assert.AreEqual(world, "world");
                    mre.Set();
                }
            };

            var conv = await c0.CreateConversationAsync(new List <string> {
                "mt1_c1"
            });

            var msg = new AVIMTextMessage("the message with custom attributes");

            msg["hello"] = "world";
            await conv.SendMessageAsync(msg);

            mre.WaitOne();
        }
Exemple #5
0
        //用户发送消息,==》TODO:用户发送其他类型的消息
        private async void Btnsend_Click(object sender, RoutedEventArgs e)
        {
            Image a = new Image();

            if (send.Text != "")
            {
                try
                {
                    AVIMTextMessage textMessage = new AVIMTextMessage();
                    textMessage.TextContent = send.Text;
                    await Conversation.SendMessageAsync(textMessage);

                    InviteFriend.MessageList.Add(new Message(textMessage));
                    //TODO:
                    received.ItemsSource = null;
                    received.ItemsSource = InviteFriend.MessageList;
                    //聚焦最新的消息
                    received.ScrollIntoView(received.Items.GetItemAt(InviteFriend.MessageList.Count - 1));
                    send.Text = "";
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.Message);
                }
            }
        }
Exemple #6
0
        public MessageItem SendMessage(string text)
        {
            string nickname = string.Empty;
            string role     = string.Empty;

            try
            {
                nickname = VenueRtcCLI.VenueRTC.Instance.getNickName();
                role     = VenueRtcCLI.VenueRTC.Instance.getRole();
            }
            catch (Exception ex)
            {
                App.LogError(ex);
            }


            MessageItem newItem = new MessageItem();

            newItem.type     = 1;
            newItem.avatar   = "";
            newItem.nickName = nickname;
            newItem.content  = text;
            newItem.role     = role;

            itemList.Add(newItem);

            string textContent = JsonConvert.SerializeObject(newItem);

            var textMessage = new AVIMTextMessage(textContent);

            conversation.SendMessageAsync(textMessage);

            return(newItem);
        }
Exemple #7
0
 public void TestSendTextMessage()
 {
     this.GetTestConversation("junwu", "58be1f5392509726c3dc1c8b").ContinueWith(t =>
     {
         var conversation = t.Result;
         var textMessage  = new AVIMTextMessage("兄弟们,睡什么睡,起来嗨!");
         return(conversation.SendMessageAsync(textMessage));
     });
 }
Exemple #8
0
        static void TestRealtime()
        {
            Websockets.Net.WebsocketConnection.Link();

            //var appId = "Eohx7L4EMfe4xmairXeT7q1w-gzGzoHsz";
            //var appKey = "GSBSGpYH9FsRdCss8TGQed0F";

            AVRealtime.LogPrinter = Console.WriteLine;

            var client = AVIMClient.GetInstance("xxxxxxx");

            client.OnReceivedMessage += (message) => {
                Console.WriteLine("☎️  {0} received message", client.ClientId);
                if (message is AVIMTextMessage)
                {
                    Console.WriteLine("☎️  {0} received: {1}", client.ClientId, (message as AVIMTextMessage).Text);
                }
            };
            client.OnDisconnected += () => {
                Console.WriteLine("☎️  {0} is disconnected", client.ClientId);
            };
            client.OnReconnected += () => {
                Console.WriteLine("☎️  {0} is reconnected", client.ClientId);
            };

            //client.Open().ContinueWith(t => {
            //    Console.WriteLine("☎️  {0}", "client open done");
            //    var memberIds = new List<string> { "x", "y" };
            //    return client.CreateConversationAsync(memberIds);
            //}).Unwrap().ContinueWith(t => {
            //    Console.WriteLine("☎️  {0}", "conversation create done");
            //    Console.WriteLine(t.Result.rawData);
            //});

            client.Open().ContinueWith(t => {
                Console.WriteLine("☎️  {0}", "client open done");
                var memberIds = new List <string> {
                    "x", "y"
                };
                return(client.CreateConversationAsync(memberIds));
            }).Unwrap().ContinueWith(t => {
                Console.WriteLine("☎️  {0}", "conversation create done");
                Console.WriteLine(t.Result.rawData);
                var conv = t.Result;
                var msg  = new AVIMTextMessage {
                    Text = "hello, world",
                };
                return(conv.SendMessageAsync(msg));
            }).Unwrap().ContinueWith(t => {
                Console.WriteLine("☎️  {0}", "send message done");
            });
        }
Exemple #9
0
        public async Task TestSendTextMessage()
        {
            var client = await avRealtime.CreateClient("junwu");

            var conversation = await client.CreateConversationAsync("wchen",
                                                                    options : new Dictionary <string, object>()
            {
                { "type", "private" }
            });

            AVIMTextMessage textMessage = new AVIMTextMessage("f**k mono");
            await conversation.SendMessageAsync(textMessage);
        }
Exemple #10
0
    public void CreateRoom()
    {
        gameObject.SetActive(false);
        RoomHostPanel.SetActive(true);

        var protocol = new CreateRoom()
        {
            Name = UserInfo.User.Username + "的房间"
        };
        var message = new AVIMTextMessage(JsonUtility.ToJson(protocol));

        NetworkService.Instance.Broadcast(message);
    }
Exemple #11
0
        private async void btn_Send_Click(object sender, EventArgs e)
        {
            var text        = txb_InputMessage.Text != null ? txb_InputMessage.Text : "no text";
            var textMessage = new AVIMTextMessage(text);

            await this.client.SendMessageAsync(this.conversation, textMessage);

            lbx_messages.Invoke((MethodInvoker)(() =>
            {
                data.Add(new MessageVM()
                {
                    MetaData = textMessage
                });
                lbx_messages.Refresh();
                txb_InputMessage.Clear();
            }));
        }
Exemple #12
0
    public void TestSendTextMessage()
    {
        try
        {
            this.GetTestConversation("junwu", "58be1f5392509726c3dc1c8b").ContinueWith(t =>
            {
                var conversation = t.Result;
                Debug.Log(conversation.Name);
                var textMessage = new AVIMTextMessage("兄弟们,睡什么睡,起来嗨!");
                return(conversation.SendMessageAsync(textMessage));
            }).Unwrap().ContinueWith(s =>
            {
                if (s.IsFaulted)
                {
                    Debug.Log("IsFaulted");
                }
                if (s.Exception != null)
                {
                    var inner  = s.Exception.InnerException;
                    var inners = s.Exception.InnerExceptions;
                    if (inner != null)
                    {
                        Debug.Log("inner");
                        Debug.Log(inner.Message);
                    }

                    if (inners != null)
                    {
                        Debug.Log("inners");
                        foreach (var e in inners)
                        {
                            Debug.Log(e.Message);
                        }
                    }
                }
            });
        }
        catch (Exception ex)
        {
            Debug.Log(ex.Message);
        }
    }
        public async Task ModifyMessage()
        {
            var    mre   = new ManualResetEvent(false);
            string msgId = null;
            var    r     = Utils.NewRealtime();
            var    c     = await r.CreateClientAsync("mt0_c0");

            c.OnMessageUpdated += (sender, e) => {
                Assert.AreEqual(msgId, e.Message.Id);
            };
            var chatroom = await c.CreateConversationAsync("leancloud");

            var textMsg = new AVIMTextMessage("hello");
            var msg     = await chatroom.SendMessageAsync(textMsg);

            var newMsg = new AVIMTextMessage("hi");

            msg = await chatroom.UpdateAsync(msg, newMsg);

            msgId = msg.Id;
        }
        private void currentConversation_OnTextMessageReceived(object sender, AVIMTextMessage e)
        {
            var selection = (AVIMConversation)sender;

            var flag = currentConversation != null;

            if (flag)
            {
                flag = selection.ConversationId == currentConversation.ConversationId;
            }
            if (flag)
            {
                RefreshUI(() =>
                {
                    CacheMessage(selection, e);
                });
            }
            else
            {
                CacheMessage(selection, e);
            }
        }
Exemple #15
0
        public void SendTextMessage()
        {
            var textMessage = new AVIMTextMessage("人民的名义挺好看的");

            conversation.SendMessageAsync(textMessage);
        }
Exemple #16
0
 void conversation_OnTextMessageReceived(object sender, AVIMTextMessage e)
 {
     var text = e.TextContent;
 }
Exemple #17
0
        private MessageItem fromIMTextMessage(AVIMTextMessage textMessage)
        {
            MessageItem newItem = JsonConvert.DeserializeObject <MessageItem>(textMessage.TextContent);

            return(newItem);
        }