Die mobilen SDKs der Contact Center AI Platform (CCAI Platform) umfassen das Android SDK und das iOS SDK. Mit diesen SDKs können Sie Ihren Kunden direkt in Ihrer mobilen iOS- oder Android-App Sprach- und Chat-Support anbieten.
Sie können mobile Apps auf verschiedene Arten für die CCAI-Plattform einrichten, z. B. indem Sie die mobilen SDKs in Ihre mobilen Apps einbinden, wie im Android SDK-Leitfaden oder im iOS SDK-Leitfaden beschrieben. Sie können die mobilen SDKs auch mit Flutter oder React Native in Ihre mobilen Apps einbinden.
Mit Flutter integrieren
In diesem Abschnitt finden Sie die ersten Schritte zur Integration der mobilen SDKs in Ihre mobilen Apps mit Flutter. Die Schritte in diesem Abschnitt sind für das Android SDK und das iOS SDK gleich. Nachdem Sie diese Schritte ausgeführt haben, können Sie je nach mobiler Plattform mit der Anleitung für das Android SDK oder das iOS SDK fortfahren.
Flutter ist nicht erforderlich, um die mobilen SDKs in Ihre mobilen Apps einzubinden. Sie können die Integration auch wie unten beschrieben vornehmen:
Beispiel-App lokal ausführen
Für das Ausführen einer Beispiel-App sind folgende Voraussetzungen erforderlich:
Flutter: Ein Framework zum Erstellen plattformübergreifender Apps.
Android Studio: Eine integrierte Entwicklungsumgebung für die Entwicklung von Flutter- und Android-Apps.
Xcode: Eine integrierte Entwicklungsumgebung für die Entwicklung von iOS-Apps.
CocoaPods: Ein Abhängigkeitsmanager für iOS-Projekte.
So führen Sie die Beispielanwendung lokal aus:
Laden Sie die ZIP-Datei mit dem Flutter-Beispiel herunter und entpacken Sie sie.
Wechseln Sie im Terminal zum Flutter-Beispielverzeichnis.
Geben Sie im Terminal den folgenden Code ein:
cd example cp .env.example .envGeben Sie die Werte der Umgebungsvariablen in die Datei
.envein, z. B.API_KEY=your_api_key. Anführungszeichen sind nicht erforderlich.Geben Sie
flutter pub getin das Terminal ein, um Abhängigkeiten zu installieren.Wenn Sie die Unternehmensinformationen aktualisieren möchten, rufen Sie
android/app/src/main/res/values/strings.xmlauf und aktualisieren Sieujet_company_key,ujet_subdomainundujet_company_url.Führen Sie je nach Plattform entweder einen Android-Emulator oder einen iOS-Simulator aus.
Geben Sie
flutter runin das Terminal ein.
CCAI Platform-Modul in Ihr Projekt importieren
Für den Import des CCAI Platform-Moduls in Ihr Projekt sind folgende Voraussetzungen erforderlich:
Ein API-Endpunkt zum Signieren von JWTs. Weitere Informationen finden Sie unter SDK-Endnutzerauthentifizierung.
Unter Android muss das Bereitstellungsziel Ihres Projekts iOS 13.0 oder höher sein.
Für iOS muss
minSdkVersionIhres Projekts mindestens 21 sein.
So importieren Sie das CCAI Platform-Modul in Ihr Projekt:
Kopieren Sie den Inhalt des Verzeichnisses
example/lib/ujetund fügen Sie ihn in Ihrem Flutter-Projekt in das Verzeichnislibein.Rufen Sie
example/android/app/src/main/kotlin/co/ujet/flutter_example_appauf und kopieren Sie die folgenden Dateien in Ihr Flutter-Projekt, in dem sich die KlasseMainActivitybefindet:UJETModule.ktApplication.ktfirebase\MyFirebaseMessagingService.ktfirebase\FirebaseTokenManager.kt
Öffnen Sie Xcode und ziehen Sie
example/ios/Runner/UJETModule.swiftin Ihr Projekt.Öffnen Sie
example/lib/ujet/ujet_module.dartund bearbeiten Sie die Methode_getUserData, damit sie die entsprechenden Endnutzerinformationen zurückgibt. Hier ein Codebeispiel:static Future<Map<String, String?>> _getUserData() async { String? name = "John Doe"; // end-user name String? identifier = "id1234"; // end user identifier String? email = "jdoe@example.com"; // end user email String? phone = "+12223334444"; // end user phone return { "name": name, "identifier": identifier, "email": email, "phone": phone }; }Implementieren Sie
signPayloadinserver_api.dart, um das signierte JWT-Token von Ihrer Server-API abzurufen. Weitere Informationen finden Sie unter SDK-Endnutzerauthentifizierung.
Initialisieren und starten
Geben Sie zum Initialisieren und Starten den folgenden Code in das Terminal ein:
await UJET.init(key: 'your_ujet_key', baseUrl: 'your_ujet_base_url');
await UJET.start(UjetStartOptions(skipSplashScreen: true));
Bekannte Probleme
Hier finden Sie bekannte Probleme bei der Verwendung von Flutter zum Integrieren der mobilen SDKs in Ihre mobilen Apps:
Problem: Screenshots werden nicht mit den SmartActions für Screenshots aufgenommen.
- Maßnahme: Google arbeitet an der Behebung dieses Problems.
Problem: Der Bildschirm für die gemeinsame Navigation wird während einer Sitzung für die gemeinsame Navigation nicht vom Kundenservicemitarbeiter projiziert (nur iOS).
Maßnahme: Google empfiehlt, die Impeller-Engine auf iOS-Geräten zu deaktivieren. So deaktivieren Sie den Impeller:
Öffnen Sie die Datei
info.plist.Legen Sie den Schlüssel
FLTEnableImpellerauffalsefest, wie im folgenden Codebeispiel:<key>FLTEnableImpeller</key> <false/>
Integration fortsetzen
Wenn Sie die Integration mit Flutter fortsetzen möchten, lesen Sie je nach mobiler Plattform eine der folgenden Seiten:
Mit React Native einbinden
In diesem Abschnitt werden die ersten Schritte zur Verwendung von React Native zum Einbinden der mobilen SDKs in Ihre mobilen Apps beschrieben. Die Schritte in diesem Abschnitt sind für das Android SDK und das iOS SDK gleich. Nachdem Sie diese Schritte ausgeführt haben, können Sie je nach mobiler Plattform mit der Anleitung für das Android SDK oder das iOS SDK fortfahren.
React Native ist nicht erforderlich, um die mobilen SDKs in Ihre mobilen Apps einzubinden. Sie können die Integration auch wie unten beschrieben vornehmen:
Beispiel-App lokal ausführen
So führen Sie die Beispielanwendung lokal aus:
Laden Sie die Beispielanwendung ujet-react-native-example.zip herunter und extrahieren Sie sie.
Öffnen Sie die Datei „README.md“ im extrahierten Ordner und folgen Sie der Anleitung.
Beispielanwendung von einem lokalen Server ausführen
Die Beispiel-App, die Sie im vorherigen Abschnitt heruntergeladen haben, kann auch von einem lokalen Server aus ausgeführt werden. Gehen Sie hierzu folgendermaßen vor:
Laden Sie die ZIP-Datei mit dem React Native-Beispiel herunter und entpacken Sie sie.
Rufen Sie das Verzeichnis auf, in dem das Serverbeispiel bereitgestellt wird.
Geben Sie die folgenden Befehle ein:
cd server cp .env.example .env Edit .env nvm use npm install npm start```
React Native ausführen
So führen Sie React Native aus:
Wechseln Sie in das Anwendungsverzeichnis.
Geben Sie die folgenden Befehle ein:
cd app nvm use npm install bundle install npx pod-installSo aktualisieren Sie die Unternehmensinformationen:
src/screens/Home.tsx:Aktualisieren Sie die Parameter in
UJET.initialize({}).android/app/src/main/res/values/strings.xml::Aktualisieren Sie
ujet_company_key,ujet_subdomainundujet_company_url.
Geben Sie den Befehl
npm startein.Führen Sie die iOS- oder Android-App entweder mit der interaktiven Meteor-Befehlszeile oder einer IDE Ihrer Wahl aus.
CCAI Platform-Modul in Ihr Projekt importieren
In diesem Abschnitt erfahren Sie, wie Sie das CCAI Platform-Modul in Ihr Projekt importieren.
Voraussetzungen
Sie müssen einen API-Endpunkt zum Signieren von JWTs verwenden. Weitere Informationen finden Sie in der Datei server/app.js in der Beispiel-App oder unter Endnutzerauthentifizierung.
Prozedur
So importieren Sie das CCAI Platform-Modul in Ihr Projekt:
Kopieren Sie die folgenden Dateien aus der Beispiel-App und fügen Sie sie an der entsprechenden Stelle in Ihr Projekt ein:
app/src/native_modules/UJETInterfaces.tsapp/src/native_modules/UJETNativeModule.tsapp/ios/UJETModule.happ/ios/UJETModule.mapp/android/src/main/java/com/sampleapp/UJETModule.kt
UJETNativeModule.tsöffnenEntfernen Sie die folgende Zeile:
import AsyncStorage from '@react-native-async-storage/async-storage';Bearbeiten Sie die Funktion
getUserData, damit sie korrekte Endnutzerinformationen zurückgibt:async function getUserData({ name: anonymousName }: SignPayloadData): Promise<Object> { // fetch the end user information from your application return { name: 'John Doe', identifier: 'id1234', email: 'jdoe@example.com', phone: '+12223334444' } }Aktualisieren Sie SIGNING_BASE_URL, sodass sie auf Ihren Signierungs-Endpunkt verweist.
Initialisieren und starten Sie die Funktion mit dem folgenden Beispielcode:
import { UJET } from '../path/UJETNativeModule'; UJET.initialize({ key: 'your-key', baseUrl: 'your-base-url' }); const startUJET = () => { UJET.start({ skipSplashScreen: true }); };- Ersetzen Sie
your-keydurch die Unternehmens-ID. - Ersetzen Sie
your-base-urldurch den API-Endpunkt für den CCAI-Plattform-Host, z. B.https://ccaas-host.uc1.ccaiplatform.com/api/v2/.
- Ersetzen Sie
Integration fortsetzen
Wenn Sie die Integration mit React Native fortsetzen möchten, lesen Sie eine der folgenden Seiten, je nach Ihrer mobilen Plattform: