public async Task <IActionResult> TextMessage(CreateTextMessageModel model) { if (!ModelState.IsValid) { return(BadRequest(GetModelErrors(ModelState))); } try { var result = await renderer.RenderAsync(QrCodeType.TextMessage, model); if (result == null) { throw new Exception(StandardErrorMessages.Requests.UnableToRenderQrCode); } return(await HandleAsync(result, QrCodeType.TextMessage, model)); } catch (Exception e) { Log.Error(e.Message); return(StatusCode(500)); } }
private async Task <QRCodeData> GenerateTextMessageQrCode(CreateTextMessageModel model) { Payload payload; switch (model.TextMessageType) { case TextMessageType.SMS: payload = new SMS(model.Phone, model.Body, model.SmsEncoding); break; case TextMessageType.MMS: payload = new MMS(model.Phone, model.Body, model.MmsEncoding); break; default: throw new NotImplementedException(); } return(await GenerateAsync(payload)); }