public HttpResponseMessage PostMensajeUsuario([FromBody] NOT_MENSAJE_USUARIO data) { if (data == null) { return new HttpResponseMessage { StatusCode = HttpStatusCode.BadRequest, ReasonPhrase = "POST body is null" } } ; try { NOT_MENSAJE_USUARIO rs = MensajeUsuario.Create(data); return(new HttpResponseMessage { StatusCode = HttpStatusCode.OK, ReasonPhrase = "Saved" }); } catch (Exception ex) { return(new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, ReasonPhrase = $"Document could not be created: {ex.InnerException}" }); } finally { //session.Dispose(); } }
public IEnumerable <NOT_MENSAJE_USUARIO> GetMensajeUsuarioById(Guid id) { NOT_MENSAJE_USUARIO listaMensajeUsuario = new NOT_MENSAJE_USUARIO(); try { listaMensajeUsuario = MensajeUsuario.Read(id); } catch (Exception e) { //HttpResponseMessage { StatusCode = HttpStatusCode.OK, ReasonPhrase = "Deleted" }; } finally { //session.Dispose(); } yield return(listaMensajeUsuario); }
public void EnviarAsync(string user, string message, string asunto, string filtro, Guid idmensajeUsuario) { Task.Run(async() => { try { NOT_MENSAJE_USUARIO appVal = usuario.Read(idmensajeUsuario); appVal.fecha_entrega = DateTime.Now; appVal.estado = 1; usuario.Update(appVal); TraceLog.LogTrace("INFO", "Cliente Notificacion", "Notificacion desplegada al usurio:" + user); await Clients.All.SendAsync("enviamensaje", user, asunto, message); } catch (Exception e) { TraceLog.LogTrace("ERROR", "Cliente Notificacion", e.Message); } //await Clients.User(user).SendAsync("enviamensaje", user, message); //await Clients.Group("SignalR Users").SendAsync("ReceiveMessage", message); }); }
public HttpResponseMessage PutMensajeUsuario(Guid id, [FromBody] NOT_MENSAJE_USUARIO data) { if (Guid.Equals(id, null)) { return new HttpResponseMessage { StatusCode = HttpStatusCode.BadRequest, ReasonPhrase = "Identifier could not be empty" } } ; if (data == null) { return new HttpResponseMessage { StatusCode = HttpStatusCode.BadRequest, ReasonPhrase = "PUT body is null" } } ; try { MensajeUsuario.Update(data); return(new HttpResponseMessage { StatusCode = HttpStatusCode.OK, ReasonPhrase = "Updated" }); } catch (Exception ex) { return(new HttpResponseMessage { StatusCode = HttpStatusCode.InternalServerError, ReasonPhrase = $"Document could not be updated: {ex.InnerException}" }); } finally { //session.Dispose(); } }
public async Task <HttpResponseMessage> PostAsync([FromBody] object mensajeProveedorModel) { string messageResponse = ""; _log = new TraceLog(); _email = new EmailService(_configuration); String[] _canal = null; if (mensajeProveedorModel != null) { try { MensajeProveedorModel mensajeProveedor = JsonConvert.DeserializeObject <MensajeProveedorModel>(mensajeProveedorModel.ToString()); try { //SE VALIDA QUE LA APLICACION ESTE REGISTRADA EN EL SONDAMQ var appVal = aplicacion.Read(mensajeProveedor.cod_aplicacion); if (((List <NOT_APLICACION>)appVal).Count > 0) { TraceLog.LogTrace("INFO", appLog, "APLICACION REGISTRADA"); if (mensajeProveedor.listausuarios.Count > 0) { NOT_MENSAJE mdMensaje = new NOT_MENSAJE { id_aplicacion = ((List <NOT_APLICACION>)appVal)[0].id_not_aplicacion, prioridad = mensajeProveedor.prioridad, formato = mensajeProveedor.formato, mensaje = mensajeProveedor.mensaje, fecha_envio = DateTime.Now, asunto = mensajeProveedor.asunto }; try { mdMensaje = mensaje.Create(mdMensaje); //SE RECORRE LOS USUARIOS A LOS CUALES SE LES VA A ENVIAR LOS MENSAJES for (int i = 0; i < mensajeProveedor.listausuarios.Count; i++) { _canal = null; if (mensajeProveedor.listausuarios[i].canal != "") { _canal = mensajeProveedor.listausuarios[i].canal.Split(","); NOT_MENSAJE_USUARIO mdUsuario = new NOT_MENSAJE_USUARIO { id_usuario = mensajeProveedor.listausuarios[i].id, id_not_mensaje = mdMensaje.id_not_mensaje, }; try { mdUsuario = usuario.Create(mdUsuario); try { if (_canal[0] == "PUSH") { var endPointMessage = await Fabrica.MessageBusConfig.BusControl.GetSendEndpoint(new Uri( _configuration["BusMensage:host"] + mensajeProveedor.cod_aplicacion + _configuration["BusMensage:optionHost"] + mensajeProveedor.cod_aplicacion)); await endPointMessage.Send <ContratoSuscriptor>(new { Mensaje = mensajeProveedor.mensaje, Usuario = mensajeProveedor.listausuarios[i].id, Asunto = mensajeProveedor.asunto, IsOk = true, IdmensajeUsuario = mdUsuario.id_not_mensaje_usuario }); } if (_canal[1] == "EMAIL") { if (ValidatorCommon.ComprobarFormatoEmail(mensajeProveedor.listausuarios[i].email)) { await _email.SendEmailAsync(mensajeProveedor.listausuarios[i].email, mensajeProveedor.mensaje, mensajeProveedor.asunto); } else { TraceLog.LogTrace("INFO", appLog, "EL EMAIL:" + mensajeProveedor.listausuarios[i].email + " NO ES VALIDO"); } } } catch (Exception e) { messageResponse = e.Message.ToString(); TraceLog.LogTrace("ERROR", appLog, messageResponse); } } catch (Exception e) { messageResponse = e.Message.ToString(); TraceLog.LogTrace("ERROR", appLog, messageResponse); } } else { TraceLog.LogTrace("ERROR", appLog, "CANALES NO VALIDOS"); } } TraceLog.LogTrace("INFO", appLog, "MENSAJES ENCOLADOS EN EL BUS:" + _configuration["BusMensage:host"] + " EN LA COLA:" + mensajeProveedor.cod_aplicacion); } catch (Exception exm) { messageResponse = exm.Message.ToString(); TraceLog.LogTrace("ERROR", appLog, messageResponse); } } else { messageResponse = "NO HAY USUARIOS A LOS CUALES ENVIAR EL MENSAJE"; TraceLog.LogTrace("INFO", appLog, messageResponse); } } else { messageResponse = "APLICACION NO SE ENCUENTRA REGISTRADA"; TraceLog.LogTrace("INFO", appLog, messageResponse); } }catch (Exception ex) { messageResponse = ex.Message.ToString(); TraceLog.LogTrace("ERROR", appLog, messageResponse); } }catch (Exception e) { messageResponse = e.Message.ToString(); TraceLog.LogTrace("ERROR", appLog, messageResponse); } finally { } } return(new HttpResponseMessage { StatusCode = HttpStatusCode.OK, ReasonPhrase = messageResponse }); }