Preskoči na vsebino

Mobilni SDK-ji

Mobilni SDK-ji so ustreznik spletnega widgeta za vaše lastne aplikacije: vaše stranke dobijo podporo v aplikaciji s celotno zgodovino pogovorov in potisnimi obvestili, vaši agenti pa te pogovore vidijo v istem nabiralniku. To niso aplikacije za agente vaše ekipe; te so ločena linija izdelkov.

Platforma Jezik in okolje Distribucija Stanje
iOS Swift 5.9+, iOS 15+ Swift Package Manager, CocoaPods v razvoju
Android Kotlin 1.9+, Android 8.0 (API 26)+ Maven Central v razvoju
React Native ovoj okrog izvornih SDK-jev npm načrtovano (beta)
Flutter ovoj okrog izvornih SDK-jev pub.dev načrtovano (beta)

Izvorni SDK-ji so merodajni; ovoji izidejo za njimi. Aplikacije za ure ali televizorje in SDK-ji za namizne računalnike niso predvideni; na namiznih računalnikih uporabite spletni widget.

Besedilna sporočila, priloge, glasovna sporočila, slike in videoposnetke, anonimne in prepoznane seje, teme, lasten avatar in blagovno znamko, 40 jezikov, konsierža AI, zgodovino pogovorov, značke neprebranih, potisna obvestila, globoke povezave, klic z enim dotikom prek telefonske aplikacije, čakalno vrsto brez povezave s sinhronizacijo v ozadju, biometrično odklepanje klepeta, podporo za VoiceOver in TalkBack, temni način. Ciljna velikost po prevajanju: 5 MB ali manj na platformo.

Klici WebRTC v aplikaciji in deljenje zaslona s strani stranke pridejo v poznejši izdaji. Skupno brskanje deluje samo v spletu: mobilni operacijski sistemi SDK-ju tretje osebe ne dovolijo opazovati ali upravljati zaslona.

Inicializirajte enkrat, zgodaj v življenjskem ciklu aplikacije:

// 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)

Prepoznajte uporabnika po prijavi in ga odjavite, ko se odjavi:

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

Prikaz vmesnika:

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

Povratni klici: rolChatDidOpen, rolChatDidClose, rolChatDidReceiveMessage(_:), rolChatDidFailToSend(_:). Javni API je v iOS varen za glavno nit, v Androidu pa za niti v ozadju; povezave se prekinejo, ko gre aplikacija v ozadje, in se nadaljujejo, ko se vrne v ospredje.

  • Anonimna: ID seje naprave, shranjen v obesku za ključe ali šifriranih nastavitvah, preživi posodobitve aplikacije in je vezan na napravo, ne na uporabnika. Izbriše se po 90 dneh nedejavnosti.
  • Prepoznana: po identify se seja povzdigne in združi z anonimno zgodovino na isti napravi, ko je to nedvoumno. Razreševanje identitete med kanali sledi pravilom grafa identitet in privolitvi.
  • Zaupanja vredno prepoznavanje: vaše zaledje podpiše žeton s podatki o uporabniku; SDK ga posreduje, RolChat pa pred povzdignjenjem seje preveri podpis. Nepodpisan identify deluje, vendar z nižjo stopnjo zaupanja.

Javni ključ API v aplikaciji je varen po zasnovi: omejen je na spletno mesto in podvržen omejitvam zahtev.

Platforma Prenos Kaj zagotovite vi
iOS APNs Ključ za preverjanje pristnosti APNs v nadzorni plošči RolChat
Android FCM JSON storitvenega računa FCM
RolChat.shared.setPushToken(deviceToken, type: .apns)
if RolChat.shared.handleNotification(userInfo) { return } // consumed: a chat message

Besedilo obvestil se lokalizira na strežniku v jezik uporabnika. Obogatena obvestila podpirajo avatar, odgovor iz obvestila in označitev kot prebrano. SDK nikoli sam ne zahteva dovoljenja za potisna obvestila; pokličite requestPushPermission(), ko to ustreza vašemu postopku uvajanja. Odjava je setPushEnabled(false) ali nastavitve sistema; oboje se zabeleži.

Strogo semantično označevanje različic. Hkrati sta podprti dve glavni različici, z letom dni za selitev po glavni izdaji. Manjše izdaje izidejo mesečno; varnostni popravki takoj; glavne izdaje so napovedane tri mesece vnaprej. Zastarel ali nepodprt SDK ob zagonu zapiše opozorilo, nadzorna plošča pa ga prikaže pod Integracijami.

Brez sledenja poleg tistega, kar vklopite, okna za privolitev uporabljajo izvorne vzorce platforme, zahteve posameznikov po GDPR, CCPA in LGPD pa zajemajo seje SDK tako kot vsak drug kanal. Priloge se stisnejo v napravi, naložijo na podpisane URL-je in pregledajo s protivirusnim programom, preden jih agenti vidijo.