Користите сопствене бројеве (VoIP, API)
Демо бројеви су погодни за израду прототипа, али продукциони саобраћај треба да користи бројеве које поседујете преко сопственог VoIP добављача. Овај водич вас води кроз ток у три корака: тестирајте акредитиве → креирајте везу → увезите бројеве → потврдите.
Подржани добављачи
| Добављач | provider ID | Напомене |
|---|---|---|
| Twilio | twilio | API кључ + тајна |
| Telnyx | telnyx | API кључ; доступно је вођено увођење (setup_method: guided_telnyx) |
| SignalWire | signalwire | Ускоро — данас се повежите путем ручног SIP-а |
| Vonage | vonage | Ускоро — данас се повежите путем ручног SIP-а |
| Ручни SIP | manual | Било који SIP trunk — користите сопствену конфигурацију |
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 ће
приказати који корак није успео. Исправите конфигурацију на страни добављача (додела
trunk-а, 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". Ако не успе, одговор наводи
шта није успело — исправите то (често недостаје додела транка у
контролној табли добављача) и поново позовите.
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"
}'
Веза остаје на месту — нема потребе да поново увозите бројеве.