Example #1
0
        public async void CreateGroupChat()
        {
            var groupChat = await client.CreateConversationAsync(members : new string[] { "Jerry", "Harry" });

            await client.InviteAsync(groupChat, "Bob");

            await client.KickAsync(groupChat, "Harry");

            await client.LeftAsync(groupChat);
        }
Example #2
0
 //右键快捷菜单“删除好友”
 private void ContextMenuDelete_Click(object sender, RoutedEventArgs e)
 {
     App.Current.Dispatcher.Invoke((Action)(async() =>
     {
         UserList friend = MyFriendsList[friendlist.SelectedIndex];
         if (MessageBox.Show("确定要删除" + friend.Name + "吗", "警告", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
         {
             //移除listitem,再重新绑定listitemsource
             MyFriendsList.RemoveAt(friendlist.SelectedIndex);
             friendlist.ItemsSource = null;
             friendlist.ItemsSource = MyFriendsList;
             new Tip("提示", "已成功解除与" + friend.Name + "的好友关系", 3).Show();
             //将对方踢出自己的FriendsConversation,对方触发onkick事件
             await User.KickAsync(FriendsConversation, member: friend.Friend.ObjectId);
             //再将双方单独的_Conversation删除
             try
             {
                 List <string> members = new List <string>();
                 members.Add(AVUser.CurrentUser.ObjectId);
                 members.Add(friend.Friend.ObjectId);
                 await(await AVObject.GetQuery("_Conversation").WhereEqualTo("m", members).FirstAsync()).DeleteAsync();
             }
             catch
             {
                 try
                 {
                     List <string> members = new List <string>();
                     members.Add(friend.Friend.ObjectId);
                     members.Add(AVUser.CurrentUser.ObjectId);
                     await(await AVObject.GetQuery("_Conversation").WhereEqualTo("m", members).FirstAsync()).DeleteAsync();
                 }
                 catch
                 {
                     MessageBox.Show("你早就被人家拉黑了");
                 }
             }
             //重新获取FriendsConversation
             FriendsConversation = await User.GetConversationAsync(AVUser.CurrentUser.Get <string>("Friends"));
         }
     }));
 }