/// <summary> /// 客户端发送心跳包 /// </summary> private void ClientSendHeart() { HeartManager proto = new HeartManager(); proto.cli_time = TimeHelp.ConvertDateTimeToInt(DateTime.Now); // m_SocketClient.Send(proto.encode(), OP_SYS_HEART_GET.CODE); }
public string GetStringTask() { _stringBuilder.Clear().Append("<b>Task:</b><n>"); _stringBuilder.Append("You must find all items"); switch (TypeLevel) { case TypeLevel.NightHO: _stringBuilder.Append(" in night state"); break; } if (TimeLimit) { _stringBuilder.AppendFormat(", with limit time (limit: {0})", TimeHelp.GetFormattedTime(timeForLimit, "MM:SS")); } else { _stringBuilder.Append(", without limit time"); } _stringBuilder.Append("."); return(_stringBuilder.ToString()); }
public void MakePackage() { TimeHelp t1 = new TimeHelp(); t1.Start(); List <string> sFileList = Directory.GetFiles(Application.streamingAssetsPath + "/res", "*.*", SearchOption.AllDirectories).Where(f => !(f.ToLower().EndsWith(".meta") || f.ToLower().EndsWith(".manifest"))).ToList(); Array.Clear(pHashMapIndex, 0, pHashMapIndex.Length); nPakHeadPos = 0; nPakSeekPos = sizeof(uint) * 5 * sFileList.Count; FileStream fs = File.Create(Application.streamingAssetsPath + "/ss.raw", nPakSeekPos); BinaryWriter bw = new BinaryWriter(fs); bw.Write(sFileList.Count); nPakHeadPos += sizeof(int); for (int i = 0; i < sFileList.Count; ++i) { PackFileToPackage(sFileList[i], bw); } bw.Close(); fs.Close(); t1.Stop(); Debug.Log("完成 耗时 " + t1.Duration); }
/// <summary> /// 验证验证码 /// 版本:201909 /// </summary> public ResponseCaptchaCheck PostCaptchaCheck201909(string point, out string jsonResult) { jsonResult = string.Empty; ResponseCaptchaCheck package = null; RequestPackage request = new RequestPackage(); try { request.Params.Add("rand", System.Web.HttpUtility.UrlEncode("sjrand")); request.Params.Add("answer", System.Web.HttpUtility.UrlEncode(point)); request.Params.Add("login_site", System.Web.HttpUtility.UrlEncode("E")); request.Params.Add("_", TimeHelp.GetTimeStamp(DateTime.Now)); request.Params.Add("callback", TrainHttpContext.callback); request.RequestURL = "/passport/captcha/captcha-check"; request.RefererURL = "https://kyfw.12306.cn/otn/resources/login.html"; request.Method = "post"; ArrayList list = TrainHttpContext.Send(request); if (list.Count == 2) { jsonResult = Encoding.UTF8.GetString(list[1] as byte[]); var resStr = jsonResult.CallBackJson(); package = JsonConvert.DeserializeObject <ResponseCaptchaCheck>(resStr); Log.Write(LogLevel.Info, jsonResult); } } catch (Exception ex) { package.result_message = "验证错误"; package.status_code = 0000; Log.Write(LogLevel.Error, "验证验证码出错"); } return(package); }
/// <summary> /// 登陆 /// </summary> /// <param name="loginName"></param> /// <param name="loginPwd"></param> /// <param name="jsonResult"></param> /// <returns></returns> public ResponseLogin PostLogin201909(string loginName, string loginPwd, string point, out string jsonResult) { jsonResult = string.Empty; ResponseLogin package = null; RequestPackage request = new RequestPackage(); request.Params.Add("username", System.Web.HttpUtility.UrlEncode(loginName)); request.Params.Add("password", System.Web.HttpUtility.UrlEncode(loginPwd)); request.Params.Add("appid", System.Web.HttpUtility.UrlEncode("otn")); request.Params.Add("answer", System.Web.HttpUtility.UrlEncode(point)); request.RequestURL = "/passport/web/login"; request.RefererURL = "/otn/resources/login.html"; request.Method = "post"; var RAIL_EXPIRATION = new Cookie("RAIL_EXPIRATION", TimeHelp.GetTimeStamp(DateTime.Now.AddDays(3)), "/", ".12306.cn"); var RAIL_DEVICEID = new Cookie("RAIL_DEVICEID", "K_89QjQR37H4I9URxTkeSVTXd2WIyViZrlUuxJA5A8p7xCM_3JGueLa4zc2t_T69vTHb1aDx-3ymUdCUrLXbPcb68Z-4pQAYOmF8i6rU0Nk7Q6HIfzMVHY5PIQPK16sfWaJc-Z08UcYMLepVR56jG1NrsBYZooob", "/", ".12306.cn"); TrainHttpContext.Cookie.Add(RAIL_EXPIRATION); TrainHttpContext.Cookie.Add(RAIL_DEVICEID); ArrayList list = TrainHttpContext.Send(request); if (list.Count == 2) { jsonResult = Encoding.UTF8.GetString(list[1] as byte[]); package = JsonConvert.DeserializeObject <ResponseLogin>(jsonResult); Log.Write(LogLevel.Info, jsonResult); } else { Log.Write(LogLevel.Info, list.ToString()); } return(package); }
private Boolean setNextProcess(CSIProc newProc) { if (newProc == null) { //AppI_Debug.ShowMsg("setNextProcess: ERROR: NULL!"); return(false); } CSIProc oldProc = _currentProc; _previousProc = _currentProc; _currentProc = newProc; _nextProc = null; // Old Proc gets notified it is changing out. if (oldProc != null) { oldProc.ExitProcess(); } // New Proc finds out it is coming in. if (_currentProc != null) { _currentProc.EnterProcess(); } //Note the time at which we entered this Proc. _enteredProcTime = TimeHelp.GetCurrentMS(); return(true); }
private Boolean SetNextState(CSIState newState) { bool success = false; if (newState != null) { CSIState _previousState = _currentState; // Old state gets notified it is changing out. if (_previousState != null) { //AppI_Debug.ShowMsg("setNextState Old:" + _previousState.ToString()); _previousState.Exit(); } //AppI_Debug.ShowMsg("setNextState Current: " + newState.ToString()); _currentState = newState; _nextState = null; if (_currentState != null) { //Note the time at which we entered this state. _enteredStateTime = TimeHelp.GetCurrentMS(); _currentState.Enter(this); success = true; } } else { AppI_Debug.ShowMsg("setNextState: ERROR:NULL STATE!"); success = false; } return(success); }
/// <summary> /// QueryOrderWaitTime查询等待 /// </summary> public string QueryOrderWaitTime() { RequestPackage request = new RequestPackage(); request.Method = EHttpMethod.Get.ToString(); request.RefererURL = "/otn/confirmPassenger/initDc"; request.RequestURL = "/otn/confirmPassenger/ConfirmSingleForQueue"; request.Params.Add("random", TimeHelp.GetTimeStamp(DateTime.Now)); request.Params.Add("tourFlag", "dc"); request.Params.Add("_json_att", ""); request.Params.Add("REPEAT_SUBMIT_TOKEN", "b5a05749242999dc0483196134d0358c"); ArrayList list = TrainHttpContext.Send(request); return(Encoding.UTF8.GetString(list[1] as byte[])); }
public static void ResponseVoiceMessage(string ToUserName, string FromUserName, string media_id) { string CreateTime = TimeHelp.GetTimeStamp(System.DateTime.Now); string VoiceMsgXmlStr = "<xml>" + "<ToUserName><![CDATA[" + ToUserName + "]]></ToUserName>" + "<FromUserName><![CDATA[" + FromUserName + "]]></FromUserName>" + "<CreateTime>" + CreateTime + "</CreateTime>" + "<MsgType><![CDATA[voice]]></MsgType>" + "<Voice>" + "<MediaId><![CDATA[" + media_id + "]]></MediaId>" + "</Voice>" + "</xml>"; HttpContext.Current.Response.ContentEncoding = Encoding.UTF8; HttpContext.Current.Response.Write(VoiceMsgXmlStr); }
public static void ResponseTextMessage(string ToUserName, string FromUserName, string Content) { string CreateTime = TimeHelp.GetTimeStamp(System.DateTime.Now); string TextMsgXmlStr = "<xml>" + "<ToUserName><![CDATA[" + ToUserName + "]]></ToUserName>" + "<FromUserName><![CDATA[" + FromUserName + "]]></FromUserName>" + "<CreateTime>" + CreateTime + "</CreateTime>" + "<MsgType><![CDATA[text]]></MsgType>" + "<Content><![CDATA[" + Content + "]]></Content>" + "</xml>"; HttpContext.Current.Response.ContentEncoding = Encoding.UTF8; HttpContext.Current.Response.Write(TextMsgXmlStr); // return TextMsgXmlStr; }
/// <summary> /// 获取验证码2019年9月版本 /// </summary> /// <returns></returns> public Image GetValidateCode_201909() { Image img = null; try { var num = TimeHelp.GetTimeStamp(DateTime.Now); var callback = $"jQuery{RandomHelp.GetRandomNumByLength(20)}_{TimeHelp.GetTimeStamp(DateTime.Now)}"; RequestPackage request = new RequestPackage("/passport/captcha/captcha-image64"); request.Params.Add("login_site", "E"); request.Params.Add("module", "login"); request.Params.Add("rand", "sjrand"); request.Params.Add(num, ""); request.Params.Add("callback", callback); request.Params.Add("_", num); ArrayList list = TrainHttpContext.GetHtmlData(request); if (list.Count == 3) { var resStr = list[1].ToString().CallBackJson(); var streamJson = JsonConvert.DeserializeObject <ResCodeImgMsg>(resStr); if (streamJson.result_code.Equals("0")) { img = Base64ToImgHelp.CetFromBase64String(streamJson.image); } } else { Log.Write(LogLevel.Info, "请求/otn/login/init失败"); } } catch (Exception ex) { Log.Write(LogLevel.Error, ex.Message, ex); } return(img); }
/// <summary> /// 获取呼叫录音 /// </summary>https://help.aliyun.com/document_detail/65296.html?spm=a2c4g.11186623.2.17.77faaaedlaOoCW /// <returns></returns> public async Task <String> ListCallDetailRecords() { AliCCC aliCCC = new AliCCC(); HttpHelper httpHelper = new HttpHelper(); #region 公共参数 aliCCC.Format = "JSON"; aliCCC.Version = "2017-07-05"; aliCCC.Timestamp = DateTime.UtcNow.ToUniversalTime().ToString("yyyy-MM-ddTHH:mm:ssZ"); aliCCC.SignatureType = "BEARERTOKEN"; aliCCC.RegionId = "cn-shanghai"; aliCCC.SignatureNonce = new RandomCode().GenerateCheckCode(45); ///人工维护的token aliCCC.BearerToken = "eyJhbGciOiJSUzI1NiIsImsyaWQiOiJlNE92NnVOUDhsMEY2RmVUMVhvek5wb1NBcVZLblNGRyIsImtpZCI6IkpDOXd4enJocUowZ3RhQ0V0MlFMVWZldkVVSXdsdEZodWk0TzFiaDY3dFUifQ.bkJudEI3OUpCcmF2aWhuNmNmbE5lbVdzNW45cFBOSWdNellrQStPYmZ5cjZVOG9rMUJqUTZqLzl3RDdkbzhHQkorMzdwYmYwR1BCTDZHUGRjaVhMVUFkaFAzeVNYanBuK2N6UkN1SnRRc3FRMGJIVTF4cVVjUDVRNUJpK2JsSWxZdlowZ2VWSzYvS2pzcVNjWHJLSlVvWkNnWE0wWGJZZ0NCVm1BaEtaTHBPVnRjdnAvUmwwV01tSFFkWnVQa0lQWEp0UFlQV3Q3QThSd0RHVTdUY1BnYlhIVy9uTmc3RVJYNk9VOENrPQ.F6WZmD5Jp3rNB7ps-FlbwaE6uqZDuFQCZv9lRwzMs8YQVln_NqiMFdhX3Wxn8TvYmFaoh2oqKkme7VkCR6e4n6cIXCa-CfC1DW5H7EaDhsJx0lU_HR01ufRI2ZBQyAKzZ72nnZPqE-7pxi4PwmArLniFJIwvv_MDgA71gY3C5KWgnDGV14qG0BWG-K78UJIItJ3xnZYUvbl3zdcgdIZOj9zI-fU4Ibj4Ods3lXF9CVG42J6E8cK1QAs0efJ4i5HvnvEMna3wdczbPpdBUQ6_0-fEpVzic6TxnDO4KO_qMrZ3ch-GBd0CQMsU3SNvWIqZ4orhz37mN9GXD3IiqEyMig"; #endregion #region 获取录音地址 aliCCC.Action = "ListCallDetailRecords"; aliCCC.InstanceId = "33295c19-1afd-4926-ae46-cd5a28ade3e8"; int PageNumber = 1; int PageSize = 100; string CallDetailurl = "https://ccc.cn-shanghai.aliyuncs.com/?"; #region 公共参数 StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(CallDetailurl); stringBuilder.Append("&Format=" + aliCCC.Format); stringBuilder.Append("&Version=" + aliCCC.Version); stringBuilder.Append("&Timestamp=" + aliCCC.Timestamp); stringBuilder.Append("&SignatureType=" + aliCCC.SignatureType); stringBuilder.Append("&RegionId=" + aliCCC.RegionId); stringBuilder.Append("&SignatureNonce=" + aliCCC.SignatureNonce); stringBuilder.Append("&BearerToken=" + aliCCC.BearerToken); stringBuilder.Append("&Action=" + aliCCC.Action); stringBuilder.Append("&InstanceId=" + aliCCC.InstanceId); #endregion stringBuilder.Append("&StartTime=" + TimeHelp.GetTimeStamp(DateTime.Parse("2018-10-10"))); stringBuilder.Append("&StopTime=" + TimeHelp.GetTimeStamp(DateTime.Parse("2018-10-12"))); stringBuilder.Append("&PageNumber=" + PageNumber); stringBuilder.Append("&PageSize=" + PageSize); var AuthorizationCode = await httpHelper.PostResponseAsync(stringBuilder.ToString(), ""); var ListCallDetail = JsonHelper.FromJson <CallDetailRecordInfo>(AuthorizationCode); #endregion #region 获取下载地址 List <ALICCListCallDetail> aLICCListCallDetailList = new List <ALICCListCallDetail>(); if (ListCallDetail != null) { foreach (var CallDetail in ListCallDetail.CallDetailRecords.List.CallDetailRecord) { ALICCListCallDetail aLICCListCallDetail = new ALICCListCallDetail(); aLICCListCallDetail.ContactId = CallDetail.ContactId; aLICCListCallDetail.StartTime = CallDetail.StartTime; aLICCListCallDetail.Duration = CallDetail.Duration; aLICCListCallDetail.ContactType = CallDetail.ContactType; aLICCListCallDetail.ContactDisposition = CallDetail.ContactDisposition; aLICCListCallDetail.CallingNumber = CallDetail.CallingNumber; aLICCListCallDetail.CalledNumber = CallDetail.CalledNumber; aLICCListCallDetail.InstanceId = CallDetail.InstanceId; if (CallDetail.Recordings.Recording.Count > 0) { aLICCListCallDetail.FileName = CallDetail.Recordings.Recording[0].FileName; } aLICCListCallDetailList.Add(aLICCListCallDetail); } } StringBuilder FilestringBuilder = new StringBuilder(); //重新获取随机值 aliCCC.SignatureNonce = new RandomCode().GenerateCheckCode(45); #region FilestringBuilder.Append(CallDetailurl); FilestringBuilder.Append("&Format=" + aliCCC.Format); FilestringBuilder.Append("&Version=" + aliCCC.Version); FilestringBuilder.Append("&Timestamp=" + aliCCC.Timestamp); FilestringBuilder.Append("&SignatureType=" + aliCCC.SignatureType); FilestringBuilder.Append("&RegionId=" + aliCCC.RegionId); FilestringBuilder.Append("&SignatureNonce=" + aliCCC.SignatureNonce); FilestringBuilder.Append("&BearerToken=" + aliCCC.BearerToken); string DownloadAction = "DownloadRecording"; FilestringBuilder.Append("&Action=" + DownloadAction); FilestringBuilder.Append("&InstanceId=" + aliCCC.InstanceId); #endregion if (aLICCListCallDetailList.Count > 0) { foreach (var aLICCListCallDetail in aLICCListCallDetailList) { FilestringBuilder.Append("&FileName=" + aLICCListCallDetail.FileName); var MediaDownloadParam = await httpHelper.PostResponseAsync(FilestringBuilder.ToString(), ""); var MediaDownload = JsonHelper.FromJson <MediaDownload>(MediaDownloadParam); if (MediaDownload != null) { aLICCListCallDetail.SignatureUrl = MediaDownload.MediaDownloadParam.SignatureUrl; } } } return(AuthorizationCode.ToString()); #endregion }
public void TimeStampTest() { var time = TimeHelp.ConvertStringToDateTime("1567901654217"); }