---
title: "Conectați-vă prin SIP (fără număr de telefon)"
description: "Trimiteți apeluri către un agent ThunderPhone direct din PBX-ul, operatorul sau aplicația SIP, folosind un URI SIP unic pentru fiecare apel sau o adresă SIP permanentă."
---

Dacă propriul dumneavoastră sistem gestionează deja numere de telefon (un PBX, o
platformă de centru de contact sau un cont de operator în care rotiți numerele), puteți trimite apeluri către
un agent ThunderPhone prin SIP standard. Nu importați și nu cumpărați un număr pe
ThunderPhone. Sistemul dumneavoastră apelează o adresă SIP, iar agentul răspunde.

Există două tipuri de adrese SIP:

| | **URI SIP per apel** | **Endpoint SIP** |
|---|---|---|
| Arată ca | `sip:c-<token>@sip.thunderphone.com` | `sip:agent-<id>-<letters>@sip.thunderphone.com` |
| Creat cu | `POST /v1/calls/register-sip`, o dată pentru fiecare apel | `POST /v1/sip-endpoints`, o dată |
| Autentificare | Jetonul de unică folosință din adresă | Nume de utilizator + parolă SIP digest (și, opțional, o listă de permitere a IP-urilor sursă) |
| Potrivit pentru | Aplicații care apelează deja un API înainte de transferarea unui apel; variabile per apel | PBX-uri și operatori care trebuie doar să „direcționeze un trunk” către ThunderPhone |
| Valabil pentru | 5 minute, un apel | Până când îl ștergeți |

Ambele tipuri sunt direcționate către un agent din organizația dumneavoastră și ambele apar în
istoricul apelurilor ca orice alt apel primit.

## URI SIP per apel

### 1. Înregistrați apelul

```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` (opțional) este numărul apelat de apelant în sistemul dumneavoastră. Acesta este
  stocat ca destinație a apelului în istoricul apelurilor, iar agentul îl vede ca
  propriul său număr.
- `variables` (opțional) completează `{{placeholders}}` din promptul agentului, în
  același mod ca pentru [apelurile efectuate](/ro/guides/call-variables).
- `call_id` este identificatorul pe care îl va avea apelul în istoricul apelurilor
  (`GET /v1/calls/{call_id}`) după conectare.

### 2. Apelați URI-ul

Trimiteți apelul către `sip_uri` în decurs de 5 minute. URI-ul funcționează pentru un singur apel:
după ce un apel îl utilizează, acesta este consumat, chiar dacă apelul se încheie rapid.

Cu Twilio, de exemplu, returnați acest TwiML pentru apelul pe care doriți să îl transferați:

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

Dintr-un PBX, apelați URI-ul ca destinație SIP. Nu este necesar niciun nume de utilizator sau parolă;
jetonul este acreditarea, așadar tratați URI-ul ca pe o parolă până când
a fost utilizat.

## Endpoint SIP (adresă permanentă)

### 1. Creați endpointul

```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` este returnată o singură dată, când endpointul este creat. Stocați-o
  imediat în configurația PBX-ului sau a operatorului dumneavoastră. Dacă o pierdeți, rotiți-o
  cu `POST /v1/sip-endpoints/{id}/rotate-password`.
</Warning>

### 2. Direcționați sistemul către acesta

Configurați un trunk SIP sau o destinație cu:

| Setare | Valoare |
|---|---|
| URI SIP | `sip_uri` al endpointului |
| Nume de utilizator / parolă | `username` / `password` (autentificare digest; ThunderPhone solicită autentificare pentru fiecare apel) |
| Transport | TCP pe portul 5060 sau TLS pe portul 5061 (recomandat), ori UDP pe portul 5060 |
| Codecuri | G.711 (PCMU/PCMA) sau G.722 |

<Note>
  Preferați TCP sau TLS. UDP funcționează de la adrese publice și din majoritatea NAT-urilor, însă
  în spatele unui NAT „simetric” (care utilizează un port nou pentru fiecare destinație),
  închiderile și transferurile agentului vocal pot să nu ajungă la sistemul dumneavoastră. O listă de permitere
  pentru IP-ul sursă (mai jos) necesită, de asemenea, TCP sau TLS. Prin TLS, semnalizarea SIP rămâne
  criptată și după `sip.thunderphone.com`, până la serverele care
  gestionează apelul.
</Note>

Aceste setări de transport și codecuri se aplică și URI-urilor per apel. Două detalii de rețea
sunt importante pentru ambele tipuri de adresă:

- **Respectați Record-Route.** După primul INVITE, restul semnalizării apelului
  (ACK, închidere, transferuri) este trimis către serverul ThunderPhone specific
  care a răspuns, numit în antetul `Record-Route`
  (`sip-1.thunderphone.com` sau `sip-2.thunderphone.com`, ori adresa sa IP).
  Dacă restricționați SIP-ul de ieșire, permiteți aceste gazde, precum și
  `sip.thunderphone.com`: `172.170.39.202` (`sip`), `13.86.104.121`
  (`sip-1`) și `20.80.98.90` (`sip-2`).
- **Audio-ul merge în altă parte.** `sip.thunderphone.com` transportă doar semnalizarea.
  Permiteți media (RTP) către adresele și porturile din răspunsul SDP.

Fiecare apel către adresă ajunge la agentul vocal al endpointului, indiferent ce număr a
format apelantul de partea dumneavoastră. Nu importați niciodată numere, astfel că rotirea lor
de partea dumneavoastră nu necesită nicio modificare în ThunderPhone.

