Slaan oor na inhoud

Mobiele SDK's

Die mobiele SDK’s is die webwidget se ekwivalent vir jou eie programme: jou kliënte kry ondersteuning binne die program met volledige gespreksgeskiedenis en stootkennisgewings, en jou agente sien daardie gesprekke in dieselfde Inboks. Hulle is nie agentprogramme vir jou span nie; dié is ’n aparte produklyn.

Platform Taal en looptyd Verspreiding Status
iOS Swift 5.9+, iOS 15+ Swift Package Manager, CocoaPods in ontwikkeling
Android Kotlin 1.9+, Android 8.0 (API 26)+ Maven Central in ontwikkeling
React Native omhul die inheemse SDK’s npm beplan (beta)
Flutter omhul die inheemse SDK’s pub.dev beplan (beta)

Die inheemse SDK’s is gesaghebbend; omhulsels word daarna vrygestel. Horlosie- of TV-programme en rekenaar-SDK’s val buite die omvang; gebruik die webwidget vir rekenaars.

Teksboodskappe, aanhegsels, stemboodskappe, beelde en video, anonieme en geïdentifiseerde sessies, temas, pasgemaakte avatar en handelsmerk, 40 tale, die KI-konsiërge, gespreksgeskiedenis, ongeleesde kentekens, stootkennisgewings, dieplinks, klik-om-te-bel deur die foon se skakelaar, vanlyn-toue met agtergrondsinchronisasie, biometriese ontsluiting vir die klets, VoiceOver- en TalkBack-ondersteuning, donker modus. Teikengrootte ná samestelling: 5 MB of minder per platform.

WebRTC-oproepe binne die program en skermdeling deur die kliënt kom in ’n latere vrystelling. Saamblaai is slegs vir die web: mobiele bedryfstelsels laat nie toe dat ’n derdeparty-SDK die skerm waarneem of beheer nie.

Inisialiseer een keer, vroeg in die program se lewensiklus:

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

Identifiseer die gebruiker nadat hulle aangemeld het, en meld af wanneer hulle afmeld:

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

Wys die koppelvlak:

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

Terugroepe: rolChatDidOpen, rolChatDidClose, rolChatDidReceiveMessage(_:), rolChatDidFailToSend(_:). Die publieke API is veilig op die hoofdraad op iOS en veilig op agtergronddrade op Android; verbindings val weg wanneer die program na die agtergrond gaan en hervat op die voorgrond.

  • Anoniem: ’n toestelsessie-ID wat in die sleutelhanger of geïnkripteerde voorkeure gestoor word, oorleef programopdaterings en is aan die toestel gekoppel, nie aan die gebruiker nie. Dit word ná 90 dae se onaktiwiteit uitgevee.
  • Geïdentifiseer: ná identify word die sessie bevorder en met die anonieme geskiedenis op dieselfde toestel saamgevoeg wanneer dit ondubbelsinnig is. Identiteitsoplossing oor kanale heen volg die identiteitsgrafiek se reëls en toestemming.
  • Vertroude identifikasie: jou agterkant onderteken ’n token met die gebruiker se aansprake; die SDK gee dit deur en RolChat verifieer die handtekening voordat die sessie bevorder word. Ongetekende identify werk, maar met laer vertroue.

Die publieke API-sleutel in die program is doelbewus veilig: dit is tot die webwerf beperk en tempo-beperk.

Platform Vervoer Jy verskaf
iOS APNs ’n APNs-verifikasiesleutel op die RolChat-kontroleskerm
Android FCM Die FCM-diensrekening-JSON
RolChat.shared.setPushToken(deviceToken, type: .apns)
if RolChat.shared.handleNotification(userInfo) { return } // consumed: a chat message

Kennisgewingteks word op die bediener na die gebruiker se lokaal gelokaliseer. Ryk kennisgewings ondersteun ’n avatar, antwoord vanuit die kennisgewing en merk as gelees. Die SDK vra nooit self vir toestemming vir stootkennisgewings nie; roep requestPushPermission() wanneer dit by jou aanboordneming pas. Uittrede is setPushEnabled(false) of die bedryfstelsel se instellings; albei word aangeteken.

Streng semantiese weergawes. Twee hoofweergawes word gelyktydig ondersteun, met ’n jaar om ná ’n hoofvrystelling te migreer. Klein vrystellings is maandeliks; sekuriteitsregstellings word onmiddellik vrygestel; hoofvrystellings word drie maande vooraf aangekondig. ’n Uitgefaseerde of onondersteunde SDK teken by opstart ’n waarskuwing aan en die kontroleskerm wys dit onder Integrasies.

Geen opsporing buiten wat jy aktiveer nie, toestemmingskerms gebruik die platform se inheemse patrone, en GDPR-, CCPA- en LGPD-versoeke van datasubjekte dek SDK-sessies soos enige ander kanaal. Aanhegsels word op die toestel saamgepers, na ondertekende URL’s opgelaai en vir virusse geskandeer voordat agente dit sien.