Използвайте собствени номера (VoIP, API)

Демонстрационните номера са подходящи за прототипиране, но трафикът в продукционна среда трябва да използва номера, които притежавате чрез собствен VoIP доставчик. Това ръководство ви превежда през процеса в три стъпки: тествайте идентификационните данни → създайте връзка → импортирайте номера → потвърдете.

Поддържани доставчици

Доставчикprovider idБележки
TwiliotwilioAPI ключ + тайна
TelnyxtelnyxAPI ключ; налично е водено въвеждане (setup_method: guided_telnyx)
SignalWiresignalwireОчаквайте скоро — свържете чрез ръчен SIP днес
VonagevonageОчаквайте скоро — свържете чрез ръчен SIP днес
Ръчен SIPmanualВсяка SIP магистрала — използвайте собствена конфигурация

1. Тествайте идентификационните данни

Преди да създадете трайно съхранена VoIP връзка, проверете идентификационните данни на доставчика, за да потвърдите, че работят. Това връща verification_evidence_id, който подавате към стъпката за създаване, така че идентификационните данни да не бъдат таксувани два пъти за тестване.

curl -X POST https://api.thunderphone.com/v1/voip-connections/test \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider":    "telnyx",
    "credentials": { "apiKey": "KEY...", "connectionId": "123456" },
    "sip_config":  { "domain": "acme.sip.telnyx.com" }
  }'
{
  "status": "pass",
  "verification_evidence_id": "b9a2...",
  "suggested_connection_name": "Telnyx: Acme Main (+15550001234)",
  "checks": {
    "credentials_valid": true,
    "inbound_reachable": true,
    "outbound_authorized": true
  }
}

Ако някоя проверка е неуспешна, status в отговора ще бъде fail, а checks ще покаже коя стъпка се е провалила. Коригирайте конфигурацията от страна на доставчика (назначаване на SIP магистрала, списък с разрешени IP адреси, разрешение за изходящи разговори) и опитайте отново.

2. Създайте връзката

Подайте verification_evidence_id, който току-що получихте:

curl -X POST https://api.thunderphone.com/v1/voip-connections \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name":         "Acme Telnyx Main",
    "provider":     "telnyx",
    "setup_method": "api_key",
    "credentials":  { "apiKey": "KEY...", "connectionId": "123456" },
    "sip_config":   { "domain": "acme.sip.telnyx.com" },
    "verification_evidence_id": "b9a2..."
  }'

Отговорът е обект VoipConnection с status="connected". Идентификационните данни се съхраняват на сървъра и никога не се връщат в обикновен текст при последващи GET заявки — за да ги смените, изпълнете нов test и PATCH заявка с новото доказателство.

3. Изведете и импортирайте номера

Прегледайте номерата, достъпни с вашите идентификационни данни, които все още не са в организация на ThunderPhone:

curl https://api.thunderphone.com/v1/voip-connections/5/available-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

След това импортирайте желаните номера:

curl -X POST https://api.thunderphone.com/v1/voip-connections/5/import-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"numbers": ["+15550001234", "+15550009999"]}'

Всеки импортиран номер става ресурс за телефонен номер във вашата организация с source="voip" и status="provisioning".

4. Проверете всеки импортиран номер

Импортирането регистрира номера като наличен; за реално маршрутизиране на обаждания през него е необходимо двупосочно потвърждение (проверка за входящо набиране + проверка за разрешение за изходящи обаждания).

curl -X POST https://api.thunderphone.com/v1/phone-numbers/{id}/verify-voip \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

При успех voip_verification_status се променя на verified и номерът получава status="active". При неуспех отговорът посочва какво не е успешно — отстранете проблема (често липсващо присвояване на trunk в таблото за управление на доставчика) и извикайте отново.

5. Присвоете агенти и приемете обаждане

След като номерът е потвърден, присвоявате агенти за входящи / изходящи обаждания по същия начин като за демонстрационен номер. Вижте Обработване на входящи обаждания и Извършване на изходящи обаждания.

Ротация на идентификационни данни

Когато ключът на доставчика се ротира, изпълнете отново последователността тест-после-актуализация:

# 1. Test the new credentials
curl -X POST https://api.thunderphone.com/v1/voip-connections/test ...

# 2. PATCH the connection with the new evidence
curl -X PATCH https://api.thunderphone.com/v1/voip-connections/{id} \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "credentials": { "apiKey": "NEW_KEY..." },
    "verification_evidence_id": "fresh-evidence-id"
  }'

Връзката остава на място — не е необходимо да импортирате номерата отново.


Следващи стъпки