---
title: "Ühenda SIP-i kaudu (telefoninumbrita)"
description: "Suuna kõned oma PBX-ist, operaatorilt või SIP-rakendusest otse ThunderPhone'i agendile, kasutades iga kõne jaoks ühekordset SIP URI-d või püsivat SIP-aadressi."
---

Kui sinu süsteem juba haldab telefoninumbreid (PBX, kontaktikeskuse
platvorm või operaatorikonto, kus numbreid vahetad), saad kõned suunata
ThunderPhone'i häälagendile tavalise SIP-i kaudu. Sa ei impordi ega osta
ThunderPhone'is numbrit. Sinu süsteem valib SIP-aadressi ja agent vastab.

SIP-aadresse on kahte tüüpi:

| | **Kõnepõhine SIP URI** | **SIP-lõpp-punkt** |
|---|---|---|
| Näeb välja nagu | `sip:c-<token>@sip.thunderphone.com` | `sip:agent-<id>-<letters>@sip.thunderphone.com` |
| Luuakse | `POST /v1/calls/register-sip`, üks kord iga kõne kohta | `POST /v1/sip-endpoints`, üks kord |
| Autentimine | Aadressis olev ühekordne token | SIP digesti kasutajanimi + parool (ja soovi korral lähte-IP lubatud loend) |
| Sobib | Rakendustele, mis kutsuvad juba enne kõne edasi suunamist API-t; kõnepõhised muutujad | PBX-idele ja operaatoritele, mis peaksid lihtsalt ThunderPhone'i suunas „trunki osutama” |
| Kehtib | 5 minutit, üks kõne | Kuni selle kustutad |

Mõlemad tüübid suunavad sinu organisatsioonis ühele agendile ning mõlemad
kuvatakse kõneajaloos nagu mis tahes muu sissetulev kõne.

## Kõnepõhine SIP URI

### 1. Registreeri kõne

```bash
curl -X POST https://api.thunderphone.com/v1/calls/register-sip \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": 12,
    "to_number": "+14155550142",
    "variables": {"customer_name": "Ada"}
  }'
```

```json
{
  "call_id": 862197007562,
  "sip_uri": "sip:c-1790372992.Qm3xT8vLk2PzR7nYw4HbJa.uF6sD1gK9eW2cX5vB8nM0q@sip.thunderphone.com",
  "expires_at": "2026-09-25T21:49:52Z",
  "agent_id": 12,
  "to_number": "+14155550142"
}
```

- `to_number` (valikuline) on number, mille helistaja sinu poolel valis. See
  salvestatakse kõneajaloos kõne sihtnumbrina ning agent näeb seda oma numbrina.
- `variables` (valikuline) täidavad agendi viibas olevad `{{placeholders}}`
  samamoodi nagu [väljuvate kõnede](/et/guides/call-variables) puhul.
- `call_id` on ID, mis kõnel on kõneajaloos
  (`GET /v1/calls/{call_id}`), kui see ühendub.

### 2. Vali URI

Saada kõne `sip_uri`-le 5 minuti jooksul. URI töötab ainult ühe kõne jaoks:
kui kõne on seda kasutanud, on see ära kasutatud, isegi kui kõne lõpeb kiiresti.

Näiteks Twilio puhul tagasta edasi antava kõne jaoks järgmine TwiML:

```xml
<Response>
  <Dial>
    <Sip>sip:c-1790372992.Qm3xT8vLk2PzR7nYw4HbJa.uF6sD1gK9eW2cX5vB8nM0q@sip.thunderphone.com;transport=tcp</Sip>
  </Dial>
</Response>
```

PBX-ist vali URI SIP-sihtkohana. Kasutajanime ega parooli pole vaja;
token on autentimisteave, seega käsitle URI-d paroolina, kuni seda on
kasutatud.

## SIP-lõpp-punkt (püsiaadress)

### 1. Loo lõpp-punkt

```bash
curl -X POST https://api.thunderphone.com/v1/sip-endpoints \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agent_id": 12, "name": "Main PBX"}'
```

```json
{
  "id": 7,
  "name": "Main PBX",
  "agent_id": 12,
  "sip_uri": "sip:agent-12-jhxmginwjx@sip.thunderphone.com",
  "username": "tp409667538f83",
  "password": "8mJ0…",
  "allowed_source_cidrs": [],
  "status": "active",
  "created_at": "2026-09-25T21:46:18Z"
}
```

