Wiki · Integrace
SMS přes Twilio
SMS je nejdražší a nejhloupější kanál — a přesto se hodí. Kdy, jak a za kolik.
✉️
SMS je nejdražší a nejhloupější kanál — a přesto se hodí.
Nemá historii, neumí formátování a každá zpráva něco stojí. Na druhou stranu dojde tam, kde WhatsApp
ani Telegram nemá kdo otevřít: na obyčejný telefon. Používejte ji na upozornění a krátké dotazy,
ne na práci s přílohami.
Co k tomu potřebujete
| Věc | Poznámka |
|---|---|
| Účet Twilio | Má zkušební režim; zkušební číslo ale odpovídá jen ověřeným číslům |
| Číslo s podporou SMS | U Twilia koupené číslo (v ČR obvykle české nebo mezinárodní) |
| Veřejně dostupný server | Twilio posílá příchozí SMS na webhook — potřebujete HTTPS adresu |
aiohttp v prostředí | Doplní instalace závislostí pro režim sms |
Nastavení
# ~/.hermes/.env
TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=vas_auth_token
TWILIO_PHONE_NUMBER=+420777123456
# komu smí agent odepisovat (doporučeno vždy)
SMS_ALLOWED_USERS=+420777654321,+420777222333
# kam chodí výsledky pravidelných úloh
SMS_HOME_CHANNEL=+420777654321
# musí přesně odpovídat adrese nastavené u Twilia
SMS_WEBHOOK_URL=https://vas-server:8080/webhooks/twilio
hermes gateway setup # nebo průvodcem: vybrat SMS (Twilio)
Webhook u Twilia
Twilio Console → Phone Numbers → Manage → Active Numbers → vaše číslo
Messaging → A MESSAGE COMES IN
Webhook: https://vas-server:8080/webhooks/twilio
Method: POST
Když běží Hermes na domácím počítači, vystavte port dočasně tunelem
(cloudflared tunnel --url http://localhost:8080 nebo ngrok http 8080) a jeho
adresu vložte jak do Twilia, tak do SMS_WEBHOOK_URL. Bez shody adres adaptér
odmítne nastartovat — je to ochrana proti podvrženým požadavkům.
Bezpečnost
| Opatření | Proč |
|---|---|
SMS_ALLOWED_USERS | Bez něj odpovídá agent komukoli, kdo zná vaše číslo — a SMS posílá na cizí účet |
| Ověřování podpisu | Twilio podepisuje požadavky; SMS_INSECURE_NO_SIGNATURE patří jen na testování |
| Veřejná adresa jen přes HTTPS | HTTP tunelem je pozvánka pro cizí požadavky |
| Rozpočet | SMS se platí za kus; nastavte si limit u Twilia a hlídejte spotřebu |
Kolik to stojí
Cena má dvě části: měsíční poplatek za číslo a cena za odeslanou/přijatou SMS (u nás se pohybuje v řádu korun za zprávu, přesná částka závisí na zemi a operátorovi). Ceník Twilia se mění — před nasazením si ho ověřte v konzoli. Pro srovnání: Telegram i WhatsApp jsou zdarma, takže SMS dává smysl jen tam, kde jiná cesta není.
Na co si dát pozor
| Situace | Co s tím |
|---|---|
| Na zkušebním účtu zprávy nedorazí | Zkušební číslo odpovídá jen ověřeným číslům; ověřte je v konzoli |
| Agent mlčí | Chybí SMS_WEBHOOK_URL, nebo nesouhlasí s adresou u Twilia |
| Odpovídá i cizím lidem | Chybí allowlist — doplňte ho hned |
| Dlouhá odpověď se rozpadne | SMS má limit znaků a diakritika ho zkracuje; pište krátce |
