ربط LiveKit بـ Bitcall (trunk SIP صادر)
ربط LiveKit بـ Bitcall (trunk SIP صادر)
استخدم Bitcall كـ trunk SIP صادر لوكيل صوت LiveKit. أنشئ trunk SIP صادرًا (العنوان، الأرقام، المصادقة)، ثم اتصل عبر create_sip_participant.

قبل أن تبدأ
💡 تنبيه: إن Bitcall اليوم للصادر فقط — خيار نظيف لوكلاء LiveKit الذين يُجرون المكالمات. يعمل مع LiveKit ذاتي الاستضافة أو LiveKit Cloud. والأرقام الواردة (DIDs) قادمة قريبًا.
«يشغّل LiveKit وكيلك في الزمن الحقيقي. وBitcall هي الـ trunk الصادر الذي يطلب من خلاله.» 🤖📞
🧰 ما الذي ستحتاجه
- مشروع LiveKit (ذاتي الاستضافة أو LiveKit Cloud) مع تثبيت CLI باسم
lk، أو وصول إلى لوحة التحكم - حساب SIP من Bitcall (اسم مستخدم + كلمة مرور) — انظر إعداد حساب SIP الأول
- هوية متصل (CLI) صادرة يُسمح لك بعرضها، بصيغة E.164
- بعض رصيد Bitcall (مسبق الدفع)
🔑 الخطوة 1: احصل على بيانات SIP من Bitcall
| الإعداد | القيمة |
|---|---|
| عنوان SIP (نطاق الـ trunk) | gateway.bitcall.io |
| المنفذ | 5060 |
| المصادقة | اسم مستخدم + كلمة مرور SIP |
➕ الخطوة 2: أنشئ trunk SIP صادرًا
يطلب LiveKit عبر trunk SIP صادر يحتوي نقطة نهاية مزوّدك وبيانات اعتمادك. أنشئ outbound-trunk.json:
{
"trunk": {
"name": "Bitcall Outbound Trunk",
"address": "gateway.bitcall.io",
"numbers": ["YOUR_OUTBOUND_CALLER_ID"],
"auth_username": "YOUR_BITCALL_SIP_USERNAME",
"auth_password": "YOUR_BITCALL_SIP_PASSWORD"
}
}
ثم أنشئه عبر الـ CLI:
lk sip outbound create outbound-trunk.json
📋 انسخ Trunk ID المُعاد — ستحتاجه لإجراء المكالمات.
addressهو مضيف SIP الخاص بـ Bitcall (gateway.bitcall.io).numbersهو هوية المتصل الصادرة التي تعرضها (لا رقم DID من Bitcall — فـ Bitcall للصادر فقط).- على LiveKit Cloud، يمكنك فعل الأمر نفسه من Telephony → SIP trunks → Create new trunk → JSON editor → Outbound.
- اختياري: اضبط
destination_countryللإنشاء من منطقة قريبة ممّا تتصل به.
🎭 الخطوة 3: اضبط هوية المتصل (CLI)
يعتمد سلوك هوية المتصل على دولة الوجهة وقواعد المشغّل: تغيير أو إدارة هوية المتصل.
🚀 الخطوة 4: أجرِ مكالمة صادرة
اطلب رقمًا داخل room عبر الـ trunk (الـ CLI معروض؛ والمثيل نفسه موجود في الـ SDKs عبر create_sip_participant):
lk sip participant create \
--room "my-room" \
--trunk "YOUR_TRUNK_ID" \
--call "NUMBER_YOU_ARE_CALLING" \
--identity "outbound-caller"
لوكيل ذكاء اصطناعي، أرسِل Agent الخاص بـ LiveKit إلى الـ room، ثم أنشئ مشارك SIP للاتصال بالمستخدم — انظر دليل «outbound calls» لوكلاء LiveKit. 📞🎉
🛠️ جدول استكشاف الأخطاء
| المشكلة | السبب المحتمل والحل |
|---|---|
CreateSIPParticipant يفشل فورًا |
رفضت Bitcall مصادقة الـ trunk — تحقّق من auth_username / auth_password وaddress. |
| متّصل لكن بلا صوت / باتجاه واحد | مشكلة مسار وسائط / NAT. تحقّق من شبكة وجدار خدمة SIP في LiveKit. انظر انقطاع مكالمات الصوت بالذكاء الاصطناعي بعد 30 ثانية. |
| انقطاع المكالمة بعد ~30–60 ثانية | خمول RTP أثناء فترات تفكير الوكيل ← keepalives الخاصة بـ RTP + ارفع المهلة. انظر انقطاع مكالمات الصوت بالذكاء الاصطناعي بعد 30 ثانية. |
| هوية المتصل خاطئة / مفقودة | تختلف قواعد CLI حسب الوجهة. انظر تغيير أو إدارة هوية المتصل. |
| تعذّر الاتصال بدولة | تأكّد أن الرقم بصيغة +E.164، وأن رصيدك مموّل، وأن المسار مفعّل. |
🧠 الخلاصة السريعة
✅ أنشئ trunk SIP صادرًا: address = gateway.bitcall.io، numbers = [هوية المتصل لديك]، إضافةً إلى اسم مستخدم/كلمة مرور SIP
✅ lk sip outbound create (أو محرّر JSON في LiveKit Cloud) ← انسخ Trunk ID
✅ اتصل عبر lk sip participant create / create_sip_participant، مع إرسال الوكيل إلى الـ room ☕
ذات صلة: SIP trunking لوكلاء الصوت بالذكاء الاصطناعي · انقطاع مكالمات الصوت بالذكاء الاصطناعي بعد 30 ثانية
ربط ElevenLabs بـ Bitcall (trunk SIP صادر)
لا يوجد مقال تالي
في هذه الصفحة
قبل أن تبدأ
🧰 ما الذي ستحتاجه
🔑 الخطوة 1: احصل على بيانات SIP من Bitcall
➕ الخطوة 2: أنشئ trunk SIP صادرًا
🎭 الخطوة 3: اضبط هوية المتصل (CLI)
🚀 الخطوة 4: أجرِ مكالمة صادرة
🛠️ جدول استكشاف الأخطاء
🧠 الخلاصة السريعة