ThunderPhone 2.0 on nyt julkaistu.Ota käyttöön itse – alkaen 2 ¢/min.Lue lisää julkistuksesta

Developer cookbook

Käsittele saapuvia puheluita (API)

Alusta loppuun: määritä agentti, liitä se puhelinnumeroon, vastaanota puhelu ja tarkastele transkriptiota.

Kanoninen "vastaa puheluun tekoälyn avulla" -työnkulku suoraan päätteeltäsi. Sinä:

  1. Luot agentin kehotteella ja äänellä.
  2. Otat käyttöön (tai tuot) puhelinnumeron ja määrität agentin sen saapuvien puheluiden käsittelijäksi.
  3. Soitat numeroon. Tarkastelet puhelulokia, transkriptiota ja tallennetta.

API-kutsuja yhteensä: neljä. Kokonaisaika: alle viisi minuuttia.

1. Luo agentti

Agentti yhdistää kehotteen, äänen ja puhelua ohjaavan tuotetason. Voit myös määrittää agentille puhelurajoituksia, kuten max_call_duration_seconds ja ring_duration_seconds. Agentit tukevat myös intro_clip-asetusta ja intro_ring_count-asetusta valmiiksi tallennetun aloituksen ja enintään kahden soittoäänen toistamiseen ennen kuin agentti puhuu. Uudet agentit tarvitsevat myös aikavyöhykkeen. Jos agenttisi on monikielinen, voit määrittää language_switching-asetuksen hallinnoidaksesi sitä, kysyykö se ennen kielen vaihtamista vai seuraako soittajan kieltä. Katso kaikki määrityskentät kohdasta Agentit; vähimmäisvaatimukset ovat:

curl -X POST https://api.thunderphone.com/v1/agents \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name":    "Acme Support",
    "prompt":  "You are a friendly support agent for Acme. Help callers with orders and returns. Keep answers short.",
    "voice":   "john",
    "product": "spark"
  }'

Tallenna palautettu id — tarvitset sitä vaiheessa 2.

2. Hanki puhelinnumero

Jos tarvitset vain numeron, johon soittaa, hanki ThunderPhone-numero ThunderPhonen numerovarannosta:

curl -X POST https://api.thunderphone.com/v1/phone-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"area_code": "415"}'

Vastaus sisältää id:n ja number:n E.164-muodossa. ThunderPhone- numerot alkavat tilassa status="provisioning" ja muuttuvat tilaan active muutamassa sekunnissa — kyselyllä GET /v1/phone-numbers/{id} voit seurata muutosta tarvittaessa.

3. Määritä agentti

Liitä vaiheen 1 agentti numeron saapuvien puheluiden suuntaan:

curl -X PATCH https://api.thunderphone.com/v1/phone-numbers/{phone_id} \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"inbound_agent_id": 12}'

Siinä kaikki — numero on käytössä. Kun lähtevät puhelut on hyväksytty organisaatiollesi, voit asettaa samassa PATCH-pyynnössä myös outbound_agent_id:n. Sitä ennen API hylkää tämän määrityksen virheellä 400.

Jos ohjaat saapuvat puhelut määrityswebhookin kautta kiinteän inbound_agent_id-arvon sijaan, webhook voi nyt palauttaa puhelukohtaisen timezone-arvon yhdessä agent_id- ja variables-arvojen kanssa.

4. Vastaa puheluun

Soita numeroon puhelimestasi. Agentti vastaa, esittelee itsensä kehotteesi mukaisesti ja keskustelu alkaa.

Puhelun aikana se näkyy pyynnön GET /v1/calls tuloksissa tilalla status="in_progress". Kun puhelu päättyy, tietue päivittyy kentillä end_reason, duration_seconds, billable_minutes sekä (lopulta) tallenteen URL-osoitteella ja tekoälyarviolla.

Saapuvat puhelut lasketaan mukaan organisaatiosi samanaikaisten puheluiden rajaan (oletuksena 20 käynnissä olevaa puhelua, jaettu lähtevien, verkko- ja testipuheluiden kanssa). Rajan saavuttamisen jälkeen saapuva puhelu hylätään ja katkaistaan ennen kuin agentti vastaa, siitä ei laskuteta, ja se tallennetaan epäonnistuneeksi puheluksi lopetussyynä concurrent_call_limit_reached. Lähetä sähköpostia osoitteeseen support@thunderphone.com, jos tarvitset suuremman rajan.

5. Tarkista tulokset

Hae viimeisimpien puheluiden luettelo:

curl 'https://api.thunderphone.com/v1/calls?limit=5' \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

Hae puhelutallenne:

curl https://api.thunderphone.com/v1/calls/{call_id}/transcript \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

Ja tallenteen URL (lyhytkestoinen, allekirjoitettu):

curl https://api.thunderphone.com/v1/calls/{call_id}/audio \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

Jos tilasit telephony.complete-webhookin, saat samat tiedot POST-pyyntönä palvelimellesi — katso call.complete.

Jos agentillasi on määritetty poimintakenttiä, valmiin puhelun tietosisältö voi sisältää myös jäsenneltyjä poimittuja tietoja.


Seuraavat vaiheet