Byner ↔ Yeastar · Routing engine

Test een nummer

Zoekt het nummer op in Byner en toont naar welke bestemming de call gerouteerd zou worden — zonder echte oproep.

Team → bestemming

Koppel elk Byner-team aan een Yeastar Queue of Ring Group (nummer). Teams zonder bestemming vallen terug op de fallback.

TeamUsersTypeBestemming (nummer)Label

Recente beslissingen

Live-routeringen + simulaties (laatste 100).
TijdBellerRecordOwnerTeamBestemming

Yeastar Call Flow Designer — configuratie

Zo bouw je de inkomende-call-flow die deze server bevraagt en routeert naar het juiste team.

Hoe het werkt

Inkomend gesprek
   │  Inbound Route → Call Flow
   ▼
[HTTP Request]  GET https://ysconnect.tecjobz.be/api/routing/decision?phone=$Session.ani
   │  server: nummer → Byner-record → owner → team → bestemming
   ▼  antwoord: { "found": true, "team": "Techniek", "destination": "6300", "destinationType": "queue", "fallbackUsed": false }
[Condition / Transfer]  → Queue of Ring Group (of fallback)

Bereikbaarheid

  • Extern (PBX → server): https://ysconnect.tecjobz.be (TLS via reverse proxy).
  • Intern (beheer): http://<intern-ip>:3000/app/

Stap 1 — Inbound Route

Zet de bestemming van de Inbound Route naar de Call Flow die je hieronder bouwt.

Stap 2 — HTTP Request (component «HTTP Request 1»)

MethodGET
URLhttps://ysconnect.tecjobz.be/api/routing/decision?phone=$Session.ani
HeaderX-API-Key: <jullie API-key>
HeaderAccept: application/json
Timeout5s — zet de timeout/error-uitgang naar de fallback-queue (zo blokkeert een trage server nooit een gesprek)

De server geeft altijd HTTP 200 met een destination terug (fallback indien nodig), dus de flow komt nooit zonder bestemming te zitten.

Stap 3 — Bestemming uitlezen

Gebruik in een Condition/Set Variable-component de JSON-functie:

FX_JSON_GET_STRING($HttpRequest1.responseContent,"destination")   → bv. 6300
FX_JSON_GET_STRING($HttpRequest1.responseContent,"team")          → bv. Techniek
FX_JSON_GET_STRING($HttpRequest1.responseContent,"fallbackUsed")  → "true"/"false"

Stap 4 — Routeren naar het team

Optie A (aanbevolen, robuust): een Condition met één tak per team. Vergelijk FX_JSON_GET_STRING($HttpRequest1.responseContent,"team") met elke teamnaam (Techniek, Logistiek, Supply Chain, Engineering, HQ) en verbind elke tak met een Transfer naar de vaste Queue/Ring Group van dat team.

Optie B (dynamisch): als jouw CFD-versie een variabel bestemmingsnummer in de Transfer-component toelaat, transfereer dan rechtstreeks naar FX_JSON_GET_STRING($HttpRequest1.responseContent,"destination"). Test dit eerst.

Stap 5 — Fallback

Verbind de timeout/error-uitgang van de HTTP Request én de «geen match»-tak met de algemene receptie-queue. Dit komt overeen met de Fallback-bestemming die je instelt op het tabblad Team-mapping.

Testen zonder oproep

Gebruik het tabblad Simulator hierboven: voer een klantnummer in en bekijk de volledige trace + eindbestemming. Wat je daar ziet, is exact wat de CFD live krijgt.

Beveiliging

  • Alle /api/*-endpoints vereisen de header X-API-Key.
  • Extern verkeer loopt enkel over https:// (poort 443) via de reverse proxy.
  • Optioneel: beperk poort 443 op de firewall tot de egress-IP's van de Yeastar Cloud (op te vragen bij cloudtel.be, of af te lezen uit de proxy-logs bij de eerste call).