Nastavení oznámení v reálném čase pro vaše podnikání – ať už posíláte potvrzení termínů pro kliniku nebo aktualizace objednávek pro opravnu – vyžaduje spolehlivý způsob sledování stavu doručení. Jakmile nastavíte URL adresu zpětného volání (callback URL), je znalost toho, jak přesně otestovat SMS po konfiguraci webhooku, kritickým dalším krokem k zajištění toho, aby váš systém bezchybně zpracovával zprávy o doručení a příchozí zprávy.

Krok 1: Nastavení lokálního naslouchače webhooků

Předtím, než budete moci testovat, jak váš systém zpracovává zprávy o doručení SMS, potřebujete veřejnou URL adresu, která může přijímat požadavky HTTP POST z vaší SMS brány. Pokud vyvíjíte lokálně, váš server běžící na localhost:3000 není přístupný z otevřeného internetu. K překlenutí této mezery můžete použít nástroje pro lokální tunelování jako ngrok, LocalTunnel nebo online nástroje pro testování webhooků jako Webhook.site.

Pro rychlý test bez nutnosti konfigurace vřele doporučujeme Webhook.site. Generuje unikátní, dočasnou veřejnou URL adresu, kde můžete sledovat příchozí data (payloady) v reálném čase. Pokud dáváte přednost testování přímo proti vaší lokální aplikaci, spusťte ngrok pro zpřístupnění vašeho lokálního portu:

ngrok http 3000

Tento příkaz vygeneruje veřejnou HTTPS adresu pro přesměrování (např. https://vasesubdomena.ngrok-free.app). K této URL připojíte svou trasu pro webhook – například https://vasesubdomena.ngrok-free.app/webhooks/sms – a použijete ji jako koncový bod (endpoint) webhooku.

Psaní jednoduchého přijímače webhooků v Express.js

Pokud chcete logovat a kontrolovat payload na vlastním backendu, zde je jednoduchý kód pro Node.js a Express pro nastavení rychlého koncového bodu:

const express = require('express');
const app = express();
app.use(express.json());

app.post('/webhooks/sms', (req, res) => {
  console.log('Received Webhook Payload:', JSON.stringify(req.body, null, 2));
  // Vždy rychle vraťte stav 200 OK pro potvrzení přijetí
  res.status(200).send({ status: 'success' });
});

app.listen(3000, () => console.log('Webhook receiver listening on port 3000'));

Krok 2: Konfigurace URL adresy webhooku v SMS bráně

Jakmile máte svou veřejnou URL adresu webhooku, musíte ji zaregistrovat v ovládacím panelu vaší SMS brány. Na rozdíl od starších poskytovatelů jako Twilio nebo Vonage, kteří vyžadují složitou registraci A2P 10DLC, ověřování firemního profilu a schvalování kampaní ještě předtím, než vůbec můžete poslat testovací zprávu, MySMSGate vám umožní připojit vlastní telefon s Androidem pomocí jednoduchého QR kódu a začít okamžitě testovat.

Pro konfiguraci webhooku v MySMSGate:

  1. Přihlaste se do svého panelu na MySMSGate.
  2. Přejděte do nastavení API nebo panelu pro integraci vývojářů.
  3. Vložte svou URL adresu webhooku (např. URL z Webhook.site nebo vaši adresu z ngrok) do pole „Webhook URL“.
  4. Vyberte události, které chcete odebírat (např. sms.sent, sms.delivered, sms.failed nebo sms.received).
  5. Uložte nastavení.

Tato konfigurace propojuje vaše fyzické SIM karty v Androidu s vaší backendovou aplikací a zajišťuje, že jakákoli změna stavu SMS nebo příchozí textová zpráva bude okamžitě přeposlána na váš server.

Krok 3: Spuštění testovací SMS pro ověření doručení webhooku

Nejspolehlivějším způsobem, jak otestovat váš webhook, je vyvolat skutečnou SMS zprávu. S MySMSGate nemusíte kupovat virtuální čísla ani nastavovat sandboxové prostředí. Protože platforma promění váš telefon s Androidem v SMS bránu, posíláte pro testování skutečné zprávy přes vlastní SIM kartu na své vlastní mobilní číslo.

Testovací SMS můžete spustit přímo z webového panelu pomocí rozhraní Web Conversations nebo programově prostřednictvím našeho jednoduchého REST API. Zde je příklad curl pro spuštění testovací zprávy:

curl -X POST https://mysmsgate.net/api/v1/send \
  -H "Authorization: Bearer VÁŠ_API_KLÍČ" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+420123456789",
    "message": "Testovací zpráva webhooku z MySMSGate",
    "sim_slot": 1
  }'

Po spuštění tohoto požadavku váš připojený telefon s Androidem okamžitě odešle zprávu přes svou SIM kartu. Jakmile se zpráva změní z „pending“ na „sent“ a nakonec „delivered“, MySMSGate odešle požadavky HTTP POST na vaši nakonfigurovanou URL adresu webhooku.

Krok 4: Kontrola dat (payloadu) o stavu doručení

Jakmile spustíte testovací SMS, zkontrolujte svůj naslouchač webhooků (například Webhook.site nebo váš lokální terminál běžící s ngrok). Měli byste vidět příchozí požadavek HTTP POST. Kontrola tohoto payloadu je kritickou součástí toho, jak se naučit testovat SMS po konfiguraci webhooku.

Typický payload webhooku o stavu doručení z MySMSGate vypadá takto:

{
  "event": "sms.status_changed",
  "message_id": "msg_8f7d6e5c4b3a",
  "to": "+420123456789",
  "status": "delivered",
  "sim_slot": 1,
  "device_id": "dev_android_01",
  "timestamp": "2026-08-05T14:32:01.000Z",
  "error_code": null
}

