12/10/2025
Zendesk Talk SDK: En Komplet Guide til Krav og Integration
I en verden hvor øjeblikkelig og effektiv kundeservice er afgørende, spiller teknologiske løsninger som Zendesk Talk SDK en central rolle. Denne SDK giver iOS-udviklere mulighed for at integrere direkte telefonkommunikation i deres applikationer, hvilket skaber en mere strømlinet og brugervenlig oplevelse for kunderne. Denne artikel dykker ned i de specifikke krav for Zendesk Talk SDK, samt giver en detaljeret vejledning til, hvordan du integrerer den i dit iOS-projekt.

- Grundlæggende Krav for Zendesk Talk SDK
- Indhentning af Initialiseringsdetaljer
- Integration af Talk SDK i Din iOS-App
- Initialisering af SDK'en
- Håndtering af Brugeridentitet
- Oprettelse af en Talk SDK Instans
- Kontrol af Agenttilgængelighed
- Foretagelse af Opkald
- Fejlhåndtering og Bedste Praksis
- Ofte Stillede Spørgsmål (FAQ)
Grundlæggende Krav for Zendesk Talk SDK
Før du kan begynde at integrere Zendesk Talk SDK, er det vigtigt at have styr på de grundlæggende forudsætninger. Disse sikrer, at SDK'en fungerer korrekt og kan kommunikere effektivt med din Zendesk-instans.
Abonnement og Understøttet Version
Udover et aktivt Zendesk Talk-abonnement, er der specifikke tekniske krav til selve SDK'en:
- Minimum iOS Version: SDK'en kræver iOS 12.0 eller nyere. Sørg for, at din applikations minimumsdeployment-target er sat til dette for at undgå kompatibilitetsproblemer.
- Udviklingsmiljø: Talk SDK version 3.0.0 og nyere er bygget med Xcode 14.2+ og Swift 5.7.2. Det anbefales kraftigt at anvende disse versioner for at drage fordel af de seneste funktioner og optimeringer.
Forudsætninger i Zendesk Support
For at SDK'en kan fungere, skal din Zendesk-instans være korrekt konfigureret. En Zendesk-administrator skal have udført følgende trin:
- App Registrering: Din applikation skal være registreret i Zendesk Support. Dette gøres typisk via "Admin Center" under sektionen for "Channels" eller "Mobile SDK". Se Zendesk's dokumentation for "Registering your app in Zendesk Support" for detaljerede instruktioner.
- Digital Linje: En "Talk digital line" skal være tilføjet i din Zendesk Talk-opsætning. Dette giver din app mulighed for at foretage og modtage opkald via din dedikerede linje. Se Zendesk's dokumentation for "Adding a Talk digital line" for vejledning.
Indhentning af Initialiseringsdetaljer
For at kunne initialisere Zendesk Talk SDK i din app, skal du bruge specifikke oplysninger fra din Zendesk-instans. Disse detaljer er essentielle for at etablere forbindelsen:
- Zendesk Support URL: Den fulde URL til din Zendesk Support-instans (f.eks.
https://ditfirma.zendesk.com). - App ID: Den unikke identifikator for din applikation i Zendesk Support.
- Client ID: Den unikke klientidentifikator for din app, der bruges til autentificering.
Disse oplysninger findes typisk på "Channels"-siden i "Admin Center". Hvis du har administratorrettigheder, kan du logge ind og navigere til "Channels" > "Classic" > "Mobile SDK". Hvis du ikke har administratoradgang, skal du kontakte din Zendesk-administrator for at få disse detaljer udleveret.
Integration af Talk SDK i Din iOS-App
Når de grundlæggende krav er opfyldt, kan du begynde selve integrationsprocessen. Zendesk Talk SDK tilbyder fleksible muligheder, hvad angår brugergrænsefladen (UI).
Integrationsmuligheder for UI
Du har to primære valgmuligheder for, hvordan du vil implementere SDK'ens UI:
- Indbygget UI: SDK'en leveres med en prædefineret, brugervenlig UI, som du kan implementere med minimal kode. Dette er den hurtigste vej til en fungerende løsning.
- Brugerdefineret UI: Du kan vælge at bygge din egen UI ved hjælp af SDK'ens API. Dette giver dig fuld kontrol over udseendet og funktionaliteten, så den passer perfekt til din apps design og brugeroplevelse.
For yderligere detaljer om tilpasning, kan du konsultere Zendesk's dokumentation om "Using the SDK with your own UI" eller "Customizing the look".
Tilføjelse af Talk SDK til Projektet
Du kan tilføje Zendesk Talk SDK til dit Xcode-projekt ved hjælp af populære dependency managers som CocoaPods eller Carthage. Alternativt kan du manuelt tilføje SDK'en til dit projekt. Detaljerede instruktioner findes i Zendesk's dokumentation under "Adding the Talk SDK".
Mikrofontilladelse
For at kunne foretage taleopkald kræver Talk SDK adgang til enhedens mikrofon. Din applikation skal derfor anmode om denne tilladelse og give brugeren en klar begrundelse for, hvorfor mikrofonadgang er nødvendig. Dette gøres ved at opdatere din app's Info.plist fil med en beskrivelse for nøglen NSMicrophoneUsageDescription.
Eksempel på tilføjelse i Info.plist:
<key>NSMicrophoneUsageDescription</key> <string>Tillad adgang til mikrofonen for at kunne foretage opkald til support.</string>
Du kan finde mere information om Cocoa Keys i Apples officielle udviklerdokumentation.
Initialisering af SDK'en
Initialiseringen af Zendesk Talk SDK bør ske, når din app starter, typisk i AppDelegate-filen.
Import af Nødvendige Frameworks
Start med at importere de nødvendige Zendesk-frameworks i din AppDelegate:
Swift:
import ZendeskCoreSDK import TalkSDK
Objective-C:
#import <ZendeskCoreSDK/ZendeskCoreSDK.h> #import <TalkSDK/TalkSDK.h>
Kode for Initialisering
Indsæt følgende kode i application(_:didFinishLaunchingWithOptions:)-metoden i din AppDelegate:
Swift:
Zendesk.initialize(appId: "din_app_id", clientId: "din_client_id", zendeskUrl: "din_zendesk_url")
Objective-C:
[ZDKZendesk initializeWithAppId: @"din_app_id" clientId: @"din_client_id" zendeskUrl: @"din_zendesk_url"];
Husk at erstatte pladsholderne (din_app_id, din_client_id, din_zendesk_url) med dine faktiske initialiseringsdetaljer.
Håndtering af Brugeridentitet
Zendesk SDK understøtter forskellige identitetstyper. For Talk SDK er det særligt vigtigt at konfigurere brugeridentiteten korrekt.
Anonym Identitet
For at bruge SDK'en uden at logge brugeren ind med en eksisterende konto, kan du oprette en anonym identitet. Det anbefales at gøre dette umiddelbart efter initialiseringen af Zendesk SDK'en:
Swift:
let identity = Identity.createAnonymous() Zendesk.instance?.setIdentity(identity)
Objective-C:
id<ZDKObjCIdentity> userIdentity = [[ZDKObjCAnonymous alloc] initWithName:nil email:nil]; [[ZDKZendesk instance] setIdentity:userIdentity];
Du kan læse mere om livscyklussen for anonyme identiteter i Zendesk's dokumentation.
Tilføjelse af Brugerkontekst
For at forbedre kundeoplevelsen kan du tilføje brugerens navn og e-mailadresse. Dette giver supportagenter mere kontekst om den, der ringer:
Swift:
let identity = Identity.createAnonymous(name: "Brugerens Navn", email: "[email protected]") Zendesk.instance?.setIdentity(identity)
Objective-C:
id<ZDKObjCIdentity> userIdentity = [[ZDKObjCAnonymous alloc] initWithName: @"Brugerens Navn" email: @"[email protected]"]; [[ZDKZendesk instance] setIdentity:userIdentity];
Vigtig Note: JWT-autentificering understøttes ikke i den nuværende version af Talk SDK. Forsøg på at bruge JWT vil resultere i fejl. JWT-understøttelse forventes i en fremtidig udgivelse.
Oprettelse af en Talk SDK Instans
For at kunne benytte Talk SDK's funktioner via API, skal du først oprette en instans af SDK'en. Dette bør gøres efter initialisering og opsætning af brugeridentitet.
Swift:
let talk = Talk(zendesk: Zendesk.instance!)
Objective-C:
ZDKTalk *talk = [[ZDKTalk alloc] initWithZendesk:[ZDKZendesk instance]];
Det anbefales at gemme denne instans i en property, hvis levetid er knyttet til brugen af SDK'en i din app. Et godt sted kunne være i den controller, hvorfra brugeren kan initiere et opkald.
Kontrol af Agenttilgængelighed
Det er god praksis at informere brugeren om, hvorvidt der er agenter tilgængelige, før de forsøger at foretage et opkald. Dette kan gøres ved hjælp af lineStatus-metoden:
Swift:
talk.lineStatus(digitalLine: "din_digitale_linje_navn") { [weak self] result in var isAgentAvailable: Bool switch result { case .success(let lineStatus): isAgentAvailable = lineStatus.agentAvailable case .failure(_): isAgentAvailable = false } self?.callBarButtonItem.isEnabled = isAgentAvailable } Objective-C:
__weak typeof(self) weakSelf = self; [talk lineStatusWithDigitalLine: @"din_digitale_linje_navn" completion: ^(id<LineStatus> _Nullable lineStatus, NSError * _Nullable error) { BOOL isAgentAvailable = NO; if (lineStatus != nil) { isAgentAvailable = lineStatus.agentAvailable; } weakSelf.callButton.enabled = isAgentAvailable; }]; Erstat "din_digitale_linje_navn" med det faktiske nickname for din digitale linje i Zendesk. Deaktivering af opkaldsknappen, når ingen agenter er tilgængelige, forbedrer brugeroplevelsen markant.
Foretagelse af Opkald
Zendesk Talk SDK forenkler processen med at foretage et opkald. SDK'en håndterer automatisk nødvendige tilladelser og eventuelle samtykkeprocesser.
Brug af Indbygget UI til Opkald
Du kan starte opkaldsprocessen med en enkelt linje kode:
Swift:
talk.startCall(to: "din_digitale_linje_navn")
Objective-C:
[talk startCallToDigitalLine: @"din_digitale_linje_navn"];
SDK'en vil automatisk tjekke for mikrofontilladelser og om den digitale linje kræver samtykke til optagelse. En visuel præsentation vil give brugeren mulighed for at give de nødvendige tilladelser og samtykke. Efter disse trin, eller hvis ingen brugerinput var nødvendigt, vil opkaldsskærmen blive vist, og opkaldet vil blive etableret.
Avancerede Tilpasningsmuligheder
Hvis du ønsker at tilpasse udseendet af den indbyggede tilladelses- eller opkaldsskærm, kan du finde vejledning i Zendesk's dokumentation under "Customizing the look".
Hvis du har brug for en fuldstændig brugerdefineret løsning, hvor du selv styrer alle aspekter af brugergrænsefladen, kan du benytte SDK'ens API. Dette beskrives i detaljer under "Using the SDK with your own UI".
Fejlhåndtering og Bedste Praksis
Effektiv fejlhåndtering er essentiel. SDK'en returnerer fejl, som du bør fange og håndtere hensigtsmæssigt. Logning af fejl kan være nyttigt under udvikling og debugging.
Tabel: Almindelige Opkaldsfejl
| Fejlkode | Beskrivelse | Mulig Løsning |
|---|---|---|
-1 | Generel SDK-fejl | Tjek initialiseringsdetaljer, netværksforbindelse og Zendesk-konfiguration. |
-2 | Ikke initialiseret | Sørg for, at Zendesk.initialize kaldes korrekt før brug. |
-3 | Ugyldig digital linje | Verificer, at navnet på den digitale linje er korrekt stavet og eksisterer i Zendesk. |
-4 | Mikrofontilladelse nægtet | Informér brugeren om nødvendigheden af mikrofontilladelse og vejled dem til app-indstillingerne. |
Ofte Stillede Spørgsmål (FAQ)
Q: Kan jeg bruge Zendesk Talk SDK uden et Zendesk Talk abonnement?
A: Nej, et aktivt Zendesk Talk-abonnement er en forudsætning for at kunne bruge Talk SDK.
Q: Hvilke iOS-versioner understøttes?
A: Minimum iOS 12.0 er påkrævet for Talk SDK 3.0.0 og nyere.
Q: Hvordan håndterer SDK'en opkaldskvalitet?
A: Opkaldskvaliteten afhænger primært af brugerens netværksforbindelse (Wi-Fi eller mobildata) og kvaliteten af din Zendesk Talk-opsætning.
Q: Kan jeg bruge JWT-autentificering?
A: Nej, JWT-autentificering understøttes ikke i den nuværende version af Talk SDK, men forventes i en fremtidig opdatering.
Q: Hvor finder jeg mine initialiseringsdetaljer?
A: De findes i Zendesk Admin Center under "Channels" > "Classic" > "Mobile SDK". Kontakt din Zendesk-administrator, hvis du ikke har adgang.
Ved at følge denne guide og opfylde de nødvendige krav, kan du succesfuldt integrere Zendesk Talk SDK i din iOS-applikation og dermed tilbyde dine brugere en direkte og effektiv kommunikationskanal med din kundeservice.
Hvis du vil læse andre artikler, der ligner Zendesk Talk SDK: Krav og Integration, kan du besøge kategorien Teknologi.
