Open in
Повежите се преко SIP-а (без броја телефона)
Шаљите позиве ThunderPhone агенту директно са свог PBX-а, преко оператера или из SIP апликације, помоћу једнократног SIP URI-ја за сваки позив или трајне SIP адресе.
Ако Ваш систем већ управља бројевима телефона (PBX, платформа за контакт центар или налог код оператера где мењате бројеве), позиве можете слати ThunderPhone агенту преко обичног SIP-а. Не увозите нити купујете број на ThunderPhone-у. Ваш систем позива SIP адресу, а агент се јавља.
Постоје две врсте SIP адреса:
| SIP URI за појединачни позив | SIP крајња тачка | |
|---|---|---|
| Изгледа као | sip:c-<token>@sip.thunderphone.com | sip:agent-<id>-<letters>@sip.thunderphone.com |
| Креира се помоћу | POST /v1/calls/register-sip, једном за сваки позив | POST /v1/sip-endpoints, једном |
| Аутентификација | Једнократни токен у адреси | SIP диџест корисничко име + лозинка (и опционално листа дозвољених изворних IP адреса) |
| Погодно за | Апликације које већ позивају API пре преусмеравања позива; променљиве за сваки позив | PBX системе и оператере који само треба да усмере SIP везу ка ThunderPhone-у |
| Важи | 5 минута, један позив | Док је не избришете |
Обе врсте усмеравају ка једном агенту у Вашој организацији и обе се приказују у историји позива као и сваки други долазни позив.
SIP URI за појединачни позив
1. Региструјте позив
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"}
}'{
"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(опционално) је број који је позивалац позвао у Вашем систему. Он се чува као одредиште позива у историји позива, а агент га види као сопствени број.variables(опционално) попуњавају{{placeholders}}у упиту агента, на исти начин као за одлазне позиве.call_idје идентификатор који ће позив имати у историји позива (GET /v1/calls/{call_id}) када се повеже.
2. Позовите URI
Пошаљите позив на sip_uri у року од 5 минута. URI се може користити само за један позив:
када га позив употреби, више није важећи, чак и ако се тај позив брзо заврши.
На пример, са Twilio-ом вратите следећи TwiML за позив који желите да предате:
<Response>
<Dial>
<Sip>sip:c-1790372992.Qm3xT8vLk2PzR7nYw4HbJa.uF6sD1gK9eW2cX5vB8nM0q@sip.thunderphone.com;transport=tcp</Sip>
</Dial>
</Response>Из PBX система, позовите URI као SIP одредиште. Корисничко име или лозинка нису потребни; токен је акредитив, па URI третирајте као лозинку док се не употреби.
SIP крајња тачка (трајна адреса)
1. Направите крајњу тачку
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"}'{
"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"
}2. Усмерите систем на њу
Конфигуришите SIP магистралу или одредиште са:
| Подешавање | Вредност |
|---|---|
| SIP URI | sip_uri крајње тачке |
| Корисничко име / лозинка | username / password (диџест аутентификација; ThunderPhone проверава сваки позив) |
| Транспорт | TCP на порту 5060 или TLS на порту 5061 (препоручено), односно UDP на порту 5060 |
| Кодеци | G.711 (PCMU/PCMA) или G.722 |
Ова подешавања транспорта и кодека важе и за URI-је по позиву. Два мрежна детаља су важна за обе врсте адреса:
- Пратите Record-Route. После првог INVITE-а, остатак сигнализације позива
(ACK, прекид позива, трансфери) иде на конкретан ThunderPhone сервер који је
одговорио, а који је наведен у заглављу
Record-Route(sip-1.thunderphone.comилиsip-2.thunderphone.com, или његова IP адреса). Ако ограничавате одлазни SIP, дозволите те хостове као иsip.thunderphone.com:172.170.39.202(sip),13.86.104.121(sip-1) и20.80.98.90(sip-2). - Аудио иде на другу адресу.
sip.thunderphone.comпреноси само сигнализацију. Дозволите медијски саобраћај (RTP) ка адресама и портовима у SDP одговору.
Сваки позив на ову адресу стиже до агента крајње тачке, без обзира на то који је број позивалац бирао на вашој страни. Никада не увозите бројеве, па њихова ротација на вашој страни не захтева никакву промену у ThunderPhone-у.
Проследите бирани број (опционално)
Да бисте забележили који је од ваших бројева позивалац бирао, пошаљите га у INVITE-у
у заглављу X-Original-To (на пример X-Original-To: +14155550142) или у
стандардном заглављу Diversion. ThunderPhone га чува као одредиште позива.
Одредиште се бира овим редоследом: to_number наведен приликом регистрације URI-ја
по позиву, затим број у X-Original-To, па број у Diversion. Ако ниједно од овога
не садржи број, за крајњу тачку се приказује sip:agent-12-jhxmginwjx (адреса
крајње тачке), односно sip:call за URI по позиву.
Са Twilio-ом можете додати заглавље у SIP URI:
sip:agent-12-jhxmginwjx@sip.thunderphone.com;transport=tcp?X-Original-To=%2B14155550142.
Ограничите изворне IP адресе (опционално)
Подесите allowed_source_cidrs тако да прихвата позиве само са ваших сопствених
адреса за сигнализацију, поред корисничког имена и лозинке:
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"]}'Позиви са било које друге адресе се одбијају пре него што стигну до агента. Користите адресе са којих ваш систем шаље SIP сигнализацију (за оператера као што је Twilio, његове објављене опсеге IP адреса за сигнализацију), а не своје медијске адресе.
Шта виде позиваоци и ваш систем
- ИД позиваоца: кориснички део заглавља
Fromчува се као позивалац. Број телефона (цифре, опционо са+, размацима, цртицама, тачкама или заградама) нормализује се у E.164; све остало, као што је SIP корисничко име, чува се онако како је послато. Чува се највише 32 знака, а недостајући позивалац чува се каоanonymous. - Одбијени позиви: непознат или истекао URI по позиву добија SIP
404 Not Found. URI по позиву који је већ употребљен, онемогућена крајња тачка или извор који није на листи дозвољених (укључујући било који UDP позив ка крајњој тачки са листом дозвољених) прекида се пре покретања агента: ваш систем може видети да позив није успео или да се повезао, а затим одмах завршио. Ова одбијања не праве ставку у историји позива. Ако ваша организација нема довољно средстава или је достигла лимит потрошње, позив се одбија и у историји позива приказује као неуспео позив без наплате. Да бисте поново покушали позив по URI-ју, региструјте нови URI. - Преусмеравања: слепа преусмеравања агента раде (ThunderPhone шаље SIP
REFER, који ваш систем мора да прихвати). Топла преусмеравања нису доступна за позиве на SIP адресу, јер не постоји ThunderPhone број који би се приказао као ИД позиваоца за други крак. Са Twilio-ом, горњи TwiML повезује агента, али не обрађује преусмеравања: додајтеreferUrl="https://YOUR_SERVER/sip-transfer"у<Dial>, а затим нека тај webhook прочитаReferTransferTargetи врати TwiML који позива одредиште преусмеравања (погледајте Twilio-ов водич за SIP REFER). - Текстуалне поруке: SIP адреса и позвани број не могу да шаљу текстуалне поруке. Агент може да шаље текстуалне поруке током позива на SIP адресу само ако има посебан број који подржава SMS и који је подешен за слање порука; у супротном, његов SMS алат није доступан.
- Регистрација: ThunderPhone не прихвата SIP
REGISTER. Шаљите позиве на адресу; не региструјте се на њу.
Цене
Позиви на SIP адресу наплаћују се по уобичајеној цени агента по минуту. Не постоји накнада за број телефона, јер позив не преноси ThunderPhone број. Ваш сопствени оператер наплаћује своју страну позива као и обично. Погледајте Цене.
Тестирајте
- Направите URI по позиву или крајњу тачку као што је горе описано.
- Позовите га из свог система или са било ког SIP софтверског телефона (за крајњу тачку унесите корисничко име и лозинку).
- Након прекида позива, отворите позив у одељку Позиви на контролној
табли или га преузмите помоћу
GET /v1/calls/{call_id}. Приказује позиваоца, одредиште (погледајте редослед у одељку „Проследите позвани број“) и транскрипт.
Детаљи API-ја: API референца за SIP адресе.