Při analýze tohoto payloadu ověřte následující pole:

  • message_id: Odpovídá ID vrácenému úvodním voláním API.
  • status: Potvrzuje, zda byla zpráva úspěšně odeslána nebo doručena.
  • sim_slot: Identifikuje, která SIM karta byla použita (užitečné zejména pro telefony Android s dual-SIM).
  • error_code: Pokud je stav „failed“, toto pole bude obsahovat důvod (např. žádný signál operátora, nedostatek kreditu).

Krok 5: Testování mezních stavů webhooku a opakovaných pokusů

Robustní produkční aplikace musí zvládat víc než jen úspěšná doručení. Musíte ověřit, jak se váš systém chová, když se něco pokazí. Při testování integrace webhooku nezapomeňte nasimulovat a zpracovat tyto tři mezní případy:

  1. Simulace chyby doručení: Pošlete SMS na neplatné nebo odpojené telefonní číslo. Sledujte payload webhooku. status by se měl aktualizovat na failed a pole error_code by mělo být vyplněno. Na MySMSGate je jakákoli neúspěšná SMS automaticky vrácena na váš zůstatek na účtu, což si můžete ověřit v panelu.
  2. Simulace výpadku serveru: Dočasně vypněte svůj lokální server pro příjem webhooků a spusťte SMS. Dobrá SMS brána zařadí zprávy o doručení do fronty a pokusí se je znovu odeslat, pokud váš server vrátí chybu 5xx nebo vyprší časový limit. Ověřte, že se brána pokusí o doručení webhooku znovu, jakmile server opět zprovozníte.
  3. Zpracování duplicitních webhooků: Ve vzácných síťových scénářích může váš server obdržet stejnou událost webhooku dvakrát. Zajistěte, aby byl váš backendový kód idempotentní – to znamená, že před spuštěním jakékoli obchodní logiky (jako je odeslání následného e-mailu nebo aktualizace záznamu zákazníka) zkontroluje, zda již byl stav message_id v databázi aktualizován.

Srovnání testovacích prostředí webhooků u SMS bran

Testování webhooků se může výrazně lišit v závislosti na zvoleném poskytovateli SMS API. Starší cloudové komunikační platformy často přinášejí tření prostřednictvím složitých pravidel shody a sandboxů, zatímco moderní SMS brány založené na Androidu zjednodušují vývojářskou zkušenost.

Níže je srovnání testování webhooků a správy doručování SMS napříč různými platformami:

Funkce / ParametrMySMSGateTwilio / PlivoStarší SMS brány
Čas nastavení< 5 minut (sken QR kódu)Dny až týdny (A2P 10DLC schválení)Hodiny (složité API klíče)
Testovací prostředíSkutečné Android zařízení & SIM kartaOmezený Sandbox nebo placená virtuální číslaPouze simulovaný sandbox
Struktura cenFixních $0.02/SMS (žádné měsíční poplatky)Účtování za segment + poplatky operátorů + měsíční nájem číslaMěsíční předplatné (např. $9.99/měsíc)
Politika u neúspěšných SMSAutomatické vrácení kreditu při chyběÚčtována plná cena i při selhání doručeníRůzné (často účtováno i tak)
No-code integraceZapier, Make.com, n8n, Web DashboardVyžaduje vlastní kód nebo složitý middlewareOmezené integrace

Použitím vlastního telefonu s Androidem jako SMS brány obejdete nutnost kupovat drahé dedikované short kódy nebo virtuální čísla jen proto, abyste otestovali své webhooky. To dělá z MySMSGate nejlevnější SMS API pro malé firmy, které chtějí jednoduchá a spolehlivá oznámení bez režie podnikových kontraktů.

Často kladené otázky

Níže jsou uvedeny některé z nejčastějších otázek, které si vývojáři a majitelé firem kladou při nastavování a testování SMS webhooků.

Jak ověřím, zda můj koncový bod webhooku přijímá stavy doručení SMS?

Můžete to ověřit kontrolou protokolů (logů) vašeho serveru nebo použitím nástroje jako Webhook.site. Při odeslání SMS brána odešle požadavek HTTP POST na vaši URL. Pokud logy vašeho serveru vykazují příchozí požadavek POST s kódem odpovědi 200 OK, váš koncový bod úspěšně přijímá stavy doručení.

Jaké nástroje bych měl použít k lokálnímu testování webhooků?

Nejlepšími nástroji pro lokální testování webhooků jsou ngrok (pro zpřístupnění vašeho lokálního serveru internetu prostřednictvím zabezpečeného tunelu) a Webhook.site (pro rychlou kontrolu surových JSON payloadů bez psaní kódu). Oba nástroje jsou zdarma a vývojáři je hojně využívají.

Proč můj SMS webhook vrací při testování chybu 500?

Chyba 500 Internal Server Error znamená, že kód vašeho přijímače webhooku spadl nebo narazil na chybu při zpracování příchozího payloadu. Zkontrolujte logy svého backendového serveru, abyste našli stack trace. Ujistěte se, že váš kód správně parsuje tělo JSON a rychle vrací odpověď 200 OK před prováděním jakýchkoli dlouhotrvajících databázových operací.

Jak MySMSGate řeší opakované pokusy webhooku, pokud je můj server offline?

Pokud je váš server offline nebo vrací chybový stav (jako 500 nebo 503), systém doručování webhooků MySMSGate automaticky zařadí oznámení do fronty a pokusí se o jeho opětovné odeslání v rostoucích intervalech. To zajišťuje, že nikdy neztratíte kritické zprávy o doručení nebo příchozí odpovědi zákazníků během krátkých aktualizací serveru.