¿Necesita notificaciones automáticas de su servidor? Esta útil es mejor que la discordia

Recapitulación

  • ntfy.sh es un servicio de notificación multiplataforma tirado.

  • Es inexistente para percibir notificaciones de servidores, domótica y proyectos de Raspberry Pi.

  • Utilice cualquier script, código o webhook que pueda realizar una solicitud POST HTTP a la API ntfy.sh.

ntfy.sh le permite remitir notificaciones a sus dispositivos desde sus propios scripts, laboratorio doméstico o proyectos de automatización. Es de balde y hace todo el trabajo de remitir notificaciones a múltiples plataformas. Todo lo que necesitas hacer es retener cómo llamarlo.

¿Qué es ntfy.sh?

ntfy.sh es una aplicación de notificación gratuita que funciona en dispositivos móviles Apple y Android, adicionalmente de remitir notificaciones a navegadores web de escritorio. Su caso de uso principal es que los administradores de TI y los entusiastas de la tecnología obtengan actualizaciones de estado en vivo en su infraestructura, pero puede usarlo para percibir alertas de prácticamente cualquier script o fragmento de código, o cualquier servicio que admita webhooks.

Por lo común, para percibir este tipo de notificaciones push, tendrías que desarrollar una aplicación completa y ocurrir por el proceso de aprobación de la tienda de aplicaciones, o configurar una aplicación web con web push, por lo que tener poco que ya haya hecho todo eso por ti te ahorra muchas molestias.

¿Para qué uso ntfy.sh?

Tengo algunas cosas efectos y menos efectos para las que estoy usando ntfy.sh: recibo notificaciones cuando las copias de seguridad tienen éxito o fallan, y si uno de mis sitios web deja de replicar o un servidor necesita reiniciarse. Mi NAS informa cuando el disco o la memoria comienzan a agotarse, e incluso tengo un sensor de temperatura conectado, para retener si las cosas se están calentando demasiado en el estancia de mi servidor. En el banda menos útil, recibo una notificación con una carita sonriente cuando un nuevo adjudicatario se registra en una de mis aplicaciones.

La monitorización del servidor no es el meta de esta útil. Puedes integrarlo en cualquier domótica o script para que envíe notificaciones. Todo lo que necesita hacer es pegar el comando ntfy.sh relevante a sus scripts Bash o Python.

Puede integrarlo con un sensor en su lavadora para percibir una notificación cuando esté inteligente o percibir una alerta si la puerta de su aparcamiento se deja abierta durante más de unos minutos. Puede conectar varios sensores a una Raspberry Pi y usarlo para percibir notificaciones sobre todo tipo de cosas en la casa.

¿Cómo se utiliza ntfy.sh?

Puede tocar a ntfy.sh desde cualquier script, código o webhook que pueda realizar una solicitud POST HTTP a su API.

Funciona así: creas un tema en un servidor ntfy.sh y te suscribes a él en la aplicación ntfy.sh (rebusca los enlaces de la tienda de aplicaciones en la página Sitio web ntfy.sho haga clic en ‘Aplicación’ para usar la interpretación basada en navegador). El nombre del tema debe ser único y secreto, ya que cualquiera que lo conozca puede deletrear las notificaciones (así que, en los ejemplos siguientes, ¡asegúrese de reemplazarlo!).

Luego, desde sus scripts, simplemente envía notificaciones a ese tema y todos los dispositivos suscritos reciben la notificación. Puede utilizar el servidor divulgado ntfy.sh de forma gratuita o reemplazar la URL en los scripts con su propia instancia autohospedada. Puedes encontrar más información sobre cómo usarlo en el documentación ntfy.sh.

Hay una regla importante: no publique información confidencial en él; solo envíe alertas, no incluya credenciales o información de identificación en sus notificaciones, ya que otras personas podrían leerlas e interceptarlas. La autenticación está arreglado, pero generalmente el nombre del tema actúa como contraseña, lo que no es seguridad suficiente para información importante.

Aquí hay algunos ejemplos basados ​​en los fragmentos que uso en mis propios scripts.

Uso de ntfy.sh para avisar sobre fallas en el script Bash

