SDK สำหรับมือถือ
SDK สำหรับมือถือเทียบเท่าวิดเจ็ตเว็บสำหรับแอปของคุณเอง: ลูกค้าของคุณได้รับการซัพพอร์ตในแอปพร้อมประวัติบทสนทนาครบถ้วนและการแจ้งเตือนแบบพุช และเจ้าหน้าที่ของคุณเห็นบทสนทนาเหล่านั้นในกล่องข้อความรวมเดียวกัน SDK เหล่านี้ไม่ใช่แอปสำหรับเจ้าหน้าที่ในทีมของคุณ ซึ่งเป็นผลิตภัณฑ์อีกสายหนึ่ง
แพลตฟอร์ม
หัวข้อที่มีชื่อว่า “แพลตฟอร์ม”| แพลตฟอร์ม | ภาษาและรันไทม์ | การเผยแพร่ | สถานะ |
|---|---|---|---|
| iOS | Swift 5.9+, iOS 15+ | Swift Package Manager, CocoaPods | กำลังพัฒนา |
| Android | Kotlin 1.9+, Android 8.0 (API 26)+ | Maven Central | กำลังพัฒนา |
| React Native | ครอบ SDK แบบเนทีฟ | npm | วางแผนไว้ (เบต้า) |
| Flutter | ครอบ SDK แบบเนทีฟ | pub.dev | วางแผนไว้ (เบต้า) |
SDK แบบเนทีฟเป็นหลัก ตัวครอบจะออกตามมา แอปนาฬิกาหรือทีวีและ SDK สำหรับเดสก์ท็อปอยู่นอกขอบเขต สำหรับเดสก์ท็อปให้ใช้วิดเจ็ตเว็บ
SDK มีอะไรบ้าง
หัวข้อที่มีชื่อว่า “SDK มีอะไรบ้าง”ข้อความ ไฟล์แนบ ข้อความเสียง รูปภาพและวิดีโอ เซสชันนิรนามและเซสชันที่ระบุตัวตน ธีม อวาตาร์และแบรนด์ที่กำหนดเอง 40 ภาษา ผู้ช่วย AI ประวัติบทสนทนา ป้ายข้อความที่ยังไม่อ่าน การแจ้งเตือนแบบพุช ดีปลิงก์ คลิกเพื่อโทรผ่านแอปโทรศัพท์ คิวออฟไลน์พร้อมซิงก์เบื้องหลัง ปลดล็อกแชทด้วยไบโอเมตริก รองรับ VoiceOver และ TalkBack โหมดมืด ขนาดหลังคอมไพล์ที่ตั้งเป้าไว้: ไม่เกิน 5 MB ต่อแพลตฟอร์ม
การโทร WebRTC ในแอปและการแชร์หน้าจอจากฝั่งลูกค้าจะมาในรุ่นถัดไป การเรียกดูร่วมกันใช้ได้บนเว็บเท่านั้น: ระบบปฏิบัติการมือถือไม่อนุญาตให้ SDK ของบุคคลที่สามดูหรือควบคุมหน้าจอ
อินเทอร์เฟซ SDK
หัวข้อที่มีชื่อว่า “อินเทอร์เฟซ SDK”เริ่มต้นครั้งเดียว ในช่วงต้นของวงจรชีวิตแอป:
// iOSlet 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)// Androidval config = RolChatConfig.Builder() .siteId("site_abc123") .apiKey("pk_live_…") .region(Region.EU) .theme(RolChatTheme(primaryColor = Color.Blue)) .build()RolChat.initialize(context, config)ระบุตัวผู้ใช้หลังลงชื่อเข้าใช้ และออกจากระบบเมื่อผู้ใช้ออก:
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แสดง UI:
RolChat.shared.openChat() // modalRolChat.shared.openChat(conversationId: id) // a specific conversationRolChat.shared.openChatInline(view) // inside your own layoutRolChat.shared.close()Callback: rolChatDidOpen rolChatDidClose rolChatDidReceiveMessage(_:) rolChatDidFailToSend(_:) API สาธารณะปลอดภัยสำหรับเธรดหลักบน iOS และเธรดเบื้องหลังบน Android การเชื่อมต่อจะหลุดเมื่อแอปเข้าสู่เบื้องหลังและกลับมาเมื่อแอปอยู่เบื้องหน้า
เซสชันและตัวตน
หัวข้อที่มีชื่อว่า “เซสชันและตัวตน”- นิรนาม: ID เซสชันของอุปกรณ์ที่เก็บใน keychain หรือค่ากำหนดที่เข้ารหัส อยู่รอดข้ามการอัปเดตแอปและผูกกับอุปกรณ์ ไม่ใช่ผู้ใช้ จะถูกลบหลังไม่มีกิจกรรม 90 วัน
- ระบุตัวตนแล้ว: หลัง
identifyเซสชันจะได้รับการยกระดับและรวมกับประวัตินิรนามบนอุปกรณ์เดียวกันเมื่อไม่มีความกำกวม การเชื่อมตัวตนข้ามช่องทางเป็นไปตามกฎของกราฟตัวตนและความยินยอม - การระบุตัวตนที่เชื่อถือได้: แบ็กเอนด์ของคุณลงลายมือชื่อโทเค็นที่มี claims ของผู้ใช้ SDK ส่งต่อ และ RolChat ตรวจสอบลายมือชื่อก่อนยกระดับเซสชัน
identifyที่ไม่มีลายมือชื่อใช้ได้ แต่ความน่าเชื่อถือต่ำกว่า
คีย์ API สาธารณะในแอปปลอดภัยโดยการออกแบบ: จำกัดขอบเขตที่ไซต์และมีขีดจำกัดอัตรา
การแจ้งเตือนแบบพุช
หัวข้อที่มีชื่อว่า “การแจ้งเตือนแบบพุช”| แพลตฟอร์ม | ช่องทางส่ง | สิ่งที่คุณต้องจัดเตรียม |
|---|---|---|
| iOS | APNs | คีย์ยืนยันตัวตน APNs ในแดชบอร์ด RolChat |
| Android | FCM | ไฟล์ JSON ของบัญชีบริการ FCM |
RolChat.shared.setPushToken(deviceToken, type: .apns)if RolChat.shared.handleNotification(userInfo) { return } // consumed: a chat messageข้อความแจ้งเตือนถูกแปลฝั่งเซิร์ฟเวอร์เป็นภาษาของผู้ใช้ การแจ้งเตือนแบบริชรองรับอวาตาร์ การตอบกลับจากการแจ้งเตือน และการทำเครื่องหมายว่าอ่านแล้ว SDK ไม่ขอสิทธิ์พุชเอง ให้เรียก requestPushPermission() ในจังหวะที่เหมาะกับการเริ่มต้นใช้งานของคุณ การเลือกไม่รับทำได้ด้วย setPushEnabled(false) หรือการตั้งค่าระบบปฏิบัติการ ทั้งสองแบบถูกบันทึก
เวอร์ชันและการรองรับ
หัวข้อที่มีชื่อว่า “เวอร์ชันและการรองรับ”ใช้ semantic versioning อย่างเคร่งครัด รองรับเวอร์ชันหลักสองเวอร์ชันพร้อมกัน โดยมีเวลาหนึ่งปีสำหรับการย้ายหลังเวอร์ชันหลักออก รุ่นย่อยออกทุกเดือน การแก้ไขด้านความปลอดภัยออกทันที และประกาศเวอร์ชันหลักล่วงหน้าสามเดือน SDK ที่เลิกใช้งานหรือไม่รองรับแล้วจะบันทึกคำเตือนตอนเริ่มทำงาน และแดชบอร์ดแสดงไว้ในส่วนการเชื่อมต่อ
ความเป็นส่วนตัว
หัวข้อที่มีชื่อว่า “ความเป็นส่วนตัว”ไม่มีการติดตามนอกเหนือจากที่คุณเปิดใช้ ส่วนขอความยินยอมใช้รูปแบบเนทีฟของแพลตฟอร์ม และคำขอของเจ้าของข้อมูลตาม GDPR CCPA และ LGPD ครอบคลุมเซสชัน SDK เหมือนช่องทางอื่น ไฟล์แนบถูกบีบอัดบนอุปกรณ์ อัปโหลดไปยัง URL ที่ลงลายมือชื่อ และสแกนไวรัสก่อนที่เจ้าหน้าที่จะเห็น