public static QnAMakerResult Get(string knowledgebaseId, string qnamakerSubscriptionKey, string Query) { string responseString = string.Empty; QnAMakerResult response; try { //Build the URI Uri qnamakerUriBase = new Uri(QnAMakerURL); var builder = new UriBuilder($"{qnamakerUriBase}/knowledgebases/{knowledgebaseId}/generateAnswer"); QQ q = new QQ(); q.question = Query; var postBody = JsonConvert.SerializeObject(q); //var postBody = $"{{\"question\": \"{Query}\"}}"; //Send the POST request using (WebClient client = new WebClient()) { //Add the subscription key header client.Headers.Add("Ocp-Apim-Subscription-Key", qnamakerSubscriptionKey); client.Headers.Add("Content-Type", "application/json"); client.Encoding = System.Text.Encoding.UTF8; responseString = client.UploadString(builder.Uri, postBody); } //De-serialize the response response = JsonConvert.DeserializeObject <QnAMakerResult>(responseString); } catch (Exception EQ) { response = new QnAMakerResult(); response.Score = 50; response.Answer = "Error:" + EQ.Message; } return(response); }
/// <summary> /// 跟某人聊天的频次 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnFrep_Click(object sender, EventArgs e) { try { QQ q = new QQ(); Dictionary <string, int> list = q.StatCount(txtPath.Text, txtParam.Text); string msg = string.Empty; if (list != null && list.Count > 0) { foreach (var item in list) { msg += string.Format("{0}\t{1}\r\n", item.Key, item.Value); } txtContent.Text = msg; Utility.ShowMessage("获取成功!"); } else { Utility.ShowMessage("无消息记录!"); } } catch (Exception ex) { Utility.ShowError(ex.Message); } }
protected void Page_Load(object sender, EventArgs e) { string backurl = RequestTool.RequestString("backurl"); int IsLogin = 0; if (backurl.ToLower().IndexOf(URL("P_Login", "").ToLower()) > -1) { IsLogin = 1; } if (backurl == "" || backurl.ToLower().IndexOf(URL("P_Login", "").ToLower()) > -1 || backurl.ToLower().IndexOf(URL("P_Register", "").ToLower()) > -1 || backurl.ToLower().IndexOf(URL("P_FindPassword", "").ToLower()) > -1) { backurl = URL("P_UserCenter", ""); } string res = QQ.GetInstance(DT_id).Login(backurl, IsLogin, DT_id); if (res == "OK") { Response.Redirect(QQ.Instance.DEBackuri(backurl)); //if (backurl == "") // Response.Redirect("../"); //else //{ // Response.Redirect(QQ.Instance.DEBackuri(backurl)); //} } else { Response.Write(res); } }
/// <summary> /// 初始化 <see cref="CQFriendAddEventArgs"/> 类的新实例 /// </summary> /// <param name="api">酷Q的接口实例</param> /// <param name="log">酷Q的日志实例</param> /// <param name="id">事件Id</param> /// <param name="type">事件类型</param> /// <param name="name">事件名称</param> /// <param name="function">函数名称</param> /// <param name="priority">默认优先级</param> /// <param name="subType">子类型</param> /// <param name="sendTime">发送时间</param> /// <param name="fromQQ">来源QQ</param> public CQFriendAddEventArgs(CQApi api, CQLog log, int id, int type, string name, string function, uint priority, int subType, int sendTime, long fromQQ) : base(api, log, id, type, name, function, priority) { this.SubType = (CQFriendAddType)subType; this.SendTime = sendTime.ToDateTime(); this.FromQQ = new QQ(api, fromQQ); }
public override object ExecuteHaveAuth() { AppInfo appInfo = this.App.Library.AppInfo; // 向数据池中查询QQ QQ qq = this.Simulator.DataPool.QQCollection.Where(p => p.Id == this.FromQQ).FirstOrDefault(); if (qq == null) { Logger.Instance.Error(appInfo.Name, TYPE_SEND_LINK, $"无法向 [QQ: {this.FromQQ}] 发送赞, 未查询到与该QQ的关系"); return(RESULT_NO_RELATIONSHIP); } else { if (qq.SetLink(this.Count)) { Logger.Instance.InfoSuccess(appInfo.Name, TYPE_SEND_LINK, $"成功为 [QQ: {this.FromQQ}] 点了 {this.Count} 个赞"); return(RESULT_SUCCESS); } else { Logger.Instance.Info(appInfo.Name, TYPE_SEND_LINK, $"为 [QQ: {this.FromQQ}] 的点赞数已满"); return(RESULT_LINK_OVERFLOW); } } }
private void tab1Init() { BotQQ = CQ.Api.GetLoginQQ(); bindingSource_StudentDB.DataSource = EasOP.GetAll(Convert.ToString(BotQQ.Id)); dataGridView_StuList.DataSource = bindingSource_StudentDB; stuDataGridView.DataSource = bindingSource_StudentDB; tb_QQ.Text = ini.Read(AppDirectory + @"\配置.ini", "主人信息", "QQ", ""); tb_StuID.Text = ini.Read(AppDirectory + @"\配置.ini", "主人信息", "学号", ""); if (ini.Read(AppDirectory + @"\配置.ini", "主人信息", "教务系统密码", "") != "") { tb_jwPw.Text = DESTool.Decrypt(ini.Read(AppDirectory + @"\配置.ini", "主人信息", "教务系统密码", ""), "jw*1"); } if (ini.Read(AppDirectory + @"\配置.ini", "成绩提醒", "启动", "") == "真") { label_sr1.Text = "本人新出成绩提醒:已开启"; } else { label_sr1.Text = "本人新出成绩提醒:已关闭"; } tb_ReminderTime.Text = ini.Read(AppDirectory + @"\配置.ini", "成绩提醒", "间隔", ""); }
public override object ExecuteHaveAuth() { AppInfo appInfo = this.App.Library.AppInfo; // 获取用来撤回消息的机器人QQ QQ qq = this.Simulator.DataPool.RobotQQ; // 根据消息 Id 查询是否存在目标消息 Message msg = this.Simulator.DataPool.MessageCollection.Where(p => p.Id == this.MsgId).FirstOrDefault(); if (msg == null) { Logger.Instance.Info(appInfo.Name, TYPE_MSG_UNDO, $"无法撤回消息 [ID: {this.MsgId}], 指定的消息不存在"); return(RESULT_MSG_NOT_FOUND); } else { bool result = false; // 如果是群消息 if (msg.FromGroup != null && msg.FromGroup == null) { // 获取当前机器人QQ在这个群的群成员信息 GroupMember robotMember = msg.FromGroup.MemberCollection.Where(p => p.Id == qq.Id).FirstOrDefault(); // 获取当前消息发送者QQ的群成员信息 GroupMember fromMember = msg.FromQQ as GroupMember; if (!robotMember.Equals(fromMember)) { // 如果 机器人QQ是管理并且消息来源QQ是群主 if (robotMember.MemberType == GroupMemberType.Manager && fromMember.MemberType == GroupMemberType.Creator) { Logger.Instance.Info(appInfo.Name, TYPE_MSG_UNDO, $"无法撤回消息"); return(RESULT_MSG_NOT_AUTHORIZE); } // 如果 机器人QQ是群主并且消息来源QQ是管理或群成员 或者 机器人QQ是管理并且消息来源QQ是群成员 if ((robotMember.MemberType == GroupMemberType.Creator && (fromMember.MemberType == GroupMemberType.Normal || fromMember.MemberType == GroupMemberType.Manager)) || (robotMember.MemberType == GroupMemberType.Manager && (fromMember.MemberType == GroupMemberType.Normal))) { // 强制撤回消息 result = msg.Revocation(true); } } } else { result = msg.Revocation(false); } if (result) { Logger.Instance.InfoSuccess(appInfo.Name, TYPE_MSG_UNDO, $"已撤回消息 [ID: {msg.Id}]"); return(RESULT_SUCCESS); } else { Logger.Instance.Info(appInfo.Name, TYPE_MSG_UNDO, $"撤回消息 [ID: {msg.Id}] 失败, 消息已发送超过 2分钟"); return(RESULT_MSG_OVERDUE); } } }
private void TbQQ_Click(object sender, EventArgs e) { using (var qq = new QQ()) { qq.ShowDialog(); } }
public static UserInfo Get(long qqNo) { string result = QLAPI.Api_GetQQInfo(qqNo.ToString(), QLMain.ac); //QLAPI.Api_SendLog("Debug", "Api_GetQQInfo:"+result, 0, QLMain.ac); if (string.IsNullOrEmpty(result)) { return(null); } var info = JsonConvert.DeserializeObject <JsonModel <QQJsonModel> >(result); var qq = info.Result.buddy.info_list[0]; var qqInfo = new QQ(); qqInfo.Id = qq.uin; qqInfo.Nick = qq.nick; qqInfo.Sex = (Sex)qq.gender; var user = Users.Find(p => p.QQ == qqNo); if (user != null) { user.Nick = qqInfo.Nick; user.Sex = qqInfo.Sex; } else { Users.Add(new UserInfo(qqInfo)); } return(user); }
/// <summary> /// 初始化 <see cref="CQGroupManageChangeEventArgs"/> 类的新实例 /// </summary> /// <param name="api">酷Q的接口实例</param> /// <param name="log">酷Q的日志实例</param> /// <param name="id">事件Id</param> /// <param name="type">事件类型</param> /// <param name="name">事件名称</param> /// <param name="function">函数名称</param> /// <param name="priority">默认优先级</param> /// <param name="subType">子类型</param> /// <param name="sendTime">发送时间</param> /// <param name="fromGroup">来源群</param> /// <param name="beingOperateQQ">被操作QQ</param> public CQGroupManageChangeEventArgs(CQApi api, CQLog log, int id, int type, string name, string function, uint priority, int subType, int sendTime, long fromGroup, long beingOperateQQ) : base(api, log, id, type, name, function, priority) { this.SubType = (CQGroupManageChangeType)subType; this.SendTime = sendTime.ToDateTime(); this.FromGroup = new Group(api, fromGroup); this.BeingOperateQQ = new QQ(api, beingOperateQQ); }
public AA(int qq) { tmp1 = 106; tmp2 = 107; tmp3 = 108; tmp4 = 109; tmp5 = 110; q = new QQ(qq); }
public AA(int qq) { tmp1 = 0; tmp2 = 0; tmp3 = 0; tmp4 = 0; tmp5 = 0; q = new QQ(qq); }
/// <summary> /// 初始化 <see cref="CQGroupMemberDecreaseEventArgs"/> 类的新实例 /// </summary> /// <param name="id">事件ID</param> /// <param name="type">事件类型</param> /// <param name="name">事件名称</param> /// <param name="function">函数名称</param> /// <param name="priority">默认优先级</param> /// <param name="subType">子类型</param> /// <param name="sendTime">发送时间</param> /// <param name="fromGroup">来源群</param> /// <param name="fromQQ">来源QQ</param> /// <param name="beingOperateQQ">被操作QQ</param> /// <param name="api">接口Api实例</param> public CQGroupMemberDecreaseEventArgs(int id, int type, string name, string function, uint priority, int subType, int sendTime, long fromGroup, long fromQQ, long beingOperateQQ, CQApi api) : base(id, type, name, function, priority) { this.SubType = (CQGroupMemberDecreaseType)subType; this.SendTime = sendTime.ToDateTime(); this.FromGroup = new Group(api, fromGroup); this.FromQQ = new QQ(api, fromQQ); this.BeingOperateQQ = new QQ(api, beingOperateQQ); }
public async Task <List <FriendInfo> > GetFriendsAsync() { var result = (await PostRequestAsync("Api_GetFriendList", new { 响应QQ = QQ.ToString() }))["Result"]; return(result.SelectToken("result.0.mems").Select(v => new FriendInfo() { Id = v["uin"].ToObject <long>(), NickName = v["name"].ToString() }).ToList()); }
public GroupMessageTaskContext(GroupMessageType subType, Group fromGroup, QQ fromQQ, GroupAnonymous fromAnonymous, Message msg, IntPtr font) : base(2) { base.SetValue(KeySubType, subType); base.SetValue(KeyFromGroup, fromGroup); base.SetValue(KeyFromQQ, fromQQ); base.SetValue(KeyFromAnonymous, fromAnonymous); base.SetValue(KeyMessage, msg); base.SetValue(KeyFont, font); }
/// <summary> /// 更新指定学生的成绩信息 失败将抛出异常 /// </summary> /// <param name="StuQQ">学生QQ</param> /// <returns>新成绩列表</returns> public static List <Score> UpdateScore(string StuQQ) { QQ BotQQ = CQ.Api.GetLoginQQ(); string AppDirectory = CQ.Api.AppDirectory; string StuID; string Pw; if (ini.Read(AppDirectory + @"\配置.ini", "主人信息", "QQ", "") == StuQQ) //是主人 { StuID = ini.Read(AppDirectory + @"\配置.ini", "主人信息", "学号", ""); Pw = DESTool.Decrypt(ini.Read(AppDirectory + @"\配置.ini", "主人信息", "教务系统密码", ""), "jw*1"); } else { StuID = ini.Read(AppDirectory + @"\配置.ini", StuQQ, "学号", ""); Pw = DESTool.Decrypt(ini.Read(AppDirectory + @"\配置.ini", StuQQ, "密码", ""), "jw*1"); } if (StuID == "" || Pw == "") { throw new UpdataErrorException("当前QQ未绑定教务系统账户。"); } EasLogin jwxt = new EasLogin(Convert.ToString(BotQQ.Id), StuQQ, StuID, Pw, 3); try { if (jwxt.TryLogin() == true) { EasGetNewScore jwscore = new EasGetNewScore(); return(jwscore.GetNewScore(jwxt)); } else { return(new List <Score>()); //空列表 } } catch (Exception ex) { if (ex.Message == "用户名/密码错误") { throw new UpdataErrorException("用户名或密码错误。"); } else if (ex.Message == "验证码错误") { throw new UpdataErrorException("验证码错误达到上限,请稍后再试。"); } else { CQ.Log.Error("发生错误", "错误信息:" + ex.GetType().ToString() + " " + ex.Message + "\n" + ex.StackTrace); throw new UpdataErrorException("发生未知错误,请联系机器人主人。"); } } }
/// <summary> /// 按时间逆向输出聊天记录 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnReverse_Click(object sender, EventArgs e) { try { QQ q = new QQ(); q.RevertChat(txtPath.Text); Utility.ShowMessage("转化成功!"); } catch (Exception ex) { Utility.ShowError(ex.Message); } }
static void Interrupter2_OnInterruptableTarget(Obj_AI_Hero sender, Interrupter2.InterruptableTargetEventArgs args) { if (!AIO_Menu.Champion.Misc.UseInterrupter || Player.IsDead) { return; } if (QQ.IsReady() && Player.HasBuff2("yasuoq3w") && !Dash.IsDashing(Player) && Player.Distance(sender.Position) <= QQ.Range) { QQ.Cast(sender.Position); } }
public ActionResult Auth() { string url = string.Empty; string vtype = RouteData.Values["id"]?.ToString().ToLower(); switch (vtype) { case "qq": url = QQ.AuthorizationHref(new QQ_Authorization_RequestEntity()); break; case "weibo": url = Weibo.AuthorizeHref(new Weibo_Authorize_RequestEntity()); break; case "github": url = GitHub.AuthorizeHref(new GitHub_Authorize_RequestEntity()); break; case "taobao": url = Taobao.AuthorizeHref(new Taobao_Authorize_RequestEntity()); break; case "microsoft": url = MicroSoft.AuthorizeHref(new MicroSoft_Authorize_RequestEntity()); break; } if (string.IsNullOrWhiteSpace(url)) { url = "/account/login"; } //已登录 && 从绑定页面点击 if (HttpContext.User.Identity.IsAuthenticated && Request.Headers["Referer"].ToString().ToLower().Contains("authbind")) { //写入绑定标识cookie var hc = new HttpCookie("AccountBindOAuth", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")) { Expires = DateTime.Now.AddMinutes(2) }; Response.Cookies.Add(hc); } else { //删除绑定标识 Response.Cookies.Remove("AccountBindOAuth"); } return(Redirect(url)); }
/// <summary> /// 向指定的QQ发送一条讨论组临时消息 /// </summary> /// <param name="responseQQ">响应此请求的QQ</param> /// <param name="fromDiscuss">目标QQ所在的群组</param> /// <param name="sendQQ">接收消息的目标QQ</param> /// <param name="message">要发送的消息内容</param> /// <returns>返回发送的消息 <see cref="Message"/> 实例</returns> public Message SendDiscussTempMessage(QQ responseQQ, Discuss fromDiscuss, QQ sendQQ, string message) { GCHandle messageHandle = message.GetStringGCHandle(Global.DefaultEncoding); try { int result = QQMiniApi.QMApi_SendMessage(this._authCode, responseQQ, MSG_DISCUSS_TEMP, fromDiscuss, sendQQ, messageHandle.AddrOfPinnedObject(), 0); CheckResultThrowException(result); return(new Message(0, 0, message)); } finally { messageHandle.Free(); } }
/// <summary> /// 向指定的群组发送一条消息 /// </summary> /// <param name="responseQQ">响应此请求的QQ</param> /// <param name="sendGroup">接收消息的目标群组</param> /// <param name="message">要发送的消息内容</param> /// <returns>返回发送的消息 <see cref="Message"/> 实例</returns> public Message SendGroupMessage(QQ responseQQ, Group sendGroup, string message) { GCHandle messageHandle = message.GetStringGCHandle(Global.DefaultEncoding); try { int result = QQMiniApi.QMApi_SendMessage(this._authCode, responseQQ, MSG_GROUP, sendGroup, 0, messageHandle.AddrOfPinnedObject(), 0); CheckResultThrowException(result); return(new Message(0, 0, message)); } finally { messageHandle.Free(); } }
/// <summary> /// 初始化 <see cref="CQGroupMemberIncreaseEventArgs"/> 类的新实例 /// </summary> /// <param name="api">酷Q的接口实例</param> /// <param name="log">酷Q的日志实例</param> /// <param name="id">事件Id</param> /// <param name="type">事件类型</param> /// <param name="name">事件名称</param> /// <param name="function">函数名称</param> /// <param name="priority">默认优先级</param> /// <param name="subType">子类型</param> /// <param name="sendTime">发送时间</param> /// <param name="fromGroup">来源群</param> /// <param name="fromQQ">来源QQ</param> /// <param name="beingOperateQQ">被操作QQ</param> public CQGroupMemberIncreaseEventArgs(CQApi api, CQLog log, int id, int type, string name, string function, uint priority, int subType, int sendTime, long fromGroup, long fromQQ, long beingOperateQQ) : base(api, log, id, type, name, function, priority) { this.SubType = (CQGroupMemberIncreaseType)subType; this.SendTime = sendTime.ToDateTime(); this.FromGroup = new Group(api, fromGroup); if (fromQQ >= QQ.MinValue) { this.FromQQ = new QQ(api, fromQQ); } if (beingOperateQQ >= QQ.MinValue) { this.BeingOperateQQ = new QQ(api, beingOperateQQ); } }
public async Task <bool> SendGroupMessageAsync(long groupId, SendingMessage message) { using (var client = HttpClientExtensions.CreateClient()) { await client.PostJsonAsync(ListenUrl + "Api_SendMsg", new { 响应QQ = QQ.ToString(), 信息类型 = MahuaMessageType.Group, 收信对象群_讨论组 = groupId.ToString(), 收信QQ = groupId.ToString(), 内容 = message.ToString(), 气泡ID = 0 }); } return(true); }
static void Drawing_OnDraw(EventArgs args) { if (Player.IsDead) { return; } var drawQ = AIO_Menu.Champion.Drawings.Qrange; var drawW = AIO_Menu.Champion.Drawings.Wrange; var drawE = AIO_Menu.Champion.Drawings.Erange; var drawR = AIO_Menu.Champion.Drawings.Rrange; var drawQQr = AIO_Menu.Champion.Drawings.getCircleValue("QQ Safe Range"); var drawEQ = AIO_Menu.Champion.Drawings.getCircleValue("EQ Range"); var QQTarget = TargetSelector.GetTarget(QQ.Range + Player.MoveSpeed * QQ.Delay, TargetSelector.DamageType.Magical); if (Q.IsReady() && drawQ.Active) { Render.Circle.DrawCircle(Player.Position, Q.Range, drawQ.Color); } if (EQ.IsReady() && drawEQ.Active) { Render.Circle.DrawCircle(Player.Position, EQ.Range, drawEQ.Color); } if (W.IsReady() && drawW.Active) { Render.Circle.DrawCircle(Player.Position, W.Range, drawW.Color); } if (E.IsReady() && drawE.Active) { Render.Circle.DrawCircle(Player.Position, E.Range, drawE.Color); } if (R.IsReady() && drawR.Active) { Render.Circle.DrawCircle(Player.Position, R.Range, drawR.Color); } if (QQ.IsReady() && drawQQr.Active && Player.HasBuff2("yasuoq3w") && QQTarget != null) { Render.Circle.DrawCircle(Player.Position, QQ.Range - QQTarget.MoveSpeed * QQ.Delay, drawQQr.Color); } }
/// <summary> /// QQ登录 /// </summary> /// <returns></returns> public ActionResult QQ() { var res = new QQ().Authorize(); if (res != null && res.code == 0) { var m = new ThirdPartyUserModel { Uid = res.result.Value <string>("openid"), Name = res.result.Value <string>("nickname"), Img = res.result.Value <string>("figureurl"), Token = res.token }; } return(null); }
public async Task <bool> SendGroupMessageAsync(long groupId, SendingMessage message) { using (var client = HttpClientExtensions.CreateClient()) { //NMD为啥MPQ变成了 ‘响应的QQ’了,太不上心了吧 await client.PostJsonAsync(ListenUrl + "Api_SendMsg", new { 响应的QQ = QQ.ToString(), 信息类型 = MahuaMessageType.Group, 参考子类型 = 0, 收信对象群_讨论组 = groupId.ToString(), 收信对象 = groupId.ToString(), 内容 = message.ToString(), }); return(true); } }
public static void BossResponse(object Sender, CQGroupMessageEventArgs GBossEventArgs, PCRGuildCmdType commandType) //功能响应 { if (GBossEventArgs == null) { throw new ArgumentNullException(nameof(GBossEventArgs)); } Group qqGroup = GBossEventArgs.FromGroup; QQ senderQQ = GBossEventArgs.FromQQ; GroupMemberInfo memberInfo = GBossEventArgs.CQApi.GetGroupMemberInfo(qqGroup.Id, senderQQ.Id); //index=0为命令本身,其余为参数 string[] commandArgs = GBossEventArgs.Message.Text.Split(' '); //数据库实例 //BossDBHelper bossDB = new BossDBHelper(Sender, GBossEventArgs); //接下来进行一系列操作 }
/// <summary> /// 获取QQ信息 /// </summary> /// <param name="qqId">目标QQ</param> /// <param name="qqInfo">返回QQ信息, 若获取失败, 返回null</param> /// <param name="notCache">不使用缓存, 默认为"False",通常忽略本参数,仅在必要时使用</param> /// <returns></returns> public int GetQQInfo(long qqId, out QQ qqInfo, bool notCache = false) { string result = CQP.CQ_getStrangerInfo(_authCode, qqId, notCache); if (string.IsNullOrEmpty(result)) { qqInfo = null; return(-1000); } UnPack unpack = new UnPack(Convert.FromBase64String(result)); qqInfo = new QQ(); qqInfo.Id = unpack.GetInt64(); qqInfo.Nick = unpack.GetString(Encoding.GetEncoding("GB18030")); qqInfo.Sex = (Sex)unpack.GetInt32(); qqInfo.Age = unpack.GetInt32(); return(0); }
/// <summary> /// 获取QQ信息 /// </summary> /// <param name="qqId">目标QQ</param> /// <param name="qqInfo">返回QQ信息, 若获取失败, 返回null</param> /// <param name="notCache">不使用缓存, 默认为"False",通常忽略本参数,仅在必要时使用</param> /// <returns></returns> public int GetQQInfo(long qqId, out QQ qqInfo, bool notCache = false) { string result = CQP.CQ_getStrangerInfo(_authCode, qqId, notCache); if (string.IsNullOrEmpty(result)) { qqInfo = null; return(-1000); } BinaryReader binary = new BinaryReader(new MemoryStream(Convert.FromBase64String(result))); qqInfo = new QQ(); qqInfo.Id = binary.ReadInt64_Ex(); qqInfo.Nick = binary.ReadString_Ex(_defaultEncoding); qqInfo.Sex = (Sex)binary.ReadInt32_Ex(); qqInfo.Age = binary.ReadInt32_Ex(); return(0); }
void IJob.Execute() { BotQQ = CQ.Api.GetLoginQQ(); string AppDirectory = CQ.Api.AppDirectory; string QQ = ini.Read(AppDirectory + @"\配置.ini", "主人信息", "QQ", ""); string StuID = ini.Read(AppDirectory + @"\配置.ini", "主人信息", "学号", ""); string Pw = ini.Read(AppDirectory + @"\配置.ini", "主人信息", "教务系统密码", ""); if (QQ == "" || StuID == "" || Pw == "") { CQ.Log.Warning("成绩提醒模块", "本人部分信息为空,提醒任务已停止。"); JobManager.Stop(); JobManager.RemoveAllJobs(); } CQ.Log.Debug("成绩提醒模块", "检测运行中……"); Pw = DESTool.Decrypt(Pw, "jw*1"); EasLogin jwxt = new EasLogin(Convert.ToString(BotQQ.Id), QQ, StuID, Pw, 3); try { if (jwxt.TryLogin() == true) { CQ.Log.Debug("成绩提醒模块", "登录成功"); EasGetNewScore jwscore = new EasGetNewScore(); var sList = jwscore.GetNewScore(jwxt); if (sList.Count != 0) { foreach (var s in sList) { CQ.Api.SendPrivateMessage(Convert.ToInt64(QQ), "【新出成绩】\n课程:", s.LessonName, "\n成绩:", s.Mark); } } } } catch (Exception ex) { CQ.Log.Warning("成绩提醒模块", "本次检测发生了错误,任务已停止。\n错误信息:" + ex.Message); JobManager.Stop(); JobManager.RemoveAllJobs(); } }
public static QQ call_target_ref(ref QQ arg) { return arg; }
public static QQ call_target(QQ arg) { return arg; }
public AA(int qq) { tmp1 = 106; tmp2 = 107; q = new QQ(qq); }