<Warning>
  `password` tagastatakse ainult üks kord, kui lõpp-punkt luuakse. Salvesta see
  kohe oma PBX-i või teenusepakkuja konfiguratsiooni. Kui kaotad selle, vaheta see
  käsuga `POST /v1/sip-endpoints/{id}/rotate-password`.
</Warning>

### 2. Suuna oma süsteem sellele

Seadista SIP-trunk või sihtkoht järgmiste väärtustega:

| Seadistus | Väärtus |
|---|---|
| SIP URI | lõpp-punkti `sip_uri` |
| Kasutajanimi / parool | `username` / `password` (digest-autentimine; ThunderPhone esitab kontrollpäringu iga kõne puhul) |
| Transport | TCP pordil 5060 või TLS pordil 5061 (soovitatav) või UDP pordil 5060 |
| Koodekid | G.711 (PCMU/PCMA) või G.722 |

<Note>
  Eelista TCP-d või TLS-i. UDP töötab avalikelt aadressidelt ja enamiku NAT-ide
  kaudu, kuid „sümmeetrilise” NAT-i taga (mis kasutab iga sihtkoha jaoks uut porti)
  ei pruugi häälagendi kõne lõpetamise ja edastamise päringud sinu süsteemini
  jõuda. Allika-IP lubatud loend (allpool) nõuab samuti TCP-d või TLS-i. TLS-i
  kaudu jääb SIP-signalisatsioon krüptituks ka pärast `sip.thunderphone.com`,
  kuni kõnet töötlevate serveriteni välja.
</Note>

Need transpordi- ja koodekiseaded kehtivad ka kõnepõhiste URI-de puhul. Mõlema
aadressitüübi puhul on olulised kaks võrgudetaili:

- **Järgi Record-Route'i.** Pärast esimest INVITE-i saadetakse ülejäänud kõne
  signalisatsioon (ACK, kõne lõpetamine, edastamised) konkreetsele ThunderPhone'i
  serverile, mis vastas ja mis on nimetatud `Record-Route` päises
  (`sip-1.thunderphone.com` või `sip-2.thunderphone.com` või selle IP-aadress).
  Kui piirad väljaminevat SIP-i, luba lisaks hostile `sip.thunderphone.com` ka
  järgmised hostid: `172.170.39.202` (`sip`), `13.86.104.121`
  (`sip-1`) ja `20.80.98.90` (`sip-2`).
- **Heli liigub mujale.** `sip.thunderphone.com` edastab ainult signalisatsiooni.
  Luba meedia (RTP) SDP-vastuses määratud aadressidele ja portidele.

Iga sellele aadressile tehtud kõne jõuab lõpp-punkti häälagendini, olenemata
sellest, millise numbri helistaja sinu poolel valis. Sa ei impordi kunagi
numbreid, seega ei nõua nende vahetamine sinu poolel ThunderPhone'is muudatusi.

### Edasta valitud number (valikuline)

Et salvestada, millise sinu numbri helistaja valis, saada see INVITE-is
`X-Original-To` päises (näiteks `X-Original-To: +14155550142`) või standardses
`Diversion` päises. ThunderPhone salvestab selle kõne sihtkohana.

Sihtkoht valitakse järgmises järjekorras: esmalt kõnepõhise URI registreerimisel
antud `to_number`, seejärel number päises `X-Original-To`, seejärel number
päises `Diversion`. Kui ükski neist numbrit ei anna, kuvatakse lõpp-punkti puhul
`sip:agent-12-jhxmginwjx` (lõpp-punkti aadress) või kõnepõhise URI puhul
`sip:call`.

Twilioga saad päise lisada SIP URI-le:
`sip:agent-12-jhxmginwjx@sip.thunderphone.com;transport=tcp?X-Original-To=%2B14155550142`.

### Piira allika IP-aadresse (valikuline)

Määra `allowed_source_cidrs`, et lisaks kasutajanimele ja paroolile võtta kõnesid
vastu ainult sinu enda signalisatsiooniaadressidelt:

```bash
curl -X PATCH https://api.thunderphone.com/v1/sip-endpoints/7 \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"allowed_source_cidrs": ["203.0.113.0/28"]}'
```

Kõned mis tahes muult aadressilt lükatakse tagasi enne, kui need jõuavad
häälagendini. Kasuta aadresse, millelt sinu süsteem saadab SIP-signalisatsiooni
(teenusepakkuja, näiteks Twilio, puhul selle avaldatud signalisatsiooni
IP-vahemikke), mitte oma meediaaadresse.

