Tovább a tartalomhoz

Mobil SDK-k

A mobil SDK-k a webes widget megfelelői a saját alkalmazásaidhoz: az ügyfeleid alkalmazáson belüli támogatást kapnak a teljes beszélgetési előzményekkel és push-értesítésekkel, az ügynökeid pedig ugyanabban a Beérkezett üzenetek nézetben látják ezeket a beszélgetéseket. Ezek nem a csapatodnak szóló ügynöki alkalmazások; azok külön termékvonalat alkotnak.

Platform Nyelv és futtatókörnyezet Terjesztés Állapot
iOS Swift 5.9+, iOS 15+ Swift Package Manager, CocoaPods fejlesztés alatt
Android Kotlin 1.9+, Android 8.0 (API 26)+ Maven Central fejlesztés alatt
React Native a natív SDK-kat burkolja npm tervezett (béta)
Flutter a natív SDK-kat burkolja pub.dev tervezett (béta)

A natív SDK-k a mérvadók; a burkolók utánuk jelennek meg. Az óra- vagy TV-alkalmazások és az asztali SDK-k nem tartoznak a hatókörbe; asztali környezethez a webes widgetet használd.

Szöveges üzenetküldés, mellékletek, hangüzenetek, képek és videók, névtelen és azonosított munkamenetek, témák, egyéni avatar és márkajelzés, 40 nyelv, az AI concierge, beszélgetési előzmények, olvasatlan-jelvények, push-értesítések, mélylinkek, hívás kattintással a telefon tárcsázóján keresztül, offline sorba állítás háttérszinkronizálással, biometrikus feloldás a chathez, VoiceOver- és TalkBack-támogatás, sötét mód. Célzott lefordított méret: platformonként legfeljebb 5 MB.

Az alkalmazáson belüli WebRTC-hívások és az ügyfél általi képernyőmegosztás egy későbbi kiadásban érkeznek. A közös böngészés csak weben érhető el: a mobil operációs rendszerek nem engedik, hogy egy harmadik féltől származó SDK megfigyelje vagy irányítsa a képernyőt.

Inicializáld egyszer, az alkalmazás életciklusának elején:

// iOS
let config = RolChatConfig(
siteId: "site_abc123",
apiKey: "pk_live_…", // public key - safe to ship in the app
region: .eu, // eu / us
theme: RolChatTheme(primaryColor: .blue)
)
RolChat.shared.initialize(config: config)
// Android
val config = RolChatConfig.Builder()
.siteId("site_abc123")
.apiKey("pk_live_…")
.region(Region.EU)
.theme(RolChatTheme(primaryColor = Color.Blue))
.build()
RolChat.initialize(context, config)

Azonosítsd a felhasználót a bejelentkezése után, és jelentkeztesd ki, amikor kijelentkezik:

RolChat.shared.identify(userId: "user_12345", email: "alice@example.com", name: "Alice",
metadata: ["tier": "gold"])
RolChat.shared.logout() // on host-app sign-out, or the next user sees this history

A felület megjelenítése:

RolChat.shared.openChat() // modal
RolChat.shared.openChat(conversationId: id) // a specific conversation
RolChat.shared.openChatInline(view) // inside your own layout
RolChat.shared.close()

Visszahívások: rolChatDidOpen, rolChatDidClose, rolChatDidReceiveMessage(_:), rolChatDidFailToSend(_:). A nyilvános API iOS-en a fő szálon, Androidon háttérszálon is biztonságosan használható; a kapcsolatok megszakadnak, amikor az alkalmazás a háttérbe kerül, és helyreállnak, amikor előtérbe kerül.

  • Névtelen: a kulcskarikában vagy titkosított beállításokban tárolt eszközmunkamenet-azonosító túléli az alkalmazásfrissítéseket, és az eszközhöz, nem a felhasználóhoz kötődik. 90 nap inaktivitás után törlődik.
  • Azonosított: az identify után a munkamenet előléptetésre kerül, és egyértelmű esetben összevonódik az ugyanazon az eszközön lévő névtelen előzményekkel. A csatornák közötti identitásfeloldás az identitásgráf szabályait és a hozzájárulást követi.
  • Megbízható azonosítás: a backended aláír egy tokent a felhasználó adataival; az SDK továbbítja, a RolChat pedig a munkamenet előléptetése előtt ellenőrzi az aláírást. Az aláírás nélküli identify is működik, de kisebb megbízhatóságú.

Az alkalmazásban lévő nyilvános API-kulcs a tervezésből adódóan biztonságos: a webhelyre korlátozott, és sebességkorlát vonatkozik rá.

Platform Átvitel Amit biztosítanod kell
iOS APNs Egy APNs hitelesítési kulcs a RolChat irányítópultján
Android FCM Az FCM szolgáltatásfiók JSON-fájlja
RolChat.shared.setPushToken(deviceToken, type: .apns)
if RolChat.shared.handleNotification(userInfo) { return } // consumed: a chat message

Az értesítések szövegét szerveroldalon lokalizáljuk a felhasználó nyelvére. A gazdag értesítések támogatják az avatart, a válaszadást közvetlenül az értesítésből és az olvasottnak jelölést. Az SDK soha nem kér magától push-engedélyt; hívd meg a requestPushPermission() függvényt, amikor az a bevezetési folyamatodba illik. A leiratkozás a setPushEnabled(false) hívással vagy az operációs rendszer beállításaiban történik; mindkettőt rögzítjük.

Szigorú szemantikus verziókezelés. Egyszerre két főverziót támogatunk, egy főverzió megjelenése után egy év áll rendelkezésre a migrációhoz. Az alverziók havonta jelennek meg; a biztonsági javítások azonnal; a főverziókat három hónappal előre bejelentjük. Az elavult vagy nem támogatott SDK induláskor figyelmeztetést naplóz, és az irányítópult az Integrációk alatt jelzi.

Nincs követés azon túl, amit bekapcsolsz, a hozzájárulási felületek a platform natív mintáit használják, és a GDPR, CCPA és LGPD szerinti érintetti kérelmek az SDK-munkamenetekre is kiterjednek, akárcsak bármely más csatornára. A mellékleteket az eszközön tömörítjük, aláírt URL-ekre töltjük fel, és vírusellenőrzésen esnek át, mielőtt az ügynökök látnák őket.