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();
        }
Ejemplo n.º 2
0
    public Task <AVIMConversation> GetTestConversation(string clientId, string convId)
    {
        return(GetClient(clientId).ContinueWith(t =>
        {
            if (t.IsFaulted)
            {
                Debug.Log("IsFaulted");
            }
            if (t.Exception != null)
            {
                var inner = t.Exception.InnerException;
                var inners = t.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);
                    }
                }
            }
            MyWebSocketClient.ClientInstance = t.Result;
            var conversation = AVIMConversation.CreateWithoutData(convId, MyWebSocketClient.ClientInstance);
            return conversation;
        }));
    }
Ejemplo n.º 3
0
 public Task TestCase()
 {
     return(AVRealtime.Instance.CreateClient("junwu").ContinueWith(t =>
     {
         var client = t.Result;
         var conversation = AVIMConversation.CreateWithoutData("", t.Result);
         return t.Result.SendMessageAsync(conversation, new AVIMTextMessage("haha"), options: new AVIMSendOptions());
     }));
 }
Ejemplo n.º 4
0
 public Task <AVIMConversation> GetTestConversation(string clientId, string convId)
 {
     return(GetClient(clientId).ContinueWith(t =>
     {
         MyWebSocketClient.ClientInstance = t.Result;
         var conversation = AVIMConversation.CreateWithoutData(convId, MyWebSocketClient.ClientInstance);
         return conversation;
     }));
 }
Ejemplo n.º 5
0
 public void QueryMessageBeforeMessageIdTest()
 {
     this.realtime.CreateClientAsync("1001").ContinueWith(t =>
     {
         client   = t.Result;
         var conv = AVIMConversation.CreateWithoutData("5b1a40295b90c830ff7f2ec7", client);
         return(client.QueryMessageAsync(conv, "h3tXZM3rQa+goG7N6_DaKg"));
     }).Unwrap().ContinueWith(s =>
     {
         var messages = s.Result;
     }).Wait();
 }
        public void Conversation_Join()
        {
            AVClient.Initialize("uay57kigwe0b6f5n0e1d4z4xhydsml3dor24bzwvzr57wdap", "kfgz7jjfsk55r5a8a3y4ttd3je1ko11bkibcikonk32oozww");
            var client = new AVIMClient("John");

            client.UseLeanEngineSignatureFactory();

            client.ConnectAsync().ContinueWith(_ =>
            {
                AVIMConversation consersation = AVIMConversation.CreateWithoutData("575e88521532bc0060995d32", client);
                consersation.JoinAsync().Wait();
            }).Wait();
        }
Ejemplo n.º 7
0
        private async void btn_create_Click(object sender, EventArgs e)
        {
            //var isTransient = ckb_isTransient.Checked;
            //conversation = await client.CreateConversationAsync(txb_friend.Text.Trim());
            conversation = AVIMConversation.CreateWithoutData(txb_convId.Text.Trim(), this.client);
            var messageInterator = conversation.GetMessagePager();
            var lastestMessages  = await messageInterator.PreviousAsync();

            BindMessagesToUI(lastestMessages);
            //var lastestMessages2 = await messageInterator.PreviousAsync();
            //BindMessagesToUI(lastestMessages2);


            //messageInterator.From = DateTime.Now.AddDays(-1);
            //var afterMessages = await messageInterator.NextAsync();
            //BindMessagesToUI(afterMessages);
            //var afterMessages2 = await messageInterator.NextAsync();
            //BindMessagesToUI(afterMessages2);
        }
Ejemplo n.º 8
0
    Task <AVIMConversation> GetTestConversation(string clientId, string convId)
    {
        Func <Task <AVIMClient> > getClient = () =>
        {
            if (MyWebSocketClient.ClientInstance != null)
            {
                return(Task.FromResult <AVIMClient>(MyWebSocketClient.ClientInstance));
            }

            return(AVRealtime.Instance.CreateClient(clientId));
        };

        return(getClient().ContinueWith(t =>
        {
            MyWebSocketClient.ClientInstance = t.Result;
            var conversation = AVIMConversation.CreateWithoutData(convId, MyWebSocketClient.ClientInstance);
            return conversation;
        }));
    }
    public void JoinLobby()
    {
        _avRealtime.CreateClientAsync(UserInfo.User).ContinueWith(t => _client = t.Result).ContinueWith(s =>
        {
            _client.OnMessageReceived += OnMessageReceived;
            Debug.Log("Joining");
            // 构建对话的时候需要指定一个 AVIMClient 实例做关联
            _lobbyConversation = AVIMConversation.CreateWithoutData(ConversationId, _client);
            _client.JoinAsync(_lobbyConversation).ContinueWith(a =>
            {
                if (a.IsFaulted)
                {
                    _lobbyConversation = null;
                    Debug.Log("Join failed");

                    return;
                }
                Debug.Log("Joined and sending message");
            });
        });
    }