43 de erori Redis. Un singur claxon.

Honk te anunță când e nevoie de tine: o plată eșuată în magazin, o cerere de ofertă pe site, apă pe jos în bucătărie, un server cu probleme. Repetările vin într-o singură notificare, iar restul așteaptă liniștit în inbox.

Merge cu WordPress și WooCommerce, n8n, Zapier, Make, Home Assistant, Uptime Kuma și cu codul tău. Vezi ghidurile În curând în App Store

Uneltele tale îi spun lui Honk ce s-a întâmplat.

Magazinul, un formular de contact, un senzor din casă, un workflow n8n sau un server îi trimite lui Honk un mesaj scurt. Honk îl salvează înainte să răspundă, așa că mesajul nu se pierde nici dacă ceva cade o secundă mai târziu.

cURL

curl -sS https://honk-me.app/v1/messages \
  -H "Authorization: Bearer $HONK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Redis connection failed",
    "message": "Billing API could not connect to Redis (timeout after 5 s)",
    "severity": "long",
    "source": "billing-api",
    "group_key": "billing/redis",
    "event_type": "problem"
  }'

WooCommerce

// wp-content/mu-plugins/honk.php (the WooCommerce guide has the whole file)
add_action('woocommerce_order_status_failed', function ($order_id, $order) {
    honk_send([
        'title' => 'Payment failed: order #' . $order->get_order_number(),
        'message' => $order->get_payment_method_title() . ' declined the payment.',
        'severity' => 'long',
        'event_type' => 'problem',
        'group_key' => 'payments/' . $order->get_payment_method(),
    ], 'wc-' . $order_id . '-failed');
}, 10, 2);

Home Assistant

# automations.yaml (the Home Assistant guide has the rest_command)
actions:
  - action: rest_command.honk
    data:
      title: "Water leak in the kitchen"
      message: "The sensor under the sink is wet."
      severity: blast
      event_type: problem
      group_key: home/leak/kitchen

n8n

Honk → Send message
  Message:     Billing API could not connect to Redis (timeout after 5 s)
  Title:       Redis connection failed
  Severity:    Long Honk (Error)
  Additional Fields
    Group Key:   billing/redis
    Event Type:  Problem
    Source:      billing-api

Laravel

use HonkMe\Laravel\Facades\Honk;

Honk::problem('billing/redis', 'Redis connection failed',
    'Billing API could not connect to Redis (timeout after 5 s)');

CLI

honk-me problem --group-key billing/redis --source billing-api \
  --title "Redis connection failed" \
  --message "Billing API could not connect to Redis (timeout after 5 s)"

Repetările se adună într-un singur grup.

Tot ce ține de aceeași problemă ajunge în același grup. Telefonul nu vibrează la a doua eroare Redis și nici la a 43-a. La fel la 30 de plăți eșuate din cauza aceluiași procesator de plăți picat sau la un senzor de apă care se tot declanșează.

43 de evenimente într-un singur grup

Doar primul claxonează.

Primul eveniment al unei probleme noi pleacă imediat la toți cei care urmăresc proiectul, pe iPhone, pe Apple Watch și pe web. Un Claxon lung sau un Claxon continuu poate porni și o activitate live pe ecranul de blocare.

Honk pentru iPhone, Atenție: incidentul nou, primul în „Te așteaptă”.

Apoi, liniște.

De acolo primești cel mult o actualizare la 5 minute, cu numărul la zi. Dacă se agravează, afli imediat. Evenimentele de rutină ajung în rezumat, iar orele de liniște țin deoparte tot ce nu e urgent.

Când se rezolvă, afli și asta.

Când sursa anunță că merge din nou, primești o ultimă notificare și problema se închide. Cele 43 de evenimente rămân în grup cât timp planul tău păstrează mesajele, iar pe Apple Watch îl marchezi ca gestionat cu Double Tap.

Cinci niveluri, de la Claxon ușor la Claxon continuu.

