Exemple #1
0
        public static void RefleshTeamList(TeamChatCreateOrUpdateRequest teamList)
        {
            IsTeamChatChanged = true;
            var list = GetTeamChatList();

            foreach (TeamInfo teamInfo in teamList.TeamInfos)
            {
                var chatStore = list.FirstOrDefault(d => d.ChatUserName == teamInfo.groupid);
                if (chatStore != null)
                {
                    chatStore.ChatDisplayName = teamInfo.groupname;
                    chatStore.TeamMembers     = teamInfo.groupuserList;
                }
                else
                {
                    ChatStore info = new ChatStore();
                    info.ChatDisplayName = teamInfo.groupname;
                    info.ChatStartTime   = DateTime.Now;
                    info.ChatType        = ChatType.TeamChat;
                    info.ChatUserName    = teamInfo.groupid;
                    info.UserType        = ClientRole.Teacher;
                    info.MessageList     = new List <ChatMessage>();
                    info.TeamMembers     = teamInfo.groupuserList;
                    ChatList.Add(info);
                }
            }
        }
Exemple #2
0
        public void Send_CreateTeam(TeamChatCreateOrUpdateRequest request)
        {
            SendMessage <TeamChatCreateOrUpdateRequest> message = new SendMessage <TeamChatCreateOrUpdateRequest>();

            message.Action = (int)CommandType.CreateTeam;
            message.Data   = request;

            Task.Run(async() =>
            {
                await this.SendMessage(message);
            });
        }
Exemple #3
0
        public static void LoadTeamFromXML()
        {
            string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "TeamXML");

            if (!Directory.Exists(path))
            {
                return;
            }
            string fileName = Path.Combine(path, "群组" + LoginUserInfo.UserName + ".xml");

            if (!File.Exists(fileName))
            {
                return;
            }
            TeamXmlInfo info = XmlHelper.DeserializeFromFile <TeamXmlInfo>(fileName);
            TeamChatCreateOrUpdateRequest loadTeam = new TeamChatCreateOrUpdateRequest();

            loadTeam.TeamInfos = info.Teams;
            RefleshTeamList(loadTeam);
        }
Exemple #4
0
        public static void SendCommand_CreateOrUpdateTeam()
        {
            TeamChatCreateOrUpdateRequest request = new TeamChatCreateOrUpdateRequest();

            request.TeamInfos = new List <TeamInfo>();
            var list = GetTeamChatList();

            SaveTeamXML(list);
            TeamInfo info;

            foreach (ChatStore item in list)
            {
                info               = new TeamInfo();
                info.groupname     = item.ChatDisplayName;
                info.groupid       = item.ChatUserName;
                info.groupuserList = item.TeamMembers.ToList();
                request.TeamInfos.Add(info);
            }
            client.Send_CreateTeam(request);
        }
Exemple #5
0
 /// <summary>
 /// 创建群组
 /// </summary>
 /// <param name="request"></param>
 public void Send_CreateTeam(TeamChatCreateOrUpdateRequest request)
 {
     SendMessage(request, CommandType.CreateTeam);
 }