Example #1
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");
            });
        }