Open in
התחברות דרך SIP (ללא מספר טלפון)
נתבו שיחות לסוכן ThunderPhone ישירות מה-PBX, מהספק או מיישום ה-SIP שלכם, באמצעות URI חד-פעמי של SIP לכל שיחה או כתובת SIP קבועה.
אם המערכת שלכם כבר מטפלת במספרי טלפון (מרכזייה, פלטפורמת מוקד שירות או חשבון אצל ספק שבו אתם מחליפים מספרים), תוכלו לשלוח שיחות לסוכן ThunderPhone באמצעות SIP רגיל. אינכם מייבאים או רוכשים מספר ב-ThunderPhone. המערכת שלכם מחייגת לכתובת SIP והסוכן עונה.
יש שני סוגים של כתובות SIP:
| URI של SIP לכל שיחה | נקודת קצה של SIP | |
|---|---|---|
| נראה כמו | sip:c-<token>@sip.thunderphone.com | sip:agent-<id>-<letters>@sip.thunderphone.com |
| נוצר באמצעות | POST /v1/calls/register-sip, פעם אחת לכל שיחה | POST /v1/sip-endpoints, פעם אחת |
| אימות | האסימון החד-פעמי שבכתובת | שם משתמש וסיסמה של SIP digest (ואפשרותית רשימת כתובות IP מורשות של מקורות) |
| מתאים עבור | אפליקציות שכבר קוראות ל-API לפני העברת שיחה; משתנים לכל שיחה | מרכזיות וספקים שצריכים רק "להפנות trunk" אל ThunderPhone |
| תקף למשך | 5 דקות, שיחה אחת | עד שתמחקו אותה |
שני הסוגים מנתבים לסוכן אחד בארגון שלכם, ושניהם מופיעים בהיסטוריית השיחות כמו כל שיחה נכנסת אחרת.
URI של SIP לכל שיחה
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>ממרכזייה, חייגו ל-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. הפנו את המערכת שלכם אליה
הגדירו trunk או יעד SIP עם:
| הגדרה | ערך |
|---|---|
| URI של SIP | הערך sip_uri של נקודת הקצה |
| שם משתמש / סיסמה | username / password (אימות digest; ThunderPhone מאתגרת כל שיחה) |
| תעבורה | TCP ביציאה 5060 או TLS ביציאה 5061 (מומלץ), או UDP ביציאה 5060 |
| רכיבי Codec | G.711 (PCMU/PCMA) או G.722 |
הגדרות תעבורה ורכיבי codec אלה חלות גם על 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 תוכלו להוסיף את הכותרת ל-URI של SIP:
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 חדש. - העברות: העברות קרות של הסוכן פועלות (ThunderPhone שולחת SIP
REFER, שהמערכת שלכם חייבת לקבל). העברות חמות אינן זמינות בשיחות לכתובות SIP, מכיוון שאין מספר ThunderPhone להצגה כמזהה מתקשר עבור המקטע השני. עם Twilio, ה-TwiML שלמעלה מחבר את הסוכן אך אינו מטפל בהעברות: הוסיפוreferUrl="https://YOUR_SERVER/sip-transfer"אל<Dial>, והגדירו את ה-webhook כך שיקרא אתReferTransferTargetויחזיר TwiML שמחייג ליעד ההעברה (ראו את מדריך SIP REFER של Twilio). - הודעות טקסט: כתובת ה-SIP והמספר שחויג אינם יכולים לשלוח הודעות טקסט. הסוכן יכול לשלוח הודעת טקסט במהלך שיחה לכתובת SIP רק אם מוגדר עבורו מספר נפרד בעל יכולת SMS לשליחת הודעות טקסט; אחרת כלי ה-SMS שלו אינו זמין.
- רישום: ThunderPhone אינה מקבלת SIP
REGISTER. שלחו שיחות אל הכתובת; אל תירשמו אליה.
תמחור
שיחות לכתובות SIP מחויבות לפי התעריף הרגיל לדקה של הסוכן. אין חיוב עבור מספר טלפון, מכיוון שאף מספר ThunderPhone אינו נושא את השיחה. ספק התקשורת שלכם מחייב עבור הצד שלו בשיחה כרגיל. ראו תמחור.
בדקו זאת
- צרו URI עבור שיחה בודדת או נקודת קצה כמתואר למעלה.
- חייגו אליו מהמערכת שלכם, או מכל טלפון תוכנה של SIP (עבור נקודת קצה, הזינו את שם המשתמש והסיסמה).
- לאחר ניתוק השיחה, פתחו את השיחה ב-שיחות בלוח הבקרה, או אחזרו אותה
באמצעות
GET /v1/calls/{call_id}. היא מציגה את המתקשר, את היעד (ראו את הסדר תחת "העבירו את המספר שחויג") ואת התמלול.
פרטי API: עיון ב-API של כתובות SIP.