public async void SendCodeTest() { var code = new ChuanglanSmsCode() { Phone = "", Msg = "3312047" }; var response = await _client.SendCodeAsync(code); Assert.True(response.Code == "0", JsonConvert.SerializeObject(response)); }
public async Task <ResponseData> SendCodeAsync(ChuanglanSmsCode code) { if (code == null) { throw new ArgumentNullException(nameof(code)); } _chuanglanAccount.CheckParameters(); code.CheckParameters(); var bizParams = new SortedDictionary <string, string>() { { "account", _chuanglanAccount.SmsUser }, { "password", _chuanglanAccount.SmsKey }, { "msg", code.Msg }, { "phone", code.Phone }, }; if (code.SendTime.HasValue) { bizParams.Add("sendtime", code.SendTime.Value.ToString("yyyyMMddHHmm")); } if (code.Report.HasValue && code.Report.Value) { bizParams.Add("report", "true"); } if (!string.IsNullOrWhiteSpace(code.Extend)) { bizParams.Add("extend", code.Extend); } if (!string.IsNullOrWhiteSpace(code.Uid)) { bizParams.Add("uid", code.Uid); } return(await _proxy.SendCodeAsync(bizParams) .Retry(_config.RetryTimes) .Handle().WhenCatch <Exception>(e => { _exceptionHandler?.Invoke(e); return ReturnAsDefautlResponse(); })); }