Orkiestracja kanałów
W wersji podglądowejZacznij od naszych ustawień domyślnych. Nadpisuj tylko to, czego potrzebujesz.
Dostępność kanałów, reguły nadawców i regulacje różnią się w zależności od kraju, a ich prawidłowe opanowanie to lata pracy. Bird dostarcza to jako konfigurację bazową per kraj: które kanały działają w danym miejscu, którzy nadawcy są dozwoleni i rozsądne domyślne ustawienia kodów. Twoje ustawienia nakładają się na wierzch. Zmieniasz jedną rzecz dla jednego kraju; wszystko, czego nie ruszasz, przechodzi do warstwy poniżej. To routing per kraj jako pełnoprawny zasób API — kontrola, której większość API weryfikacyjnych Ci nie daje.
import { BirdClient } from "@messagebird/sdk";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
// Send the code, then check it by recipient.
await bird.verify.verifications.create({
to: { phone_number: "+15551234567" },
}).safe();
const { data } = await bird.verify.verifications.check({
to: { phone_number: "+15551234567" },
code: userInput,
}).safe();Dziedziczysz domyślne ustawienia Bird, a potem budujesz na nich.
Każda weryfikacja w Bird Verify API rozwiązuje swoje ustawienia poprzez kaskadę. Na dole znajduje się baza per kraj, którą Bird utrzymuje na podstawie lat obsługi e-maili i SMS — więc zanim cokolwiek skonfigurujesz, weryfikacja już sensownie routuje w każdym kraju. Twoja konfiguracja i nadpisania per kraj nakładają się na wierzch, a opcja per żądanie może dostroić pojedyncze wywołanie. Nigdy nie zaczynasz od pustej kartki i odpowiadasz tylko za decyzje, które faktycznie chcesz podjąć.
Kaskada wartości.
Wygrywa najwyższa warstwa, która ustawia wartość; wszystko, co zostawisz nieustawione, przechodzi do warstwy poniżej.
- 01
Opcje per żądanie.
Pola w wywołaniu tworzenia (długość kodu, preferencja kanału, lokalizacja) wygrywają dla tej jednej weryfikacji. Najlżejsze, najbardziej lokalne nadpisanie.
- 02
Twoje nadpisania per kraj.
Zmień kolejność kanałów lub nadawcę dla jednego kraju. Nadpisanie jest scalane: dotyczy pól, które ustawiasz, a reszta danego kraju nadal dziedziczy z warstwy poniżej.
- 03
Twoje domyślne ustawienia konfiguracji.
Twój globalny plan aplikacji i reguły kodów — kolejność kanałów, długość kodu, TTL i liczba prób, które chcesz wszędzie tam, gdzie nie ustawiłeś nadpisania per kraj.
- 04
Baza Bird per kraj.
Najniższa warstwa: własne domyślne ustawienia Bird per kraj, oparte na doświadczeniu z obsługi e-maili i SMS na dużą skalę. Wszystko, co zostawisz nieustawione, przechodzi tutaj, więc weryfikacja zawsze rozwiązuje się do sensownego planu.
Nadpisz kraj, resztę odziedzicz.
Ustaw swój plan raz, a potem modyfikuj tylko kraje, które wymagają czegoś innego. Tutaj Brazylia zaczyna od WhatsApp, potem SMS; każdy inny kraj nadal korzysta z Twoich domyślnych ustawień i bazy Bird.
// Your app-wide default plan.
await bird.verify.verifications.configurations.update("vfc_login", {
channels: [
{ channel: "email", state: "enabled" },
{ channel: "sms", state: "enabled" },
],
}).safe();
// Override one country; the rest inherits.
await bird.verify.verifications.configurations.countries.upsert("vfc_login", "BR", {
channels: [
{ channel: "whatsapp", state: "enabled" },
{ channel: "sms", state: "enabled" },
],
}).safe();Do czego rozwiązuje się weryfikacja.
Numer brazylijski w tej konfiguracji rozwiązuje się przez kaskadę. Nadpisanie BR ustawia kolejność WhatsApp, potem SMS, oba są dostępne, a weryfikacja raportuje uporządkowany plan, którego użyje, wraz z typowanym identyfikatorem vrf_.
const { data } = await bird.verify.verifications.create({
configuration_id: "vfc_login",
to: { phone_number: "+5511998765432" }, // Brazil
}).safe();
// Resolved through the cascade + availability/kill-switch ceilings:
// {
// id: "vrf_01k2m9q8e7fh3v0b7m4d2a9xzt",
// status: "pending",
// channels: [{ channel: "whatsapp" }, { channel: "sms" }],
// last_channel: "whatsapp"
// }Dwa limity stoją ponad kaskadą.
Kaskada decyduje o domyślnych wartościach. Dwie bramki decydują o tym, co jest dozwolone — ograniczają rozwiązany plan, zamiast dostarczać wartości, które przechodzą w dół:
Dostępność per kraj. Możesz włączyć tylko kanały, które Bird faktycznie oferuje w danym kraju. Włączenie kanału, którego tam nie obsługujemy, jest operacją bez efektu, a nie cichym błędem — dostępność to przecięcie zbiorów, nigdy nadpisanie.
Globalny wyłącznik awaryjny. Gdy dostawca ma awarię, Bird może wyłączyć kanał wszędzie naraz. Twoja konfiguracja nie jest zmieniana; rozwiązany plan po prostu przechodzi na następny kanał, a po usunięciu blokady wraca do normy.
Routing, który ustawiasz, a nie zgłoszenie, które wysyłasz.
Rozwiązywany per weryfikacja, zwracany w odpowiedzi.
- 01
Trasy per kraj, po numerze.
Kraj jest ustalany na podstawie numeru odbiorcy w formacie E.164 — nie przekazujesz go. Ustaw trasę dla kraju, a nadpisze ona kolejność i nadawców w tym kraju.
- 02
Włączaj i wyłączaj kanały.
Każdy kanał ma stan włączony/wyłączony, więc możesz wyłączyć jeden dla danego kraju bez utraty jego miejsca w planie.
- 03
Rozwiązany plan jest w odpowiedzi.
Każda weryfikacja raportuje uporządkowane kanały, do których się rozwiązała, więc decyzja kaskady nigdy nie jest tajemnicą.
- 04
Automatyczne przełączanie awaryjne jest wdrażane.
Przechodzenie do kolejnego kanału w planie na podstawie dostarczenia (próba następnego kanału, gdy poprzedni nie dotarł) jest wdrażane wraz z pojawieniem się statusów dostarczenia. Plan jest już dziś rozwiązywany i zwracany.
Orkiestracja kanałów — FAQ
Czym jest kaskada konfiguracji?+
Co daje mi baza per kraj od Bird?+
Czy nadpisanie per kraj zastępuje cały plan?+
Czy mogę włączyć kanał, którego Bird nie oferuje w danym kraju?+
Jak określany jest kraj?+
Od kogo moi użytkownicy widzą kod?+
Reszta platformy Verify
Jedno API, jeden zestaw kluczy. Poznaj pozostałe możliwości.
Kontrola per kraj, jakiej nie daje żadne inne API weryfikacyjne.
Orkiestracja to jedna z możliwości Bird Verify: kanały, kod i limity są dostarczane razem, na tych samych dwóch endpointach.