Infraštruktúra
Na čom BulkGate beží, kadiaľ správy odchádzajú do sietí operátorov, ako prevádzku chránime a čo z toho vyplýva pre integráciu, ktorá musí vydržať aj v špičke.
Prevádzka na troch lokalitách
Služba beží na niekoľkých serveroch v troch geografických lokalitách. Nejde o jeden stroj so zálohou, ale o súbežnú prevádzku — ak vypadne ktorákoľvek lokalita, zvyšné prevezmú prevádzku automaticky a bez zásahu z vašej strany. Z pohľadu integrácie sa nemení nič: portal.bulkgate.com odpovedá ďalej a požiadavky odchádzajú rovnakou cestou.
Čo failover nepokrýva, je cesta k nám — výpadok u vášho poskytovateľa pripojenia, u operátora alebo kdekoľvek na trase medzi vaším serverom a naším. Pre taký prípad je tu záložný server.
Infraštruktúra je stavaná na odolnosť voči výpadkom a proti DDoS ju chráni WEDOS Global Protection. Prevádzka na naše servery netečie priamo — prechádza ich anycastovou sieťou so 120+ uzlami, kde ju prevezme ten najbližší. Útok sa tak rozloží a odfiltruje na ich strane skôr, než vôbec dorazí k nám; naše servery neriešia zahltenie, ale len legitímne požiadavky, ktoré prejdú. Anycast navyše skracuje cestu vašej požiadavky, pretože ju preberá uzol najbližšie k vám.
Logy, konfiguráciu aj analytiku drží WEDOS takisto v rámci EÚ, takže ani ochrana proti DDoS nevyvádza dáta mimo úniu — pozrite Servery v EÚ.
Aktuálny stav služby nájdete na bulkgate.status.online.
Servery v EÚ
Všetky servery prevádzkujeme v Európskej únii. Vaše dáta teda neprechádzajú mimo EÚ a nemusíte riešiť prenos do tretích krajín ani štandardné zmluvné doložky.
Ako s osobnými údajmi zaobchádzame, popisujú Podmienky spracovania osobných údajov a Zásady ochrany osobných údajov.
Napojenie na operátorov
Správy doručujeme cez priame napojenia na operátorov v Európe, Ázii, Afrike a v Severnej, Strednej aj Južnej Amerike.
Čo znamená 0-hop
Priame napojenie je 0-hop spojenie — medzi nami a SMSC operátora nestojí nikto ďalší. Správa ide z našej brány rovno do koncovej siete. Je to najvyššia možná kvalita doručenia; lepšia cesta ku koncovému číslu neexistuje, pretože žiadna kratšia nie je.
Každý medzičlánok na trase je pritom miesto, kde sa môže niečo pokaziť:
| čo sa deje na ceste cez medzičlánky | pri 0-hop |
|---|---|
| Správa sa zdrží vo fronte ďalšieho agregátora. | Odpadá, cesta je priama. |
| Potvrdenie o doručení chodí oneskorene alebo nepresne. | Stav hlási priamo operátor. |
| Správa sa cestou stratí a nikto nepovie kde. | Trasa má len dva konce. |
| Za každý článok sa platí marža. | Cena bez medzistupňov. |
Preto priame napojenia budujeme všade, kde sa dá. Pri vysokých objemoch a pri správach citlivých na čas — OTP kódy, potvrdenia objednávok — je ten rozdiel badať najviac.
0-hop dnes máme do viac než 50 krajín a ich počet priebežne rastie.
Kde 0-hop nemáme, je prvou voľbou lokálny poskytovateľ priamo v danej krajine — jeden medzičlánok so znalosťou miestneho trhu, nie reťaz agregátorov. Až keď nie je ani ten, doručujeme cez SMS huby; tie držíme ako zálohu pre minimum destinácií, nie ako bežnú cestu.
RCS cez priame napojenie na Google
Priame napojenia nekončia pri SMS. RCS Business Messaging ide cez platformu Googlu. Máme na ňu priame napojenie a k tomu vlastné zmluvy s operátormi — oboje je potrebné: Google schvaľuje agenta a obsah, operátor púšťa prevádzku do svojej siete. Bez jedného z nich sa RCS správa k príjemcovi nedostane.
Čo RCS ponúka navyše oproti SMS:
| čo získate | v čom je to inak |
|---|---|
| Overený odosielateľ | Názov značky, logo a farba namiesto čísla, s odznakom overenia priamo v aplikácii Správy. |
| Bohatý obsah | Text so suggestion tlačidlami, súbor, karta alebo karusel kariet. |
| Interakcia | Príjemca odpovedá tlačidlom, nie písaním — klik sa vám vráti ako udalosť. |
| Stavy ako pri chate | Doručené aj prečítané, nie len odoslané. |
| Záchrana cez SMS | Ak príjemca nemá RCS alebo sa správa nedoručí v nastavenom čase, pokračuje ďalším kanálom v kaskáde. |
Typy správ a ako sa účtujú popisujú Typy RCS správ; nastavenie agenta Nastavenie RCS chatu.
Viber ako oficiálny partner
Pre Viber sme oficiálny partner, nie ďalší predajca — a ako jediní v Českej republike a na Slovensku. Nájdete nás v jeho zozname messaging partnerov. Správy teda odchádzajú schválenou cestou priamo do siete Viberu a odosielateľov registrujeme priamo u neho.
Čo to pre vás znamená v praxi:
| čo získate | v čom je to inak |
|---|---|
| Registrovaný odosielateľ | Názov značky namiesto čísla, s overeným profilom. Ako ho zaregistrovať |
| Bohatšia správa než SMS | Text, obrázok a tlačidlo s odkazom v jednej správe — bez limitu 160 znakov. Pozrite Viber – propagačný. |
| Transakčné šablóny | Schválené šablóny sa účtujú za nižšiu transakčnú cenu. Pozrite Viber – transakčný. |
| Platí sa len za doručené | Viber účtuje iba správy v stave DORUČENÉ a PREČÍTANÉ; ostatné po vypršaní vraciame na účet. Pozrite Stavy Viber správ. |
| Záchrana cez SMS | Ak Viber nedoručí v nastavenom čase, správa pokračuje ďalším kanálom v kaskáde. |
Typy správ a relácie popisuje stránka Typy Viber správ.
SMPP pre veľké objemy
Okrem HTTP API ponúkame väčším zákazníkom napojenie cez SMPP — protokol, na ktorom stoja samotné SMS siete. Oplatí sa tam, kde ide o trvalo vysoké objemy a kde potrebujete držať otvorenú reláciu namiesto jednotlivých HTTP požiadaviek.
SMPP nastavujeme individuálne; ozvite sa nám a preberieme objemy a parametre.
Prioritizácia správ
Nie každá správa znesie rovnaké čakanie. Kód, na ktorý používateľ čaká vo formulári, musí odísť okamžite; kampaň na sto tisíc čísel o sekundu navyše nepríde. Prevádzku preto radíme do samostatných frontov a obsluhujeme ich v tomto poradí:
| priorita | čo tam patrí |
|---|---|
| 1. OTP | Jednorazové kódy. Používateľ na ne čaká v reálnom čase. |
| 2. Transakčné | Potvrdenie objednávky, upozornenie na doručenie, výstraha — jedna správa jednému príjemcovi. |
| 3. Hromadné transakčné | Tie isté správy posielané dávkou na viac čísel naraz. |
| 4. Malé kampane | Propagačná rozosielka na menší počet príjemcov. |
| 5. Stredné kampane | Propagačná rozosielka stredného rozsahu. |
| 6. Veľké kampane | Rozsiahla propagačná rozosielka. |
Fronty sa nepredbiehajú: rozbehnutá veľká kampaň nezdrží OTP kód, ktorý príde uprostred nej.
Oddelenie transakčnej a propagačnej prevádzky od zákazníkov vyžadujeme. Nie je to odporúčanie — celá prioritizácia na ňom stojí. Každý typ správ posielajte tým endpointom, kam patrí: transakčnú správu cez transakčný endpoint, propagačnú rozosielku cez propagačný. Jednoprvková kampaň namiesto transakčnej správy si zbytočne počká vo fronte kampaní; kampaň pretlačená transakčným endpointom zdrží správy, na ktoré niekto čaká v reálnom čase, a je navyše prísne zakázaná.
Ochrana proti phishingu a SMS pumpingu
Prevádzku priebežne vyhodnocujeme, aby sme zachytili dve veci, ktoré poškodzujú odosielateľov aj príjemcov.
Phishing. Každú správu kontrolujeme oproti vzorom známych podvodných kampaní — ID odosielateľa aj text, a zvlášť pre každú cieľovú krajinu. Kontrola počíta aj s napodobeninami: zachytí aj názov alebo formuláciu úmyselne pozmenenú o pár znakov, aby prešla doslovným porovnaním. Chráni to vašu značku pred tým, aby sa za ňu niekto vydával, a vaše číslo odosielateľa pred reputačným postihom u operátora.
SMS pumping. Umelo generovaná prevádzka (Artificially Generated Traffic – AGT) — útočník tlačí cez váš formulár OTP kódy na čísla v prémiových rozsahoch a inkasuje podiel z ich ceny. Sledujeme preto tvar prevádzky, nie jej obsah. Hneď ako vidíme prevádzku, ktorá nezodpovedá tomu, čo z účtu bežne chodí — náhly nárast alebo neobvyklé destinácie — odosielanie zastavíme a upozorníme vás e-mailom a SMS. Útok sa tým preruší skôr, než stihne predražiť; škoda zostane pri tom, čo už odišlo.
Analýza je anonymná. Prebieha automaticky nad tvarom prevádzky, nie nad identitou príjemcov — nikto vaše správy nečíta a nevzniká z nich žiadny profil. Zodpovedá to tomu, čo je popísané v Servery v EÚ.
Sami môžete útoku na svoj formulár predísť nastavením request_quota_identification a request_quota_number v OTP API — kvóta sa viaže na žiadateľa, typicky jeho IP adresu. V portáli na to navyše máte geografické reštrikcie a denné limity odoslaných správ; ako ich nastaviť, popisuje Hacknuté OTP SMS: Chráňte sa s BulkGate API limitmi!.
Zabezpečenie komunikácie a dát
Všetka komunikácia ide cez HTTPS. API nemá nešifrovanú variantu — požiadavku na http:// portál presmeruje na HTTPS, ale presmerovanie nezachová telo POST požiadavky, takže správu neodošle. Volajte preto vždy priamo https://, nikdy sa nespoliehajte na presmerovanie.
Prijímame TLS 1.2 a 1.3; staršie TLS 1.0 a 1.1 server odmieta. Ak integrácia beží na staršom prostredí, uistite sa, že jeho HTTP klient TLS 1.2 podporuje — inak spojenie zlyhá ešte pred odoslaním požiadavky. To isté platí pre záložný server.
Komunikácia s poskytovateľmi je vždy šifrovaná. Šifrovanie nekončí pri vašej požiadavke. Rovnako chránený je aj druhý úsek trasy — či už správa ide 0-hop priamo operátorovi, cez lokálneho poskytovateľa, alebo cez hub.
Portál chránia bezpečnostné hlavičky. Prehliadaču posiela tieto:
- Content Security Policy — skripty sa spustia len s jednorazovým
nonce. X-Content-Type-Options: nosniff— prehliadač nesmie hádať typ obsahu.X-Frame-Options: SAMEORIGIN— stránku nemožno vložiť do cudzieho rámca, obrana proti clickjackingu.Referrer-Policy: strict-origin-when-cross-origin— cudzej doméne sa neodošle celá cesta vrátane parametrov.Feature-Policy— mikrofón, kamera aj platobné API sú v portáli vypnuté.
Heslá NIE SÚ uložené v plaintexte. Ukladá sa len odtlačok algoritmom Argon2id — z databázy sa heslo spätne vypočítať nedá, ani keby ju niekto získal. Rovnako zaobchádzame aj s jednorazovými kódmi: OTP kód sa v databáze uchováva ako Argon2id odtlačok, nie ako čitateľné číslo, takže ho z našej strany nikto neprečíta.
API tokeny sú v databáze zašifrované. Token sa ukladá šifrovaný (AES-256), nie ako čitateľný reťazec.
Token je heslo k vášmu kreditu. Nikdy ho nedávajte do kódu, ktorý beží v prehliadači alebo v mobilnej aplikácii — odtiaľ si ho ktokoľvek prečíta. API volajte zo svojho servera a token držte v konfigurácii mimo repozitára.
Prečo to zaujíma veľkých zákazníkov
Rozdiel medzi poskytovateľmi nie je v tom, či správu odošlú, ale kadiaľ. U nás ide správa v prvom rade 0-hop priamo do siete operátora; kde také napojenie nemáme, cez lokálneho poskytovateľa v danej krajine; a až v minime prípadov cez SMS hub. Čím vyššie v tomto poradí správa ide, tým rýchlejšie dorazí, tým presnejšie je potvrdenie o doručení a tým menej rúk sa na nej podpíše — a pri státisícoch správ mesačne je to rozdiel, ktorý je vidieť v štatistikách doručiteľnosti aj na faktúre.
K tomu sa pridáva zvyšok: prevádzka na troch lokalitách s automatickým failoverom, záložný server pre výpadok na trase, servery v EÚ bez prenosu dát do tretích krajín, šifrovaná komunikácia na oboch úsekoch trasy a SMPP pre objemy, pre ktoré HTTP API prestáva stačiť. Nad prevádzkou navyše beží ochrana proti phishingu a SMS pumpingu, ktorá útok na váš formulár zastaví skôr, než sa predraží. Službu prevádzkujeme od roku 2012, takže si na nej môžete postaviť integráciu, ktorú nebudete o rok prepisovať.
Ďakujeme za spätnú väzbu.