Beispiel #1
0
        /// <summary>
        /// 删除聊天室成员
        /// </summary>
        /// <returns></returns>
        public ActionResult DelChatRoomUser()
        {
            try
            {
                NameValueCollection parmas = WorkContext.postparms;
                string hxurl = root + "/chatrooms/" + parmas["chatroomid"] + "/users/" + parmas["mobile"];
                MD_AccessTokenResult token = Lottery.GetAccessToken();

                string chats = WebHelper.GetHXRequestData(hxurl, "delete", token.SuccessResult.access_token, true, "");
                if (chats.Contains("error"))
                {
                    ErrorMsg errm = JsonConvert.DeserializeObject <ErrorMsg>(chats);
                    return(APIResult("error", errm.error_description));
                }
                else
                {
                    MD_HXRoomData room = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);

                    if (room.data[0].result)
                    {
                        return(APIResult("success", "删除成功"));
                    }
                }

                return(APIResult("error", "删除失败"));
            }
            catch (Exception ex)
            {
                return(APIResult("error", "删除失败"));
            }
        }
Beispiel #2
0
        /// <summary>
        /// 删除聊天室(MVC 不支持Delete)
        /// </summary>
        /// <returns></returns>
        public ActionResult DelChatRoom()
        {
            try
            {
                string hxurl = root + "/chatrooms";
                MD_AccessTokenResult token = Lottery.GetAccessToken();

                //获取聊天室信息
                hxurl += "?pagenum=1&pagesize=24";
                string        chats = WebHelper.GetHXRequestData(hxurl, "get", token.SuccessResult.access_token, true, "");
                MD_HXRoomData room  = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);

                foreach (MD_RoomData rd in room.data)
                {
                    hxurl = root + "/chatrooms/" + rd.id.ToString();
                    chats = WebHelper.GetHXRequestData(hxurl, "delete", token.SuccessResult.access_token, true, "");
                    room  = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);
                }
                return(APIResult("success", "删除成功", true));
            }
            catch (Exception ex)
            {
                return(APIResult("error", "删除失败", true));
            }
        }
Beispiel #3
0
        /// <summary>
        /// 发送消息
        /// </summary>
        /// <returns></returns>
        private ActionResult SendMsgs()
        {
            try
            {
                string hxurl = root + "/messages";
                MD_AccessTokenResult token = Lottery.GetAccessToken();

                //获取聊天室信息
                string        ptdata = "{\"target_type\":\"chatrooms\",\"target\":[\"275831248121758236\"], \"msg\":{\"type\":\"txt\",\"msg\":\"hello from rest\"},\"from\":\"8001\"}";
                string        chats  = WebHelper.GetHXRequestData(hxurl, "post", token.SuccessResult.access_token, true, ptdata);
                MD_HXRoomData room   = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);
                string        data   = JsonConvert.SerializeObject(room.data.OrderBy(x => x.id));
                return(APIResult("success", data, true));
            }
            catch (Exception ex)
            {
                return(APIResult("error", "获取失败", true));
            }
        }
Beispiel #4
0
        /// <summary>
        /// 获取聊天室
        /// </summary>
        /// <returns></returns>
        public List <MD_RoomData> GetChatRoomList()
        {
            List <MD_RoomData> listroom = MemoryCacheHelper.GetCacheItem <List <MD_RoomData> >("allchatrooms", delegate()
            {
                List <MD_RoomData> list    = new List <MD_RoomData>();
                string hxurl               = "https://a1.easemob.com/1117170524115941/lk28/chatrooms";
                MD_AccessTokenResult token = Lottery.GetAccessToken();

                //获取聊天室信息
                hxurl             += "?pagenum=1&pagesize=24";
                string chats       = WebHelper.GetHXRequestData(hxurl, "get", token.SuccessResult.access_token, true, "");
                MD_HXRoomData room = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);
                list = room.data;
                return(list);
            },
                                                                                               new TimeSpan(24, 0, 0)//过期
                                                                                               );

            return(listroom);
        }
Beispiel #5
0
        /// <summary>
        /// 获取聊天室
        /// </summary>
        /// <returns></returns>
        public ActionResult GetChatRoom()
        {
            try
            {
                string hxurl = root + "/chatrooms";
                MD_AccessTokenResult token = Lottery.GetAccessToken();

                //获取聊天室信息
                hxurl += "?pagenum=1&pagesize=24";
                string                 chats    = WebHelper.GetHXRequestData(hxurl, "get", token.SuccessResult.access_token, true, "");
                MD_HXRoomData          room     = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);
                JsonSerializerSettings jsetting = new JsonSerializerSettings();
                jsetting.ContractResolver = new JsonLimitOutPut(new string[] { "id", "name", "owner", "affiliations_count" }, true);

                string data = JsonConvert.SerializeObject(room.data.OrderBy(x => x.id), jsetting);
                return(APIResult("success", data, true));
            }
            catch (Exception ex)
            {
                return(APIResult("success", "获取失败", true));
            }
        }
Beispiel #6
0
        /// <summary>
        /// 房间在线人数
        /// </summary>
        /// <returns></returns>
        public ActionResult RoomOnline()
        {
            try
            {
                NameValueCollection parmas = WorkContext.postparms;

                string hxurl = root + "/chatrooms";
                MD_AccessTokenResult token = Lottery.GetAccessToken();

                string type = parmas["type"];
                if (type == "10")
                {
                    type = "bj";
                }
                else if (type == "11")
                {
                    type = "cakeno";
                }

                //获取聊天室信息
                hxurl += "?pagenum=1&pagesize=24";
                string             chats  = WebHelper.GetHXRequestData(hxurl, "get", token.SuccessResult.access_token, true, "");
                MD_HXRoomData      room   = JsonConvert.DeserializeObject <MD_HXRoomData>(chats);
                List <MD_RoomData> dtlist = room.data.FindAll(x => x.name.Contains(type));

                string[]      rooms = new string[] { "fir", "sec", "thr" };
                StringBuilder strb  = new StringBuilder();

                int rmtotal = 0;
                strb.Append("[");
                foreach (string rmstr in rooms)
                {
                    strb.Append("{");
                    List <MD_RoomData> items = dtlist.FindAll(x => x.name.Contains(rmstr));
                    for (int i = 1; i < 5; i++)
                    {
                        MD_RoomData rmdt = items.OrderBy(x => x.id).First(x => x.name.Contains("vip" + i.ToString()));
                        strb.Append("\"vip" + i.ToString() + "\":" + rmdt.affiliations_count + ",");
                        rmtotal += rmdt.affiliations_count;
                    }
                    if (strb.Length > 1)
                    {
                        strb = strb.Remove(strb.Length - 1, 1);
                    }
                    strb.Append(",\"rmtotal\":" + rmtotal.ToString() + "},");


                    rmtotal = 0;
                }
                if (strb.Length > 1)
                {
                    strb = strb.Remove(strb.Length - 1, 1).Append("]");
                }

                //JsonSerializerSettings jsetting = new JsonSerializerSettings();
                //string data = JsonConvert.SerializeObject(strb.ToString()).ToLower();

                return(APIResult("success", strb.ToString(), true));
            }
            catch (Exception ex)
            {
                return(APIResult("error", "获取失败"));
            }
        }