---
title: "SIP üzerinden bağlanın (telefon numarası olmadan)"
description: "PBX'inizden, operatörünüzden veya SIP uygulamanızdan aramaları, her arama için tek kullanımlık bir SIP URI'si ya da kalıcı bir SIP adresi kullanarak doğrudan bir ThunderPhone yapay zeka ajanına gönderin."
---

Kendi sisteminiz telefon numaralarını zaten yönetiyorsa (bir PBX, iletişim merkezi
platformu veya numaraları dönüşümlü kullandığınız bir operatör hesabı), çağrıları
düz SIP üzerinden bir ThunderPhone yapay zeka ajanına gönderebilirsiniz. ThunderPhone'a
numara aktarmanız veya satın almanız gerekmez. Sisteminiz bir SIP adresini arar ve
ajan yanıtlar.

İki tür SIP adresi vardır:

| | **Çağrı başına SIP URI** | **SIP uç noktası** |
|---|---|---|
| Görünüm | `sip:c-<token>@sip.thunderphone.com` | `sip:agent-<id>-<letters>@sip.thunderphone.com` |
| Oluşturma | Her çağrı için bir kez `POST /v1/calls/register-sip` ile | Bir kez `POST /v1/sip-endpoints` ile |
| Kimlik doğrulama | Adresteki tek kullanımlık belirteç | SIP digest kullanıcı adı + parola (ve isteğe bağlı kaynak IP izin listesi) |
| Uygun kullanım | Çağrı aktarmadan önce zaten API çağrısı yapan uygulamalar; çağrı başına değişkenler | Bir trunk'ı ThunderPhone'a "yönlendirmesi" gereken PBX'ler ve operatörler |
| Geçerlilik | 5 dakika, tek çağrı | Siz silene kadar |

Her iki tür de kuruluşunuzdaki tek bir yapay zeka ajanına yönlendirilir ve ikisi de çağrı
geçmişinde diğer gelen çağrılar gibi görünür.

## Çağrı başına SIP URI

### 1. Çağrıyı kaydedin

```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` (isteğe bağlı), arayanın sizin tarafınızda aradığı numaradır. Bu numara
  çağrı geçmişinde çağrının hedefi olarak kaydedilir ve yapay zeka ajanı bunu kendi
  numarası olarak görür.
- `variables` (isteğe bağlı), [giden çağrılarda](/tr/guides/call-variables) olduğu gibi
  yapay zeka ajanının istemindeki `{{placeholders}}` alanlarını doldurur.
- `call_id`, çağrı bağlandığında çağrı geçmişinde sahip olacağı kimliktir
  (`GET /v1/calls/{call_id}`).

### 2. URI'yi arayın

Çağrıyı 5 dakika içinde `sip_uri` adresine gönderin. URI yalnızca tek çağrı için çalışır:
bir çağrı bunu kullandığında, o çağrı hızlıca sonlansa bile URI artık kullanılamaz.

Örneğin Twilio ile, devretmek istediğiniz çağrı için şu TwiML'yi döndürün:

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

Bir PBX'ten URI'yi SIP hedefi olarak arayın. Kullanıcı adı veya parola
gerekmez; belirteç kimlik bilgisidir. Bu nedenle URI kullanılmış olana kadar onu
parola gibi koruyun.

## SIP uç noktası (kalıcı adres)

### 1. Uç noktayı oluşturun

```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` yalnızca uç nokta oluşturulduğunda bir kez döndürülür. Hemen PBX
  veya operatör yapılandırmanıza kaydedin. Kaybederseniz,
  `POST /v1/sip-endpoints/{id}/rotate-password` ile değiştirin.
</Warning>

### 2. Sisteminizi buna yönlendirin

Aşağıdaki ayarlarla bir SIP trunk'ı veya hedef yapılandırın:

| Ayar | Değer |
|---|---|
| SIP URI | uç noktanın `sip_uri` değeri |
| Kullanıcı adı / parola | `username` / `password` (digest kimlik doğrulaması; ThunderPhone her çağrıda doğrulama ister) |
| Taşıma | 5060 numaralı bağlantı noktasında TCP veya 5061 numaralı bağlantı noktasında TLS (önerilir) ya da 5060 numaralı bağlantı noktasında UDP |
| Kodekler | G.711 (PCMU/PCMA) veya G.722 |

