コード例 #1
0
        public static FateadmRsp PredictFromFile(string pred_type, string file_name)
        {
            FateadmRsp rsp = new FateadmRsp();

            Util.PredictFromFile(rsp, app_id, app_key, usr_id, usr_key, pred_type, file_name);
            return(rsp);
        }
コード例 #2
0
        public static FateadmRsp Justice(string order_id)
        {
            FateadmRsp rsp = new FateadmRsp();

            Util.Justice(rsp, usr_id, usr_key, order_id);
            return(rsp);
        }
コード例 #3
0
            public static void Predict(FateadmRsp rsp, string app_id, string app_key, string usr_id, string usr_key, string pred_type, byte[] img_data)
            {
                string cur_tm = GetCurrentTimeUnix();
                string sign   = CalcSign(usr_id, usr_key, cur_tm);
                IDictionary <string, string> param = new Dictionary <string, string>();

                param.Add("user_id", usr_id);
                param.Add("timestamp", cur_tm);
                param.Add("sign", sign);
                if (!string.IsNullOrEmpty(app_id))
                {
                    string asign = CalcSign(app_id, app_key, cur_tm);
                    param.Add("appid", app_id);
                    param.Add("asign", asign);
                }
                param.Add("predict_type", pred_type);
                string b64data = Convert.ToBase64String(img_data, 0, img_data.Length);

                param.Add("img_data", HttpUtility.UrlEncode(b64data));
                string      url  = URL + "/api/capreg";
                HttpRspData jrsp = HttpPost(url, param);

                rsp.ret_code = int.Parse(jrsp.RetCode);
                rsp.err_msg  = jrsp.ErrMsg;
                rsp.order_id = jrsp.RequestId;
                if (rsp.ret_code == 0)
                {
                    rsp.pred_reslt = jrsp.einfo.result;
                }
            }
コード例 #4
0
        public static FateadmRsp Predict(string pred_type, byte[] img_data)
        {
            FateadmRsp rsp = new FateadmRsp();

            Util.Predict(rsp, app_id, app_key, usr_id, usr_key, pred_type, img_data);
            return(rsp);
        }
コード例 #5
0
        public static FateadmRsp QueryRsp()
        {
            FateadmRsp rsp = new FateadmRsp();

            Util.QueryBalc(rsp, usr_id, usr_key);
            return(rsp);
        }
コード例 #6
0
        private void ContinueHandler(HtmlDocument htmlDoc, bool isContinue)
        {
            if (AppSettings.Dama2Enabled)
            {
                var form = htmlDoc.Forms["captchaForm"];

                var radio = form.GetElementsByTagName("input");

                if (LogInfoEventHandler != null)
                {
                    var msg = "處理驗證碼";
                    LogInfoEventHandler(msg, Color.Blue);
                }

                RepCode = GetVerifyCode(htmlDoc);
                if (RepCode != null)
                {
                    var code = RepCode.pred_reslt;
                    if (LogInfoEventHandler != null)
                    {
                        var msg = "驗證碼: " + code;
                        LogInfoEventHandler(msg, Color.Blue);
                    }

                    foreach (HtmlElement item in radio)
                    {
                        if (item.Name == "captchaAnswer")
                        {
                            var answer = item;

                            answer.SetAttribute("value", code);
                        }
                    }
                }
                else
                {
                    var answer = radio[isContinue ? 2 : 6];

                    answer.SetAttribute("value", "erro");
                }
                Thread.Sleep(1000);
                var a  = form.GetElementsByTagName("a");
                var al = a[2];
                Thread.Sleep(2000);

                al.InvokeMember("click");
            }
            else
            {
                if (LogInfoEventHandler != null)
                {
                    var msg = "手動輸入驗證碼";
                    LogInfoEventHandler(msg, Color.Blue);
                }
                return;
            }
        }
コード例 #7
0
            public static void Justice(FateadmRsp rsp, string usr_id, string usr_key, string order_id)
            {
                string cur_tm = GetCurrentTimeUnix();
                string sign   = CalcSign(usr_id, usr_key, cur_tm);
                IDictionary <string, string> param = new Dictionary <string, string>();

                param.Add("user_id", usr_id);
                param.Add("timestamp", cur_tm);
                param.Add("sign", sign);
                param.Add("request_id", order_id);
                string      url  = URL + "/api/capjust";
                HttpRspData jrsp = HttpPost(url, param);

                rsp.ret_code = int.Parse(jrsp.RetCode);
                rsp.err_msg  = jrsp.ErrMsg;
            }
コード例 #8
0
            public static void Charge(FateadmRsp rsp, string usr_id, string usr_key, string cardid, string cardkey)
            {
                string cur_tm = GetCurrentTimeUnix();
                string sign   = CalcSign(usr_id, usr_key, cur_tm);
                string csign  = Md5(usr_key + cur_tm + cardid + cardkey);
                IDictionary <string, string> param = new Dictionary <string, string>();

                param.Add("user_id", usr_id);
                param.Add("timestamp", cur_tm);
                param.Add("sign", sign);
                param.Add("cardid", cardid);
                param.Add("csign", csign);
                string      url  = URL + "/api/charge";
                HttpRspData jrsp = HttpPost(url, param);

                rsp.ret_code = int.Parse(jrsp.RetCode);
                rsp.err_msg  = jrsp.ErrMsg;
                rsp.order_id = jrsp.RequestId;
            }
コード例 #9
0
            public static void QueryBalc(FateadmRsp rsp, string usr_id, string usr_key)
            {
                string cur_tm = GetCurrentTimeUnix();
                string sign   = CalcSign(usr_id, usr_key, cur_tm);
                IDictionary <string, string> param = new Dictionary <string, string>();

                param.Add("user_id", usr_id);
                param.Add("timestamp", cur_tm);
                param.Add("sign", sign);
                string      url  = URL + "/api/custval";
                HttpRspData jrsp = HttpPost(url, param);

                rsp.ret_code = int.Parse(jrsp.RetCode);
                rsp.err_msg  = jrsp.ErrMsg;
                if (rsp.ret_code == 0)
                {
                    rsp.cust_val = jrsp.einfo.cust_val;
                }
            }
コード例 #10
0
 public static void PredictFromFile(FateadmRsp rsp, string app_id, string app_key, string usr_id, string usr_key, string pred_type, string file_name)
 {
     byte[] img_data;
     try
     {
         FileStream   fs = new FileStream(file_name, FileMode.Open, FileAccess.Read);
         BinaryReader br = new BinaryReader(fs);
         img_data = br.ReadBytes((int)fs.Length);
         br.Close();
         br.Dispose();
         fs.Close();
         fs.Dispose();
     }
     catch (Exception ex)
     {
         rsp.ret_code = -1;
         rsp.err_msg  = "文件读取失败,请检查文件路径, err: " + ex.ToString();
         return;
     }
     Predict(rsp, app_id, app_key, usr_id, usr_key, pred_type, img_data);
 }