Canales de notificación

Para una conexión telefónica paso a paso, consulte Conecte la aplicación.

Configurar en la consola

  1. Abra Notificaciones y elija la aplicación Bark, Pushover, Webhook o Mailwake.
  2. Complete los campos del canal seleccionado a continuación. Para la aplicación Mailwake, primero emparejar el teléfono, luego elija el teléfono receptor.
  3. Elija la vista previa, el idioma de notificación y el recuento de reintentos. Un recuento de reintentos de 0 hace un intento.
  4. Guarde y luego envíe explícitamente una notificación de prueba. Verifique el teléfono o el receptor del webhook y el resultado de la entrega.

La configuración se aplica a todos los buzones. Cambiar la configuración preserva el trabajo en cola de acuerdo con su plan de entrega existente; verificar el comportamiento futuro con un nuevo mensaje.

Configuración de canales

Configurar el canal global a través de /api/v1/settings/delivery, enviando su revision actual. El canal, la vista previa, el recuento de reintentos y el idioma de notificación se aplican a todos los buzones. Todas las credenciales están cifradas y son de solo escritura; Las credenciales omitidas se conservan si el destino no cambia. Al cambiar una dirección de Bark guardada, debe volver a introducir la clave del dispositivo.

Canal Parámetros Credenciales
bark bark.endpoint, predeterminado https://api.day.app bark.key
pushover ninguno pushover.token , pushover.user
webhook HTTPS, consulta permitida webhook.url y webhook.secret (al menos 32 caracteres que no sean espacios en blanco)
native Servicio oficial de entrega push de producción por defecto; anular con MAILWAKE_RELAY_URL; emparejar teléfonos en la autorización de la aplicación Identidad de puesto cifrada y generada localmente

Las URL de webhook son de solo escritura porque las rutas y consultas pueden contener credenciales de enrutamiento. preview acepta off o subject; retry_count acepta 0–9 y el valor predeterminado es 0; language acepta nueve códigos de catálogo y sus alias regionales y el valor predeterminado es en. Bark y Pushover muestran solo el asunto con subject; Webhook conserva el remitente y el asunto estructurados, mientras que su message también contiene solo el asunto. off (y un asunto vacío) utiliza el mensaje localizado "Correo nuevo". Los títulos permanecen {display name} · {folder}; Bark agrupa las notificaciones con ese mismo título truncado. El texto de notificación de prueba no ha cambiado. La entrada API sender_subject devuelve 400 config_preview_invalid. Para canales de terceros, cambiar de subject a off elimina atómicamente al remitente y al asunto de todos los registros pendientes y fallidos; Las colas posteriores también siguen la política de privacidad guardada. El envío de notificaciones nativas siempre registra el remitente y el asunto conservando la preferencia de vista previa de terceros.

La retención del historial de Bark sigue la configuración del historial de guardado de la aplicación Bark para notificaciones de correo y de prueba.

Carga útil del webhook

El puesto envía un POST con un cuerpo JSON y nunca sigue redirecciones:

json
{
  "version": 1,
  "id": "3f9c…",
  "test": false,
  "mailbox_id": "mbx_example",
  "account": "Work mailbox",
  "folder": "Clients",
  "sender": "anna@example.org",
  "subject": "Re: Q4 proposal",
  "received_at": "2026-09-28T10:32:00Z",
  "title": "Work mailbox · Clients",
  "message": "Re: Q4 proposal"
}

mailbox_id es el ID del buzón estable; account es su nombre para mostrar en el momento de la puesta en cola. Las notificaciones ordinarias de Bark, Pushover y Webhook utilizan el título {display name} · {folder} en todos los idiomas compatibles. Cambiar el nombre o eliminar un buzón conserva los metadatos de identidad de las tareas que ya están en cola. Las notificaciones de prueba utilizan texto separado y omiten campos de buzón.

sender y subject aparecen solo con la vista previa de subject. title y message están localizados y listos para reenviar a ntfy, Gotify y servicios similares. El nombre para mostrar y la carpeta se envían incluso con la vista previa desactivada; Elija una etiqueta adecuada para compartir con su proveedor de notificaciones.

Encabezado Significado
X-Mailwake-Event ID de evento, igual a id; sin cambios en los reintentos, úselo para deduplicar
X-Mailwake-Timestamp Tiempo de envío en segundos Unix
X-Mailwake-Signature sha256= seguido de la representación hexadecimal de HMAC-SHA256(secret, "<timestamp>.<raw body>")

Verifique la firma con el mismo secreto usando una comparación de tiempo constante y rechace marcas de tiempo con más de cinco minutos de diferencia:

python
import hashlib, hmac, time

def verify(secret: bytes, timestamp: str, body: bytes, signature: str) -> bool:
    expected = "sha256=" + hmac.new(secret, timestamp.encode() + b"." + body, hashlib.sha256).hexdigest()
    return abs(time.time() - int(timestamp)) <= 300 and hmac.compare_digest(expected, signature)

Cualquier respuesta 2xx cuenta como aceptada. 429 y 5xx siguen la configuración de reintento; otros estados finalizan el intento y registran un fracaso.

Guardar la configuración de notificación valida campos, direcciones, estado de emparejamiento y revisión sin enviar una prueba. Utilice el botón de prueba explícito después de guardar. Las pruebas nativas utilizan el punto final de prueba gratuito fijo del servicio de envío de notificaciones y comparten la cuota de prueba de la aplicación; las notificaciones ordinarias por correo electrónico requieren el derecho de Native Push.

Markdown · AGPL-3.0-only · Colaboradores de Mailwake