Пример #1
0
        public JsonResult Audit(FormCollection collection)
        {
            if (collection == null)
            {
                return(Json(new { result = 0, code = 11, message = "" }));
            }
            string userToken = _convert.ObjectConvert.ChangeType <string>(Request.Headers["usertoken"] ?? collection["usertoken"]);
            string msgid     = _convert.ObjectConvert.ChangeType <string>(Request.Headers["msgid"] ?? collection["msgid"]);

            Niu.Live.User.IModel.TokenManager.TokenUserInfo userInfo;
            Niu.Live.User.Provider.TokenManager.TokenManager.ValidateUserToken(userToken, out userInfo);
            if (userInfo == null)
            {
                return(Json(new { result = 0, code = 13, message = "token error" }));
            }
            if (userInfo.userId > 0 & userInfo.roleId > 1)
            {
                if (Niu.Live.Chat.DataAccess.Chatroom.AuditMsg(new { admin = userInfo.userId, msgid = msgid }))
                {
                    Niu.Cabinet.Logging.LogRecord log = new Cabinet.Logging.LogRecord("logpath");
                    //审核完成再发一条信息过去.
                    var temp = Chat.Core.Access.Chatroom.ChatroomGetMsg(msgid);
                    var obj  = Newtonsoft.Json.JsonConvert.DeserializeObject <MsgContent>(temp.ext);
                    obj.isAudit = 1;
                    obj.msgId   = Guid.NewGuid().ToString().Substring(0, 31);
                    var _ext = Newtonsoft.Json.JsonConvert.SerializeObject(obj);
                    log.WriteSingleLog("auditsendmsg.txt", string.Format("审核人:{0} 信息: {1}", userInfo.nickName, _ext));
                    Niu.Live.Chat.DataAccess.Chatroom.UpContent(new { msgid = msgid, ext = _ext, newmsgid = obj.msgId });
                    Niu.Live.Chat.Core.Provider.Chatroom.NeteaseIm_SendMsg(obj.msgId, ChatroomMessageType.Custom, temp.roomId, temp.fromAccId, 0, temp.attach, _ext, temp.IsManger, 0, temp.RoleId);
                    return(Json(new { result = 1, code = 0, message = "" }));
                }
            }
            return(Json(new { result = 0, code = 0, message = "auth failed" }));
        }
Пример #2
0
        /// <summary>
        /// 获取聊天室TOP 指数
        /// </summary>
        /// <param name="topn"></param>
        /// <param name="timestamp"></param>
        /// <param name="period"></param>
        /// <param name="orderby"></param>
        /// <returns></returns>
        public JsonResult getTopN(int topn, long timestamp = 0, string period = "hour", string orderby = "active")
        {
            Niu.Cabinet.Logging.LogRecord log = new Cabinet.Logging.LogRecord("logpath");
            log.WriteSingleLog("SendMsg.txt", string.Format("进入查询聊天室统计指标getTopN ,topn:{0};timestamp:{1};period:{2} ;orderby:{3},result:{4}", topn, timestamp, period, orderby, ""));

            Im_Chatroom result;
            string      errorMsg = string.Empty;

            try
            {
                result = Chatroom.NeteaseIm_RoomTopN(topn, timestamp, period, orderby);
                if (result != null)
                {
                    return(Json(new { result = 0, code = 1, data = result, message = "操作成功" }));
                }
            }
            catch (Exception ex)
            {
                errorMsg += ex.ToString();
            }

            return(Json(new { result = 1, code = 0, data = "", message = "操作失败" + errorMsg }));
        }