### Transmiteți numărul format (opțional)

Pentru a înregistra care dintre numerele dumneavoastră a fost format de apelant, trimiteți-l în INVITE într-un
antet `X-Original-To` (de exemplu `X-Original-To: +14155550142`) sau într-un
antet standard `Diversion`. ThunderPhone îl stochează drept destinația apelului.

Destinația este aleasă în această ordine: `to_number` furnizat la înregistrarea unui
URI per apel, apoi un număr din `X-Original-To`, apoi unul din `Diversion`.
Dacă niciuna dintre acestea nu oferă un număr, este afișată ca `sip:agent-12-jhxmginwjx` (adresa
endpointului) pentru un endpoint sau ca `sip:call` pentru un URI per apel.

Cu Twilio puteți adăuga antetul la URI-ul SIP:
`sip:agent-12-jhxmginwjx@sip.thunderphone.com;transport=tcp?X-Original-To=%2B14155550142`.

### Restricționați IP-urile sursă (opțional)

Setați `allowed_source_cidrs` pentru a accepta apeluri numai de la adresele dumneavoastră
de semnalizare, pe lângă numele de utilizator și parolă:

```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"]}'
```

Apelurile de la orice altă adresă sunt refuzate înainte să ajungă la agentul vocal. Folosiți
adresele de la care sistemul dumneavoastră trimite semnalizarea SIP (pentru un operator precum Twilio,
intervalele sale publicate de IP-uri de semnalizare), nu adresele media.

<Warning>
  Lista de permitere este verificată numai pentru apelurile prin TCP sau TLS. O adresă sursă UDP
  poate fi falsificată, astfel că un endpoint cu listă de permitere refuză fiecare apel care
  ajunge prin UDP. Trimiteți apeluri către acesta cu `;transport=tcp` (portul 5060) sau prin
  TLS (portul 5061).
</Warning>

## Ce văd apelanții și sistemul dumneavoastră

- **ID apelant:** partea de utilizator din antetul `From` este stocată ca apelant.
  Un număr de telefon (cifre, opțional cu `+`, spații, liniuțe, puncte sau
  paranteze) este normalizat la E.164; orice altceva, cum ar fi un nume de
  utilizator SIP, este păstrat așa cum a fost trimis. Sunt păstrate maximum 32
  de caractere, iar un apelant lipsă este stocat ca `anonymous`.
- **Apeluri refuzate:** un URI necunoscut sau expirat pentru apel primește SIP
  `404 Not Found`. Un URI pentru apel deja utilizat, un endpoint dezactivat sau
  o sursă din afara listei de permisiuni (inclusiv orice apel UDP către un
  endpoint cu o listă de permisiuni) este deconectat înainte ca agentul să
  pornească: sistemul dumneavoastră poate vedea apelul eșuând sau conectându-se
  și încheindu-se imediat. Aceste refuzuri nu creează o intrare în istoricul
  apelurilor. Dacă organizația dumneavoastră nu mai are credit sau și-a atins
  limita de cheltuieli, apelul este refuzat și apare în istoricul apelurilor ca
  apel eșuat, fără cost. Pentru a reîncerca o tentativă pentru apel, înregistrați
  un URI nou.
- **Transferuri:** transferurile directe ale agentului funcționează (ThunderPhone trimite un SIP
  `REFER`, pe care sistemul dumneavoastră trebuie să îl accepte). Transferurile asistate nu sunt disponibile pentru apelurile către adrese SIP, deoarece nu există un număr ThunderPhone de afișat ca
  ID apelant pentru al doilea segment. Cu Twilio, TwiML-ul de mai sus conectează agentul, dar
  nu gestionează transferurile: adăugați `referUrl="https://YOUR_SERVER/sip-transfer"`
  la `<Dial>`, iar webhook-ul respectiv trebuie să citească `ReferTransferTarget` și să returneze
  TwiML care apelează destinația transferului (consultați ghidul Twilio
  [SIP REFER](https://www.twilio.com/docs/voice/api/refer-to-twilio)).
- **Mesaje text:** adresa SIP și numărul apelat nu pot trimite mesaje text.
  Agentul poate trimite mesaje text în timpul unui apel către o adresă SIP numai
  dacă are configurat separat un număr compatibil cu SMS pentru mesaje text; în
  caz contrar, instrumentul său SMS nu este disponibil.
- **Înregistrare:** ThunderPhone nu acceptă SIP `REGISTER`. Trimiteți apeluri către
  adresă; nu vă înregistrați la aceasta.

## Prețuri

Apelurile către adrese SIP sunt facturate la tariful standard pe minut al agentului. Nu există
cost pentru numărul de telefon, deoarece niciun număr ThunderPhone nu preia apelul. Furnizorul
dumneavoastră facturează partea sa din apel ca de obicei. Consultați
[Prețuri](/ro/guides/pricing).

## Testați-l

1. Creați un URI pentru apel sau un endpoint, conform celor de mai sus.
2. Apelați-l din sistemul dumneavoastră sau din orice softphone SIP (pentru un endpoint, introduceți
   numele de utilizator și parola).
3. După ce închideți apelul, deschideți apelul în **Apeluri** din tabloul de bord sau preluați-l
   cu `GET /v1/calls/{call_id}`. Acesta afișează apelantul, destinația
   (consultați ordinea din „Transmiteți numărul apelat”) și transcrierea.

Detalii API: [referința API pentru adrese SIP](/api-reference/sip-addresses).
