private CoolQRouteMessage AddCount(CoolQRouteMessage cm) { string user = cm.UserId, group = cm.GroupId; try { Logger.Warn("发现好图,存了"); if (!UserCount.ContainsKey(user)) { UserCount.Add(user, 2); } UserCount[user]--; if (UserCount[user] != 0) { return(cm.ToSource("?", true)); } else { UserCount[user] = 2; CoolQHttpApiClient.SetGroupBan(group, user, (int)(0.5 * 60 * 60)); return(cm.ToSource("?", true)); } } finally { SaveSettings(UserCount); } }
public override CoolQRouteMessage OnMessageReceived(CoolQScopeEventArgs scope) { var routeMsg = scope.RouteMessage; if (routeMsg.GroupId == "133605766") { return(null); } if (routeMsg.GroupId == null) { return(null); } if (routeMsg.ArgString.Trim() == "") { return(routeMsg.ToSource("要睡多少小时呀??", true)); } double sleepTime; if (SleepTime > 12) { sleepTime = 12; } else if (SleepTime < 0.5) { sleepTime = 0.5; } else if (SleepTime > 0) { sleepTime = SleepTime; } else { return(routeMsg.ToSource("穿越是不可以的……", true)); } DateTime dt = new DateTime(); dt = dt.AddHours(sleepTime); int s = (int)(dt.Ticks / 10000000); CoolQHttpApiClient.SetGroupBan(routeMsg.GroupId, routeMsg.UserId, s); string msg = "祝你一觉睡到" + DateTime.Now.AddHours(sleepTime).ToString("HH:mm") + " :D"; return(routeMsg.ToSource(msg, true)); }
public override CoolQRouteMessage OnMessageReceived(CoolQScopeEventArgs scope) { var routeMsg = scope.RouteMessage; // 查黄图 if (routeMsg.Group == null || routeMsg.GroupId != "133605766") { return(null); } var imgList = CoolQCode.GetImageInfo(routeMsg.RawMessage); if (imgList == null) { return(null); } List <string> urlList = new List <string>(); List <CosObject> cacheList = new List <CosObject>(); foreach (var item in imgList) { if (Md5List.Keys.Contains(item.Md5)) { cacheList.Add(Md5List[item.Md5]); } else if (item.Size > 1000 * 60) //60KB { urlList.Add(item.Url); } } if (urlList.Count == 0 && cacheList.Count == 0) { return(null); } Logger.Warn("发现了" + (urlList.Count + cacheList.Count) + "张图"); CosAnalyzer model = new CosAnalyzer { result_list = new List <CosObject>() }; if (urlList.Count != 0) { string str = Newtonsoft.Json.JsonConvert.SerializeObject(new { appid = "1252749411", url_list = urlList.ToArray() }); var abc = WebRequest.CreatePostHttpResponse( "http://service.image.myqcloud.com/detection/porn_detect", str, authorization: Signature.Get()); var respStr = WebRequest.GetResponseString(abc); model = Newtonsoft.Json.JsonConvert.DeserializeObject <CosAnalyzer>(respStr); } model.result_list.AddRange(cacheList); int i = 0; foreach (var item in model.result_list) { if (i < imgList.Length && !Md5List.Keys.Contains(imgList[i].Md5)) { Md5List.Add(imgList[i].Md5, item); } i++; switch (item.data.result) { case 0 when item.data.normal_score > item.data.hot_score && item.data.normal_score > item.data.porn_score && item.data.confidence > 40: continue; case 1: case 2: CoolQHttpApiClient.SetGroupBan(routeMsg.GroupId, routeMsg.UserId, 24 * 60 * 60); return(routeMsg.ToSource("...")); default: break; } if (item.data.porn_score >= item.data.hot_score && item.data.porn_score > 65) { return(AddCount(routeMsg)); } if (item.data.hot_score >= item.data.porn_score && item.data.hot_score > item.data.normal_score && item.data.hot_score > 80) { return(AddCount(routeMsg)); } break; } return(null); //if (user != "2241521134") return null; }