<Warning>
  Lubatud loendit kontrollitakse ainult TCP või TLS-i kaudu tehtud kõnede puhul.
  UDP lähteaadressi saab võltsida, seega keeldub lubatud loendiga lõpp-punkt
  igast UDP kaudu saabuvast kõnest. Saada sellele kõned `;transport=tcp` kaudu
  (port 5060) või TLS-i kaudu (port 5061).
</Warning>

## Mida helistajad ja sinu süsteem näevad

- **Helistaja ID:** päise `From` kasutajaosa salvestatakse helistajana.
  Telefoninumber (numbrid, valikuliselt koos märkidega `+`, tühikud, sidekriipsud, punktid või
  sulud) normaliseeritakse E.164 vormingusse; kõik muu, näiteks SIP-kasutajanimi,
  säilitatakse saadetud kujul. Säilitatakse kuni 32 tähemärki ning puuduva helistaja
  väärtuseks salvestatakse `anonymous`.
- **Tagasilükatud kõned:** tundmatu või aegunud kõnepõhine URI saab SIP-i
  `404 Not Found`. Juba kasutatud kõnepõhine URI, keelatud lõpp-punkt või
  lubatud loendist väljaspool olev allikas (sealhulgas mis tahes UDP-kõne lubatud loendiga
  lõpp-punkti) katkestatakse enne häälagendi käivitumist: sinu süsteem võib näha, et
  kõne ebaõnnestub, või et see ühendub ja lõpeb kohe. Need tagasilükkamised ei
  loo kõneajaloo kirjet. Kui sinu organisatsioonil pole krediiti või see on
  saavutanud kululimiidi, lükatakse kõne tagasi ja see kuvatakse kõneajaloos
  ebaõnnestunud tasuta kõnena. Kõnepõhise katse uuesti proovimiseks registreeri uus URI.
- **Ümbersuunamised:** häälagendi külmad ümbersuunamised töötavad (ThunderPhone saadab SIP-i
  `REFER`, mille sinu süsteem peab vastu võtma). Soojad ümbersuunamised pole SIP-aadressi kõnede puhul saadaval,
  sest teise etapi helistaja ID-na kuvamiseks pole ThunderPhone'i numbrit. Twilio puhul
  ühendab ülaltoodud TwiML häälagendi, kuid ei töötle ümbersuunamisi: lisa
  `referUrl="https://YOUR_SERVER/sip-transfer"` elemendile `<Dial>` ning pane see veebikonks lugema `ReferTransferTarget` ja tagastama
  ümbersuunamise sihtkohta helistava TwiML-i (vaata Twilio
  [SIP REFERi juhendit](https://www.twilio.com/docs/voice/api/refer-to-twilio)).
- **Tekstisõnumid:** SIP-aadress ja valitud number ei saa tekstisõnumeid saata.
  Häälagent saab SIP-aadressi kõne ajal tekstisõnumeid saata ainult siis, kui sellele on tekstisõnumite jaoks
  seadistatud eraldi SMS-võimeline number; vastasel juhul pole selle SMS-tööriist
  saadaval.
- **Registreerimine:** ThunderPhone ei aktsepteeri SIP-i `REGISTER`. Saada kõned
  aadressile; ära registreeru sellele.

## Hinnakujundus

SIP-aadressi kõnede eest esitatakse arve häälagendi tavapärase minutipõhise hinna alusel. Telefoninumbri tasu
puudub, sest kõnet ei edastata ThunderPhone'i numbri kaudu. Sinu
enda operaator esitab oma kõneosa eest arve tavapärasel viisil. Vaata
[Hinnakujundust](/et/guides/pricing).

## Testi seda

1. Loo eespool kirjeldatud kõnepõhine URI või lõpp-punkt.
2. Helista sellele oma süsteemist või mis tahes SIP-tarkvaratelefonist (lõpp-punkti puhul sisesta
   kasutajanimi ja parool).
3. Pärast kõne lõpetamist ava kõne juhtpaneelil jaotises **Kõned** või hangi see
   päringuga `GET /v1/calls/{call_id}`. Seal kuvatakse helistaja, sihtkoht
   (vaata järjekorda jaotisest „Edasta valitud number”) ja transkriptsioon.

API üksikasjad: [SIP-aadresside API viide](/api-reference/sip-addresses).
