Come il casinò connette i provider live tramite bridge
Cosa è bridge nel contesto del casinò live
Bridge è un framework tra la piattaforma operatrice e i provider live (Evolution, Pratmatic Live, Ezugi, TVBet, ecc.) che normalizza API, eventi, loging e finuring. In poche parole, bridge rende uguali una dozzina di integrazioni di tipo diverso: un unico contratto di puntata, un unico schema di round, webhooks monouso e rendicontazione.
A cosa serve?
Contratto unico per decine di provider (meno modifiche alla piattaforma).
Idampotenza e protezione contro le riprese (retrai di rete, riavnect del giocatore).
Normalizza la directory (tabelle, limiti, side-bets, locali).
Cassa unica e regole di rischio (limiti, AML/KYT, RG).
Monitoraggio dello striam e della SLA sui provider.
Catena dei componenti
1. Casino Platform: account, KYC/RG, bonus, portafogli, fronte.
2. Bridge: adattatori di provider, bus eventi, mapping tavoli/limiti, finitura, loging, webhooks.
3. Il Live-Provider (solitamente WebRTC/HLS), il motore di gioco, il calcolo degli esiti, i rivenditori.
4. Portafoglio: Seamless (il saldo è conservato dall'operatore) o Transfer (deposito in banca giochi dal provider).
5. Osservabilità: metriche di striam (FPS, RTT, buffer), metriche di business (Bet, GGR, Hold).
Protocolli di rete e sessioni
Video:- WebRTC - ritardo basso (100-500 ms), richiesta ICE/STUN/TURN.
- HLS/LL-HLS - Ritardo più alto, ma più semplice del CDN.
- Token: JWT/opac (TTL 3-10 min), rotazione su richiesta del provider.
Modelli portafoglio
1) Seamless wallet (raccomandato)
La puntata/pagamento passa attraverso bridge al portafoglio dell'operatore.
I vantaggi sono un unico equilibrio, controllo immediato dei limiti, RG semplificato.
Contro - Requisiti rigorosi di disponibilità del portafoglio (SLA).
2) Transfer wallet
Il giocatore trasferisce i fondi alla banca del tavolo dal provider.
I vantaggi sono di meno sul portafoglio dell'operatore durante i picchi.
Meno: più difficile restituire, riavcile e controllo AML, attrito in UX.
Ciclo di vita sessione (seamless)
1 ./ crea « », restituisce « », « ».
2. Il fronte apre il lettore (WebRTC/HLS) e la connessione eventi.
3. Il giocatore scommette « » su bridge (« », « », «selection», «stake»).
4. Bridge pre-autorizza l'importo (hold) nel portafoglio e conferma il provider.
5. Il provider ha dichiarato « » spin/deal « ».
6. Bridge calcola il pagamento, azzera/restituisce hold, genera «transactionId».
7. Bridge invia una piattaforma webhook («roundId», «result», «payout», «balanceAfter»), scrive in un lettore.
8. Completamento/riconnessione in «sessionId».
Contratto eventi (esempio)
Puntata → bridge (WS/REST):json
{
"type": "bet. place", "idempotencyKey": "c0a4-77f…", "sessionId": "sess_abc123", "roundId": "R-2025-10-17-18:45:03-Table23", "selection": [{"market":"roulette_straight","value":"17"}], "stake": {"amount":"5. 00","currency":"EUR"}, "limitsProfile":"VIP_A"
}
Risposta bridge:
json
{
"status":"accepted", "balanceHold":"-5. 00", "betId":"bet_9f2…", "effectiveLimits":{"maxBet":"5000. 00"}
}
Risultato del round di → piattaforma (webhook):
json
{
"event":"round. settle", "roundId":"R-2025-10-17-18:45:03-Table23", "bets":[
{"betId":"bet_9f2…","stake":"5. 00","payout":"180. 00","outcome":"WIN"}
], "transactions":[
{"id":"trn_bet_9f2…","type":"DEBIT","amount":"5. 00"}, {"id":"trn_pay_9f2…","type":"CREDIT","amount":"180. 00"}
], "balanceAfter":"1320. 40"
}
Regole chiave:
- Idampotenza, tutte le richieste di idempotencyKey.
- La tipologia degli esiti è «WIN/LOSE/PUSH/VOID/RETRY».
- Gli identificatori stabili sono globalmente univoci (tabella + tempo + shard).
Directory e limiti
Discovery: '/provider/: id/table '- Elenco tavoli, limiti, side-bets, lingue, pianificazione.
Pool di limiti: DEFAULT, VIP _ A, VIP _ B, Ultra.
Regole di mapping: paese/valuta/stato KYC → tavoli e profili di limite validi.
Cambio caldo dei limiti: eventi "limits. updat'senza riavviare il tavolo.
Osservabilità e qualità dello striam (QoS)
Metriche per giocatore:- Segnali di puntata RTT (obiettivo <150 ms).
- Dropped frames / buffer events.
- Bitrate/Resolution adattamento.
- Bet window latency (tra «bettingOpen» e l'accettazione effettiva della puntata).
- Farmacia tavolo, aborted rounds, late settlements, frequenza «VOID».
- Media time-to-settle dopo la chiusura delle scommesse.
- QoS alert: degrado FPS, picchi retry.
Compliance e sicurezza
KYT/AML: analisi delle fonti di deposito, flag ad alto rischio, divieto di scommesse live.
RG (gioco responsabile): timeout, limiti, auto-esclusione - applicabili fino a «placeBet».
Data residency: logica e PII sono memorizzati da un operatore; bridge memorizza solo la tecnologia. riviste e aggregazioni.
Trasporto sicurezza: accesso ai provider, firma delle richieste HMAC, TTL dei token breve.
Controllo: disattivabile (WORM/append-only), esportato in «roundId »/« sessionId».
Calcolo, riavcile e restituzioni
On-the-fly settle: crediti/crediti immediati per ogni risultato.
Batch recordcile - Comprimere i report del provider (houly/daily) con il flugger bridge (P&L, commissione).
SCRIPT VOID/REFUND: errore di striping, errore del rivenditore, discussione - rimborso parziale/completo con codici di causa ben precisi.
Dispute Center: il collegamento « » consente di registrare il video (codice temporale) in modo che il supporto risolva rapidamente i tickets.
Prestazioni e disponibilità
Scalare: stateless provider + Kafka/NATS come bus di eventi.
Depositi: caldo (Redis) per le sessioni/limiti, caldo (Postges) per il ledger, freddo (S3) per i fogli.
Folback: se il portafoglio non risponde, «SOFT _ DECLINE» con i retrai; se il provider non è disponibile, disattivare i tavoli o nasconderli nella lobby.
Ritrae Idempotent: in base ai timeout di rete, ripetere «placeBet »/« settle» è sicuro.
X - Frontend-pattern
Sincronizzazione orologio: usa «serverTime» da bridge per i timer «Chiudi scommesse attraverso»....
Localizzazione: la lingua del rivenditore ≠ la lingua dell'interfaccia; Mostrate i sottotitoli/glossario dei termini.
Strim player: auto-fallback LL-HLS con una cattiva rete.
Error UI: codici comprensivi ('LBRG-401 TOKEN _ EXPIRED', 'LBRG-429 LIMIT _ EXCEEDED', 'LBRG-503 PROVIDER _ DOWN').
Molteplicità: svuotamento rapido dei tavoli senza interruzione della sessione (reuse 'sessionId ").
Anti-pattern
Conservare i token a lunga vita su un cliente.
Accettare la scommessa dopo il «bettingClosed» a causa del dileo è garantito.
L'assenza dì "è stata ripresa durante i retrai.
Mixare time-zone in «roundId» e rapporti.
Imposta i limiti a vista senza profili e lo stato KYC.
Ignorare lo striam è un churn alto sulle reti mobili.
Piano di implementazione passo-passo (assegno-foglio)
Architettura e contratti
- Fissa un unico contratto di eventi: 'bet. place`, `bet. accepted`, `bet. rejected`, `round. settle`, `limits. update`, `session. close`, `provider. error`.
- Identificare idempotency e i formati «roundId», «betId», «transactionId».
- Selezionare il modello portafoglio (Seamless).
Sicurezza
- Accesso ai provider, firma HMAC webhooks, TTL token per 10 minuti.
- Criterio RG/AML/KYT prima dell'accesso alle scommesse, controllo-login.
Directory e limiti
- Importazione di tavoli e profili di limite, mupping per paese/valuta/CUS.
- Aggiornamento caldo dei limiti e degli stati dei tavoli.
Frontand
- lettore LL-HLS folback, orari di sincronizzazione, timer di puntata stabili.
- Codice errato e messaggi umani.
Piano di prova
- Script high-latency/packet-loss, reconnection senza perdita di puntata.
- Doppio click di puntata per un debito (idampotenza).
- VOID/REFUND, round controversi, discrepanze di report.
Osservabilità
- Дашборд QoS: RTT, dropped frames, aborted rounds, time-to-settle.
- Alert per SLA provider, resoconcile.
Bridge trasforma lo zoo delle integrazioni live in un sistema gestito: tassi unificati, calcoli unificati, un UX prevedibile e un controllo trasparente della qualità dello striam. Con un bridge progettato correttamente, l'operatore connette più rapidamente i nuovi provider live, riduce i rischi tecnologici e protegge P&L grazie all'idampotenza, ai limiti rigorosi e alla netta osservabilità.