Fiecare eveniment are un nivel de gravitate. Codul tău poate trimite fie denumirea tehnică (warning), fie numele claxonului (loud), iar aplicațiile dau fiecărui nivel propria pictogramă, ca să le deosebești și fără culori.

  • Claxon ușor Valoare în API: info · light

    Vești de rutină: un import terminat, un colet la ușă.

  • Bip-bip Valoare în API: success · beep

    Ceva a mers bine: un deploy, un backup, o plată.

  • Claxon puternic Valoare în API: warning · loud

    De văzut în curând: un disc ajuns la 91%.

  • Claxon lung Valoare în API: error · long

    Ceva a eșuat. Are mereu cel puțin prioritate ridicată.

  • Claxon continuu Valoare în API: critical · blast

    Ceva a căzut. Are mereu cel puțin prioritate ridicată.

Pe ecranul de blocare, pe ecranul principal și la încheietură.

Honk pentru iPhone e un inbox care funcționează ca Mail, iar de multe ori nici nu trebuie să-l deschizi. Pe Apple Watch vezi ce te așteaptă și marchezi ca gestionat cu Double Tap.

O activitate live ține incidentul pe ecranul de blocare și se actualizează chiar și cu Honk închis, până arată „Revenit”.
În Dynamic Island: nivelul și numărul de evenimente.
Apple Watch: „Gestionat” cu Double Tap.
Widgetul mic: câte grupuri te așteaptă și cel mai grav nivel.
Centrul de control: „Totul pe silențios” pentru o oră.
Widgetul mediu și cel mare le listează, cu „Silențios 1 h” și „Gestionat” la fiecare incident.

La dimensiunea reală de pe un iPhone 18 Pro.

Nu ai nevoie de cod.

Majoritatea uneltelor pe care le folosești deja pot trimite singure mesaje către Honk. Fiecare ghid te duce prin configurarea uneia, de la cap la coadă.

Toate ghidurile

Pentru dezvoltatori: un apel HTTP sau o bibliotecă.

Biblioteci oficiale pentru șase limbaje, un CLI pentru scripturi shell și CI și un nod comunitar pentru n8n. Toate funcționează la fel: câte un helper pentru fiecare nivel al scalei Honk, reîncercări automate fără duplicate și aceleași tipuri de erori în toate limbajele.

cURL

curl -sS https://honk-me.app/v1/messages \
  -H "Authorization: Bearer $HONK_KEY" \
  -H "Idempotency-Key: backup-$(date +%Y%m%d)" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Backup failed",
    "message": "pg_dump exited with 1",
    "severity": "long",
    "group_key": "db/backup",
    "event_type": "problem"
  }'
# → 202 {"id":"msg_…","status":"accepted","duplicate":false,"received_at":"…"}

Laravel

use HonkMe\Laravel\Facades\Honk;

Honk::beep('Backup finished', 'nightly pg_dump took 42 s');
Honk::loud('Disk 91%', '/var on app-01', ['groupKey' => 'disk/app-01/var']);

Node.js

import { Honk } from 'honk-me';

const honk = new Honk({ url: process.env.HONK_URL, key: process.env.HONK_KEY });
await honk.beep('Backup finished', 'nightly pg_dump took 42 s');

Go

import honk "github.com/honk-me/honk-go" // package honk

c, err := honk.FromEnv() // HONK_URL, HONK_KEY (+ optional HONK_SOURCE, HONK_ENVIRONMENT, HONK_CHANNEL)
if err != nil {
	log.Fatal(err)
}
_, err = c.Beep(ctx, "Backup finished", "nightly pg_dump took 42 s")

Swift

import HonkMe

let honk = try Honk.fromEnvironment()          // HONK_URL, HONK_KEY (+ HONK_SOURCE, HONK_ENVIRONMENT, HONK_CHANNEL)
try await honk.beep("Backup finished", "nightly pg_dump took 42 s")

Kotlin

import app.honkme.Honk

val honk = Honk.fromEnvironment()                 // HONK_URL, HONK_KEY (+ HONK_SOURCE, HONK_ENVIRONMENT, HONK_CHANNEL)
honk.beep("Backup finished", "nightly pg_dump took 42 s")   // suspend

Rust

use honk_me::Honk;

