Gå til innholdet

Mobil-SDK-er

Mobil-SDK-ene er motstykket til nettwidgeten for dine egne apper: kundene dine får støtte i appen med full samtalehistorikk og push-varsler, og agentene dine ser disse samtalene i den samme innboksen. De er ikke agentapper for teamet ditt; det er en egen produktlinje.

Plattform Språk og kjøretidsmiljø Distribusjon Status
iOS Swift 5.9+, iOS 15+ Swift Package Manager, CocoaPods under utvikling
Android Kotlin 1.9+, Android 8.0 (API 26)+ Maven Central under utvikling
React Native omslutter de native SDK-ene npm planlagt (beta)
Flutter omslutter de native SDK-ene pub.dev planlagt (beta)

De native SDK-ene er de autoritative; omslagene kommer etter dem. Apper for klokke eller TV og SDK-er for skrivebord er utenfor omfanget; bruk nettwidgeten på skrivebordet.

Tekstmeldinger, vedlegg, talemeldinger, bilder og video, anonyme og identifiserte økter, temaer, egen avatar og merkevare, 40 språk, AI-conciergen, samtalehistorikk, tellere for uleste, push-varsler, dyplenker, klikk for å ringe via telefonens oppringer, kø uten nett med synkronisering i bakgrunnen, biometrisk opplåsing av chatten, støtte for VoiceOver og TalkBack, mørk modus. Målstørrelse etter kompilering: 5 MB eller mindre per plattform.

WebRTC-samtaler i appen og skjermdeling fra kunden kommer i en senere versjon. Samlesing (cobrowse) fungerer bare på nett: mobile operativsystemer tillater ikke at en tredjeparts-SDK observerer eller styrer skjermen.

Initialiser én gang, tidlig i appens livssyklus:

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

Identifiser brukeren etter innlogging, og logg ut når brukeren logger ut:

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

Vis grensesnittet:

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

Tilbakekall: rolChatDidOpen, rolChatDidClose, rolChatDidReceiveMessage(_:), rolChatDidFailToSend(_:). Det offentlige API-et er trygt å kalle fra hovedtråden på iOS og fra bakgrunnstråder på Android; tilkoblingene brytes når appen går i bakgrunnen, og gjenopptas når den kommer i forgrunnen.

  • Anonym: en øktidentifikator for enheten, lagret i nøkkelringen eller i krypterte innstillinger, overlever appoppdateringer og er knyttet til enheten, ikke brukeren. Den slettes etter 90 dager uten aktivitet.
  • Identifisert: etter identify oppgraderes økten og slås sammen med den anonyme historikken på samme enhet når det er entydig. Identitetsoppslag på tvers av kanaler følger reglene for identitetsgrafen og samtykke.
  • Klarert identifisering: backenden din signerer et token med brukerens claims; SDK-en sender det videre, og RolChat verifiserer signaturen før økten oppgraderes. Usignert identify fungerer, men gir lavere tillit.

Den offentlige API-nøkkelen i appen er trygg av design: den er avgrenset til nettstedet og hastighetsbegrenset.

Plattform Transport Du leverer
iOS APNs En APNs-autentiseringsnøkkel i RolChat-dashbordet
Android FCM JSON-filen for FCM-tjenestekontoen
RolChat.shared.setPushToken(deviceToken, type: .apns)
if RolChat.shared.handleNotification(userInfo) { return } // consumed: a chat message

Varselteksten lokaliseres på serveren til brukerens språk. Utvidede varsler støtter avatar, svar direkte fra varselet og merk som lest. SDK-en ber aldri om tillatelse til push på egen hånd; kall requestPushPermission() når det passer i din oppstartsflyt. Reservasjon skjer med setPushEnabled(false) eller i innstillingene i operativsystemet; begge deler registreres.

Streng semantisk versjonering. To hovedversjoner støttes samtidig, med ett år til migrering etter en ny hovedversjon. Mindre versjoner kommer månedlig; sikkerhetsrettelser leveres umiddelbart; hovedversjoner kunngjøres tre måneder i forveien. En avviklet eller ikke-støttet SDK logger en advarsel ved oppstart, og dashbordet viser det under Integrasjoner.

Ingen sporing utover det du aktiverer, samtykkeflater bruker plattformens egne mønstre, og forespørsler fra registrerte etter GDPR, CCPA og LGPD dekker SDK-økter som enhver annen kanal. Vedlegg komprimeres på enheten, lastes opp til signerte URL-er og virusskannes før agentene ser dem.