# Enviar notificaciones  todos los usuarios

Imaginemos que deseamos enviar notificaciones a un usuario especifico o  a un grupos o todos los usuarios.

Por ejemplo cuando creamos un nuevo rol deseamos notificar a todos los usuarios.

![](/files/-LhHKV-LD_2HxMHpmOJK)

Debemos Inyectar

```java
  @Inject
    AutoincrementableServices autoincrementableServices;
     //Notification
    @Inject
    UsuarioServices usuarioServices;
    @Inject
    JmoordbNotificationsRepository jmoordbNotificationsRepository;
    @Inject
    @Push(channel = "notification")
    private PushContext push;
```

### Creamos el método afterSave()

Recorremos la lista de usuarios y pasamos el username junto con los detalles y lo guardamos en jmoordbNotificationsRepository

y luego hacemos el push.send()

```java
public Boolean afterSave(Boolean saved) {
        try {

            for (Usuario u : usuarioServices.getUsuarioList()) {
                //Guardarlo en la base de datos
                JmoordbNotifications jmoordbNotifications = new JmoordbNotifications();
//                Usuario jmoordb_user = (Usuario) JmoordbContext.get("jmoordb_user");
                jmoordbNotifications.setIdjmoordbnotifications(autoincrementableServices.getContador("jmoordbnNotifications"));
                jmoordbNotifications.setUsername(u.getUsername());
                jmoordbNotifications.setMessage("se creo un nuevo rol");
                jmoordbNotifications.setViewed("no");
                jmoordbNotifications.setDate(DateUtil.fechaActual());
                jmoordbNotifications.setType("rolnuevo");
                jmoordbNotificationsRepository.save(jmoordbNotifications);
            }
            push.send("Se creo un nuevo rol");
        } catch (Exception e) {
        }
        return false;
    }
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://avbravo-2.gitbook.io/trucosjakartaee/web-socket/websocket/websocket-con-notificaciones-en-bases-de-datos/enviar-notificaciones-todos-los-usuarios.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