Estos son los comandos que pego en mis scripts Bash para remitir notificaciones ntfy.sh si el script error en algún momento. Utiliza curl para realizar la solicitud HTTP.

#!/bin/bash
set -Eeuo pipefail
NTFY_URL="https://ntfy.sh/my_super_secret_topic"
TITLE_OK="Job COMPLETED"
MESSAGE_OK="Finished successfully on $(hostname)"
TITLE_FAIL="Job FAILED"
MESSAGE_FAIL="Script interrupted on $(hostname)"
notify() {
locorregional title="$1"
locorregional message="$2"
curl -fsS -H "Title: ${title}" -d "${message}" "${NTFY_URL}" || true
}
# Notify on any error and exit with the same status
trap 'rc=$?; notify "$TITLE_FAIL" "Script failed on $(hostname) (exit ${rc})"; exit "${rc}"' ERR
# Notify if user hits Ctrl+C and exit with 130 (SIGINT)
trap 'notify "$TITLE_FAIL" "$MESSAGE_FAIL"; exit 130' INT
# -----------------------------
# Your script goes here
# Any non-zero exit triggers the ERR trap above
# -----------------------------
# Notify on success
notify "$TITLE_OK" "$MESSAGE_OK"

El comando trap detecta errores y apasionamiento a la función notify(), que envía una solicitud a NTFY_URL, pasándole los títulos TITLE_OK y TITLE_FAIL para mostrarlos en su dispositivo.

Usando ntfy.sh con PowerShell y el Programador de tareas de Windows

El Programador de tareas de Windows no sólo funciona con un temporizador, sino que además puede realizar acciones cuando se generan eventos específicos. Eventos como que su PC se quede sin espacio en disco o que necesite reiniciar luego de las actualizaciones se pueden utilizar para activar scripts de PowerShell.

El venidero script de PowerShell debe precaverse en su propio archivo (por ejemplo, my_ntfy_script.ps1). Acepta un título, un mensaje y una URL para un servidor ntfy.sh y luego envía la notificación proporcionada.

param(
(string)$Title = "Windows Event",
(string)$Message = "Triggered",
(string)$Url = "https://ntfy.sh/my_super_secret_topic"
)
try {
# Make HTTP Request to ntfy.sh API
Invoke-RestMethod -Method Post -Uri $Url -Headers @{ Title = $Title } -Body $Message -ErrorAction Stop
} catch {
# Write to the Application log on failure
Write-EventLog -LogName Application -Source "Windows PowerShell" `
-EventId 3001 -EntryType Warning `
-Message "ntfy.sh notify failed: $($_.Exception.Message)"
}

Luego puede crear una tarea activada por eventos en el Programador de tareas de Windows. Este ejemplo envía una notificación cuando un adjudicatario intenta iniciar sesión y no lo logra, lo que crea un evento con ID 4625 en el registro de seguridad.

Para crear una tarea programada para esto, refugio el Programador de tareas buscándolo en el menú Inicio de Windows, luego seleccione Entusiasmo > Crear tarea básica en la mostrador de herramientas. En el cuadro de diálogo Crear tarea, complete el Nombre y la Descripción opcional de la tarea (por ejemplo, Notificación de error de inicio de sesión de ntfy.sh), haga clic en “Venidero”, luego configure el Activador en “Cuando se registra un evento específico” y luego haga clic en “Venidero” nuevamente.

Para activar una notificación cuando su PC se reinicie, establezca el valencia de Registro en Seguridady establezca el ID de evento en 4625y nuevamente, presione “Venidero”.

Programar una tarea en el Programador de tareas desencadenada por un evento.

A continuación, seleccione la Entusiasmo para iniciar un software y presione el llamador Venidero una vez más. Copie el venidero comando en el campo Software/script, reemplazando la ruta a su script y el nombre del tema.

powershell.exe -NoProfile -ExecutionPolicy Bypass -File "C:Scriptsmy_ntfy_script.ps1" -Title "Login failed" -Message "Someone tried to access your PC" -Url "https://ntfy.sh/my_super_secret_topic"
Configurar un script de PowerShell en el Programador de tareas.

