Ejemplo n.º 1
0
        public async Task SendSmsMessage(SmsQueryParameters parameters)
        {
            string status = "fail";
            string reason = "";

            try
            {
                var result = await _aLiYunClient.SendSmsAsync(parameters);

                status = result.ToLower().Equals("ok") ? "success" : "fail";
            }
            catch (Exception ex)
            {
                reason = ex.Message;
            }

            await _smsRecordRepository.Create(new SmsRecord(
                                                  parameters.PhoneNumbers,
                                                  parameters.SignName,
                                                  parameters.TemplateCode,
                                                  JsonConvert.SerializeObject(parameters.TemplateParam),
                                                  DateTime.Now,
                                                  status,
                                                  reason
                                                  ));
        }
Ejemplo n.º 2
0
        public Task <string> SendSmsAsync(SmsQueryParameters queryParameters)
        {
            SendSmsRequest request = new SendSmsRequest();

            // 必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为20个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式
            request.PhoneNumbers = queryParameters.PhoneNumbers;
            //必填:短信签名-可在短信控制台中找到
            request.SignName = queryParameters.SignName ?? "共享惠";
            //必填:短信模板-可在短信控制台中找到
            request.TemplateCode = queryParameters.TemplateCode;
            //可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为
            //request.TemplateParam = "{\"number\":\"" + code + "\"}";
            request.TemplateParam = JsonConvert.SerializeObject(queryParameters.TemplateParam);

            SendSmsResponse sendSmsResponse = _smsClient.GetAcsResponse(request);

            return(Task.FromResult(sendSmsResponse.Message));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> SendSmsAsync([FromBody] SmsQueryParameters parameters)
        {
            await _capBus.PublishAsync("message.services.sms", parameters);

            return(Ok());
        }