Sådan sendes SMS-beskeder fra Zendesk via GatewayAPI
Sådan konfigureres indgående SMS-support
Vil du gerne anvende SMS kommunikation som en del af din support?
Vi har tidligere beskrevet fordelene ved at gøre dette. Her får I en trin for trin guide om, hvordan I implementerer det i jeres system. Guiden er opdelt i tre sektioner:
- I det første afsnit vil vi fokusere på, hvordan man konfigurerer GatewayAPI og Zendesk.
- I det andet afsnit vil vi fokusere på at gøre det muligt for kunderne at sende SMS-beskeder tilbage for at oprette og opdatere supportsager.
- Endelig vil vi fokusere på, hvordan man konfigurerer Zendesk til at sende svar på supportsager som SMS-beskeder.
1. Konfigurering af GatewayAPI og Zendesk
For at systemet kan modtage SMS-beskeder, er det nødvendigt at udføre et par konfigurationer i Zendesk og på GatewayAPI-kontoen.
Zendesk
Start med at klikke på Settings i menuen til venstre og under Manage gå til Ticket Fields. Klik på Add custom field og vælg Text field.
Giv dit nye felt et navn, f.eks. ‘Telefon’ og noter det brugerdefinerede Field ID. Du får brug for det senere.
GatewayAPI
For at aktivere GatewayAPI til at modtage meddelelser skal du først have et telefonnummer, der kan modtage meddelelserne. Dette kan gøres på en række måder. I denne guide bruger vi et virtuelt nummer, som kan lejes gennem os.
Når du har et nummer klar, skal du oprette en URL, der kan bruges til at modtage HTTP POST-anmodninger om de meddelelser, du modtager. Anmodningen vil indeholde en masse data: Blandt andet telefonnummeret og meddelelsens tekstindhold.
I dette eksempel bruger vi localhost tunnel tool ngrok, Python og Flask library til at køre koden og supplere en Public URL, som vi kan bruge til vores webhook.
I et produktionsmiljø vil du selvfølgelig være nødt til at have det kørende på en rigtig server. Zendesk understøtter en bred vifte af forskellige programmeringssprog inklusiv PHP. Du kan få et komplet overblik over de sprog, de har biblioteker til her.
For at afslutte opsætningen skal du gå til settings i GatewayAPIs backend -> derefter webhooks -> og til sidst klikke på Add a new REST webhook. Giv din webhook et navn og indsæt din URL.
Nu er GatewayAPI og Zendesk klar til næste trin, hvor vi vil se nærmere på, hvordan vi gør det muligt for jeres kunder at sende SMS-beskeder til jer.
2. Gør det muligt for kunder at sende SMS’er tilbage
Det er nu tid til at begynde at koble nogle reelle funktioner op på webhooken. Som nævnt bruger vi Python, men du har fri mulighed for at bruge det programmeringssprog, du foretrækker. Du kan også kommunikere direkte med Zendesks API, som er meget veldokumenteret
Vi bruger følgende biblioteker til at udføre de forskellige opgaver:
Til at begynde med skal du definere en funktion, der sender en SMS tilbage til kunden for at bekræfte, hvilke handlinger der er foretaget på baggrund af deres input. Det kan også være en besked, der angiver, at deres input ikke blev forstået eller ikke er tilladt.
Du skal nu oprette et sæt kommandoer, så brugerne kan få support via SMS. Koden casefolder kommandoen, så den kan håndtere input i korrekt uanset, om der er anvendt store eller små bogstaver. Alle kommandoer undtagen ‘Hjælp’ søger først efter keywordet efterfulgt af en meddelelsen om, at supportsagen er blevet oprettet eller opdateret. En liste over kommandoer kan være:
- Hjælp
- Ny
- [ID] – Heltal ID for den supportsag, der skal opdateres.
Denne liste kan udvides med alt, hvad du måtte finde nyttigt ved at bruge Zendesk API.
Nu er vi ved den spændende del, hvor vi skal tilføje nogle reelle Zendesk-funktioner til vores løsning. Først skal du beslutte dig for den type godkendelsesmetode du vil anvende. Vi bruger tokenbaseret godkendelse i dette eksempel. Til dette skal du oprette et API-token i Zendesk ved at klikke på Settings i menuen, og under Channels skal du klikke på API. Nu kan du bruge tokenet til at oprette en Zenpy-klient i Python.
I kodeeksemplet ovenover, sikrer ‘**credentials, at indholdet i biblioteket bliver overført til Zenpy som keywords arguments. Definer en rute i Flask bagefter, som skal være den URL, du har valgt til webhooken i GatewayAPI. Den skal konfigureres til kun at acceptere POST-anmodninger, da det er sådan, indgående meddelelser sendes.
Hent først JSON bodyen i den indgående anmodning, og hent meddelelsen, del derefter string’en i mellemrum, og kontroller, om det første ord matcher keywordet ‘new’. Hvis det er tilfældet, kan du kassere nøgleordet, da du ikke længere har brug for det.
Kontroller bagefter, at der er andre ord efter ‘new’. Hvis ikke, så skriv tilbage til kunden og anmod om, at de sender en egentlig besked sammen med keywordet. Hvis der er flere ord, skal du slutte dem tilbage til en string og oprette en supportsag med de første 40 tegn som emne og den fulde besked som teksten.
Bagefter skal du indstille anmoderen til en anonym bruger. For at gøre dette skal du oprette en bruger med navn og ekstern_id, begge indstillet til det telefonnummer, der sendte SMS’en. Hvis dette ikke er konfigureret, bliver legitimationsoplysningerne fra API-opkaldet anvendt, hvilket får alle SMS-supportsager til at ligne, at de er fra din udvikler.
Indstil derefter det brugerdefinerede felt ‘telefon til telefonnummeret’. Husk, at vi gemte det brugerdefinerede felt-ID helt tilbage i starten. Det brugerdefinerede felt er også nødvendigt, så vi kan bruge Zendesk-pladsholderen senere.
Nu kontrolleres, om kunden ønsker at opdatere en eksisterende supportsag.
Først skal du hente den eksisterende supportsag. Kontroller derefter, at supportsagen opdateres fra det samme telefonnummer, der oprettede den. Hvis ikke, tillader vi ikke opdatering af supportsagen. Dette undgår, at supportsager opdateres tilfældigt. Kassér derefter keywordets del af meddelelsen, og kontroller, at der er en kommentartekst til at opdatere supportsagen med, indstil status på supportsagen til ‘åben’ og opdater den med kommentarbeskeden.
Nu har du brug for en kommando for at vise dine kunder, hvad de kan skrive til dig. Indtast kommandoen ‘hjælp’.
Dette vil blot sende et svar tilbage, der viser, hvad de kan gøre. Til sidst kan du oprette et sikkerhedsnet, der fanger alle andre input og sende et svar tilbage, der angiver, at anmodningen ikke blev forstået.
Dine kunder er nu i stand til at kontakte dig og dit supportteam via SMS-beskeder. I den sidste del af guiden vil vi se på, hvordan du kan konfigurere Zendesk til at sende svar på supportsager som SMS-beskeder.
3. Besvarelse af supportsager via SMS
For at opnå dette vil vi anvende Zendesks Target and Trigger funktioner.
Opsætning af et mål
Først skal du have et API-token fra GatewayAPI. Du kan få det fra Settings -> API Keys -> klik derefter på knappen med nøglesymbolet.
Gå nu til Zendesks backend -> klik på menuen i venstre side -> klik på Settings. Under Settings skal du klikke på Extensions -> klik på Add Target og vælg HTTP Target.
Nu skal du oprette dit mål/target. Udfyld indtastningsfelterne som følger:
Title: Dit måls/targets navn.
URL: https://gatewayapi.com/rest/mtsms
Method: POST
Content type: JSON
Basic Authentication: Aktiveret, sæt dit API-token ind i User Name og lad Password være tom.
Du kan bruge Test Target funktionen for at sikre, at alt fungerer som det skal og sende dig selv en SMS. Test Target beder dig om at definere JSON-body’en. Du kan kopiere JSON nedenfor og bruge den til at teste dit mål. Husk at sætte dit eget telefonnummer i modtagerlisten og husk landekoder.
Når alt fungerer, skal du oprette målet.
Du har nu et mål, du kan bruge til at sende SMS-beskeder til dine kunder, når en supporter svarer på supportsager ved hjælp af den brugerdefinerede Field phone, vi tilføjede i begyndelsen af guiden.
Target kan også bruges på andre udløsere til at underrette personer på dit team, men desværre kan dette kun gøres til en foruddefineret liste over modtagere og ikke på en dynamisk måde til at underrette specifikke supportere. Det kan dog potentielt bruges til at sende advarsler, hvis en supportsag ikke er blevet besvaret inden for fx en time, en dag eller hvad der ellers passer for jer.
Opsætning af en trigger
For at oprette en trigger skal du gå til Settings i Zendesks backend -> under Business Rules skal du klikke på Triggers -> derefter Add Trigger eller rediger en af dine eksisterende triggere.
Vælg de betingelser, du vil have din trigger til at reagere på. Her kan du bare redigere standardudløseren kaldet Notify Requester of Comment Update. Alt hvad du skal gøre her er at tilføje en underretning for at tilføje den valgte Target Action til triggeren.
For at definere JSON-body’en til denne trigger kan du bruge Zendesks placeholders i meddelelsen. Alle tilgængelige placeholders kan findes ved at klikke på View Available Placeholders. Din JSON-body kan se sådan ud:
Du er nu i stand til at modtage og svare på supportsager via SMS-beskeder.
Tillykke!
Global SMS Gateway
GatewayAPI har nogle af de laveste priser i størstedelen af verden kombineret med en intuitiv brugergrænseflade, support i verdensklasse og en solid oppetid på over 99,99 % i gennemsnit. Hvis du ikke har en konto endnu, kan du oprette en gratis på mindre end to minutter her: Gå til GatewayAPI eller skriv til sales@gatewayapi.com.