Haga clic en “Venidero” nuevamente. Es posible que se le presente una advertencia sobre los argumentos que se proporcionan en el cuadro de texto Software; está adecuadamente, se convertirán en argumentos cuando los guarde. Haga clic en Finalizar en la venidero pantalla cuando haya terminado.

Entradas del Programador de tareas de Windows.

Cuando haya terminado, la nueva tarea debería aparecer en la índice Biblioteca de programación de tareas como se muestra en lo alto. Para probar, puede hacer clic derecho en la tarea y preferir “Ejecutar”.

Tenga en cuenta que estas notificaciones no contienen ninguna información reveladora, como direcciones IP o nombres de adjudicatario. Sé lo que significan las notificaciones, pero si cierto más adivinara de alguna modo el nombre del tema ntfy.sh, no podría hacer falta con la información.

ntfy.sh y macOS Automator

La útil Automator que viene con macOS a menudo se pasa por parada, posiblemente se descuide, pero verdaderamente puede hacer mucho. Le permite automatizar tareas comunes con una codificación mínima, e incluso puede grabarse haciendo cosas y luego hacer que las repita. Igualmente puede incorporar scripts Bash, por lo que el fragmento proporcionado anteriormente además se puede utilizar aquí.

Suscribirse desde las aplicaciones ntfy.sh

Desde la aplicación ntfy.sh en su dispositivo móvil (o usando la aplicación web desde su navegador), toque Anexar suscripción, luego ingrese el nombre de su tema (y la dirección del servidor personalizado si está usando uno).

Agregar una suscripción a ntfy.sh.

El tema suscrito aparecerá entonces en la índice…

Visualización de temas suscritos en ntfy.sh.

… ¡Y cuando se ejecuten tus scripts, recibirás una notificación!

Notificación recibida en un iPhone de ntfy.sh.

¡Sobrado simple! Y definitivamente útil.

Proyectos de bricolaje que querrás conocer fuera de casa

Si aún no tienes falta sobre qué remitir notificaciones, ¿por qué no inicias un laboratorio doméstico (son muy efectos y te permiten meter un montón de aplicaciones, incluido ntfy.sh)?

O ejecute su hogar inteligente desde una Raspberry Pi usando Home Assistant, que admite ntfy.sh para notificaciones. Si quieres tantear, puedes probar algunos de estos proyectos de Raspberry Pi de fin de semana (¡y algunos proyectos más aquí y aquí!) y ver si hay poco a lo que puedas pegar ntfy.sh que aún no se haya hecho.

Related Posts

La tiempo DGX de Nvidia es una supercomputadora de escritorio que ejecuta modelos de inteligencia industrial de billones de parámetros sin la abundancia

NVIDIA el lunes presentó una supercomputadora de escritorio lo suficientemente potente como para ejecutar modelos de inteligencia industrial con hasta un billón de parámetros (aproximadamente la escalera de GPT-4) sin…

No tire esa vieja polímero MicroSD: estos cinco dispositivos aún dependen de ellas

Sean Gallup/Getty Images Desde que Samsung abandonó por completo las ranuras para tarjetas microSD en sus teléfonos insignia Galaxy S con el…

You Missed

CODEVI recibe labor diplomática de EE.UU. en RD y Haití

CODEVI recibe labor diplomática de EE.UU. en RD y Haití

corte militar deja a millones sin electricidad y alimenta la preocupación

corte militar deja a millones sin electricidad y alimenta la preocupación

La tiempo DGX de Nvidia es una supercomputadora de escritorio que ejecuta modelos de inteligencia industrial de billones de parámetros sin la abundancia

La tiempo DGX de Nvidia es una supercomputadora de escritorio que ejecuta modelos de inteligencia industrial de billones de parámetros sin la abundancia

Grupo destrozada y imputado independiente: el caso de la bala perdida que sacudió a Ocoa

Grupo destrozada y imputado independiente: el caso de la bala perdida que sacudió a Ocoa

Yeni Berenice Reynoso advierte que la corrupción rompe el resolución social y daña la convivencia

Yeni Berenice Reynoso advierte que la corrupción rompe el resolución social y daña la convivencia

Riachuelo Santiago, el pueblo campestre donde el tiempo parece ir más despacio

Riachuelo Santiago, el pueblo campestre donde el tiempo parece ir más despacio