#[tokio::main]
async fn main() -> honk_me::Result<()> {
    let honk = Honk::from_env()?; // HONK_URL, HONK_KEY (+ HONK_SOURCE, HONK_ENVIRONMENT, HONK_CHANNEL)
    honk.beep("Backup finished", "nightly pg_dump took 42 s").await?;
    Ok(())
}

CLI

export HONK_URL=https://honk-me.app HONK_KEY=honk_…   # better: your secret store

honk-me beep "Backup finished" "nightly pg_dump took 42 s"
honk-me loud "Disk 91%" --group-key "disk/$(hostname)/var"

n8n

1. Settings → Community Nodes → Install → n8n-nodes-honk
2. Credentials → New → Honk API
     Server URL:     https://honk-me.app
     Ingestion Key:  honk_…
3. Add the node Honk → Send message
     Message:   nightly pg_dump took 42 s
     Title:     Backup finished
     Severity:  Beep-Beep (Success)

Fără reclame, fără urmărire, fără SDK-uri de analiză.

  • Fără parole. Te autentifici cu un cod din 6 cifre primit pe email.
  • Stocare în Germania. Mesajele stau pe un server din Germania și se șterg după 3, 14 sau 30 de zile, în funcție de plan.
  • AI-ul rămâne pe iPhone. Rezumatele și categoriile se generează pe dispozitiv, cu Apple Intelligence. Nimic nu pleacă la un server pentru AI, iar AI-ul nu ascunde și nu întârzie nicio notificare.

Politica de confidențialitate

Gratuit pentru un proiect. 9 € pe lună pentru zece.

Plătești pe spațiu de lucru, nu pe utilizator, și orice plan are toate funcțiile; diferă doar limitele. Cât timp Honk e disponibil doar pe bază de invitație, planul se stabilește când îți trimitem invitația.

Free
0 €
500 de mesaje pe zi
1 proiect · 1 membru
Pro
9 € pe lună
20.000 de mesaje pe zi
10 proiecte · 5 membri
Team
29 € pe lună
200.000 de mesaje pe zi
100 de proiecte · 50 de membri

Prețurile sunt în euro. În funcție de țară, se poate adăuga TVA.

Vezi prețurile

Cine face Honk

Honk e făcut de Dan Florian în Cluj‑Napoca, România, și rulează pe un server din Germania. Pentru întrebări, buguri sau o invitație, scrie la [email protected].

Întrebări

Cum primesc o invitație?

Cere acces cu adresa ta de email. Dacă cererea e aprobată, primești invitația pe email și te autentifici cu un cod din 6 cifre. Începi cu un spațiu de lucru personal.

Trebuie să scriu cod?

Nu. WordPress, Zapier, Make, n8n, Home Assistant și serviciile de monitorizare uptime pot trimite toate mesaje către Honk, iar ghidurile te ajută pas cu pas cu fiecare. Pentru aplicațiile tale există biblioteci în șase limbaje.

Există o aplicație pentru Android?

Nu una nativă. Aplicația web de la honk-me.app se instalează pe Android din Chrome și primește notificări prin Web Push.

Ce se întâmplă dacă ajung la o limită?

Depinde de limită. La limita zilnică de notificări, mesajele intră în continuare în inbox, notificările se opresc până la miezul nopții (UTC), iar fiecare persoană afectată e anunțată o singură dată. La limita zilnică de mesaje, mesajele noi sunt refuzate până la miezul nopții (UTC), iar aplicațiile tale află când să încerce din nou. Codurile de răspuns sunt în documentație.

Honk îmi monitorizează serverele?

Nu. Honk primește evenimentele pe care i le trimit sistemele tale; nu verifică și nu interoghează nimic. Dacă un server cade fără să mai trimită nimic, Honk nu are de unde să afle, așa că pune lângă el o verificare de uptime care raportează la Honk.

Îl poate folosi și echipa mea?

Da. Creează un spațiu de lucru comun și invită oameni ca proprietari, administratori sau membri. Proprietarii și administratorii văd toate proiectele; membrii văd proiectele la care au acces. Vezi cum funcționează spațiile de lucru și proiectele.