<Note>
  TCP veya TLS'yi tercih edin. UDP, genel adreslerden ve çoğu NAT üzerinden
  çalışır; ancak "simetrik" bir NAT'ın (her hedef için yeni bir bağlantı noktası
  kullanan NAT) arkasında, ajanın çağrı sonlandırmaları ve aktarımları
  sisteminize ulaşmayabilir. Kaynak IP izin listesi (aşağıda) da TCP veya TLS
  gerektirir. TLS üzerinden SIP sinyalleşmesi, `sip.thunderphone.com` sonrasında
  da çağrıyı işleyen sunuculara kadar şifreli kalır.
</Note>

Bu taşıma ve kodek ayarları çağrı başına URI'ler için de geçerlidir. Her iki
adres türü için iki ağ ayrıntısı önemlidir:

- **Record-Route'u izleyin.** İlk INVITE'tan sonra çağrının geri kalan
  sinyalleşmesi (ACK, çağrı sonlandırma, aktarımlar), `Record-Route` başlığında
  adı geçen (`sip-1.thunderphone.com` veya `sip-2.thunderphone.com` ya da IP
  adresi) çağrıyı yanıtlayan belirli ThunderPhone sunucusuna gider. Giden SIP'i
  kısıtlarsanız, `sip.thunderphone.com` ile birlikte şu ana bilgisayarlara da
  izin verin: `172.170.39.202` (`sip`), `13.86.104.121` (`sip-1`) ve
  `20.80.98.90` (`sip-2`).
- **Ses başka bir yere gider.** `sip.thunderphone.com` yalnızca sinyalleşmeyi
  taşır. SDP yanıtındaki adreslere ve bağlantı noktalarına medya (RTP) erişimine
  izin verin.

Adresinize yapılan her çağrı, sizin tarafınızda arayanın çevirdiği numaradan
bağımsız olarak uç noktanın yapay zeka ajanına ulaşır. Numaraları hiçbir zaman
içe aktarmadığınız için, kendi tarafınızda numaraları değiştirmeniz
ThunderPhone'da herhangi bir değişiklik gerektirmez.

### Aranan numarayı iletin (isteğe bağlı)

Arayanın numaralarınızdan hangisini çevirdiğini kaydetmek için, bunu INVITE
üzerinde bir `X-Original-To` başlığında (örneğin
`X-Original-To: +14155550142`) veya standart bir `Diversion` başlığında
gönderin. ThunderPhone bunu çağrının hedefi olarak kaydeder.

Hedef şu sırayla seçilir: çağrı başına URI kaydedilirken verilen `to_number`,
ardından `X-Original-To` içindeki numara, ardından `Diversion` içindeki numara.
Bunların hiçbiri numara sağlamazsa, uç nokta için
`sip:agent-12-jhxmginwjx` (uç noktanın adresi), çağrı başına URI için ise
`sip:call` gösterilir.

Twilio ile başlığı SIP URI'sine ekleyebilirsiniz:
`sip:agent-12-jhxmginwjx@sip.thunderphone.com;transport=tcp?X-Original-To=%2B14155550142`.

### Kaynak IP'leri kısıtlayın (isteğe bağlı)

Kullanıcı adı ve parolaya ek olarak, yalnızca kendi sinyalleşme adreslerinizden
gelen çağrıları kabul etmek için `allowed_source_cidrs` değerini ayarlayın:

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

Başka herhangi bir adresten gelen çağrılar, ajana ulaşmadan önce reddedilir.
Medya adreslerinizi değil, sisteminizin SIP sinyalleşmesini gönderdiği adresleri
kullanın (Twilio gibi bir operatör için, yayımlanmış sinyalleşme IP aralıkları).

<Warning>
  İzin listesi yalnızca TCP veya TLS üzerinden gelen çağrılar için denetlenir.
  UDP kaynak adresi taklit edilebilir; bu nedenle izin listesi bulunan bir uç
  nokta, UDP üzerinden gelen tüm çağrıları reddeder. Çağrıları buna
  `;transport=tcp` (5060 bağlantı noktası) ile veya TLS üzerinden (5061
  bağlantı noktası) gönderin.
</Warning>

## Arayanların ve sisteminizin gördükleri

- **Arayan kimliği:** `From` başlığının kullanıcı bölümü arayan olarak saklanır.
  Bir telefon numarası (rakamlar; isteğe bağlı olarak `+`, boşluklar, tireler, noktalar veya
  parantezlerle birlikte) E.164 biçimine normalleştirilir; SIP kullanıcı adı gibi diğer her şey
  gönderildiği şekilde tutulur. En fazla 32 karakter saklanır ve eksik arayan bilgisi
  `anonymous` olarak saklanır.
- **Reddedilen çağrılar:** bilinmeyen veya süresi dolmuş çağrı başına URI, SIP
  `404 Not Found` alır. Daha önce kullanılmış bir çağrı başına URI, devre dışı bırakılmış bir uç nokta veya
  izin listesinin dışındaki bir kaynak (izin listesi bulunan bir uç noktaya yapılan tüm UDP çağrıları dahil),
  yapay zeka ajanı başlamadan önce bağlantısı kesilir: sisteminiz çağrının başarısız olduğunu görebilir
  veya çağrı bağlanıp hemen sona erebilir. Bu reddetmeler çağrı geçmişi kaydı oluşturmaz.
  Kuruluşunuzun kredisi tükenmişse veya harcama sınırına ulaşmışsa çağrı reddedilir ve çağrı geçmişinde
  ücret alınmamış başarısız bir çağrı olarak görünür. Çağrı başına bir denemeyi yeniden yapmak için yeni bir URI kaydedin.
- **Aktarımlar:** ajanın soğuk aktarımları çalışır (ThunderPhone, sisteminizin kabul etmesi gereken bir SIP
  `REFER` gönderir). İkinci bağlantı için arayan kimliği olarak gösterilecek bir ThunderPhone numarası
  olmadığından, SIP adresi çağrılarında sıcak aktarım kullanılamaz. Twilio ile yukarıdaki TwiML,
  ajanı bağlar ancak aktarımları işlemez: `<Dial>` öğesine
  `referUrl="https://YOUR_SERVER/sip-transfer"` ekleyin ve bu webhook'un `ReferTransferTarget`
  değerini okuyarak aktarım hedefini arayan TwiML döndürmesini sağlayın (Twilio'nun
  [SIP REFER kılavuzuna](https://www.twilio.com/docs/voice/api/refer-to-twilio) bakın).
- **Metin mesajları:** SIP adresi ve aranan numara metin mesajı gönderemez.
  Ajan, yalnızca mesajlaşma için yapılandırılmış, SMS destekli ayrı bir numarası varsa SIP adresi çağrısı
  sırasında mesaj gönderebilir; aksi halde SMS aracı kullanılamaz.
- **Kayıt:** ThunderPhone SIP `REGISTER` kabul etmez. Çağrıları adrese gönderin;
  adrese kaydolmayın.

## Fiyatlandırma

SIP adresi çağrıları, ajanın normal dakika başına ücreti üzerinden faturalandırılır. Çağrıyı
bir ThunderPhone numarası taşımadığından telefon numarası ücreti yoktur. Kendi operatörünüz,
çağrının kendi tarafını her zamanki şekilde faturalandırır. Bkz.
[Fiyatlandırma](/tr/guides/pricing).

## Test edin

1. Yukarıda açıklandığı gibi çağrı başına bir URI veya uç nokta oluşturun.
2. Sisteminizden veya herhangi bir SIP yazılım telefonundan arayın (bir uç nokta için kullanıcı adı ve parolayı girin).
3. Görüşmeyi kapattıktan sonra panodaki **Çağrılar** bölümünde çağrıyı açın veya
   `GET /v1/calls/{call_id}` ile alın. Arayanı, hedefi
   ("Aranan numarayı iletin" altındaki sıraya bakın) ve transkripti gösterir.

API ayrıntıları: [SIP adresleri API referansı](/api-reference/sip-addresses).
