General Purpose
FreeSWITCH
FreeSWITCH یک نرمافزار متنباز و چندپروتکلی است که به عنوان یک سوئیچ نرمافزاری بر روی پلتفرمهای مختلف اجرا میشود. این سیستم برای ایجاد و مدیریت سیستمهای ارتباطی بلادرنگ (Real-Time Communications) بسیار مناسب است و میتواند خدمات تلفنی، ویدئویی، و کنفرانسی را ارائه دهد. FreeSWITCH از پروتکلهایی مانند SIP، WebRTC، و H.323 پشتیبانی میکند و این ویژگی آن را برای سازمانهایی که نیاز به یک سیستم ارتباطی یکپارچه دارند، انتخابی مناسب میسازد.
استفادههای رایج FreeSWITCH شامل ساخت سیستمهای تلفن گویا (IVR)، کنفرانسهای صوتی و تصویری، و پلتفرمهای VoIP است. همچنین قابلیت ادغام با سایر سیستمهای PBX نظیر Asterisk را دارد که به سازمانها امکان میدهد از امکانات گسترده این دو سیستم بهرهمند شوند.
Asterisk
Asterisk یک فریمورک متنباز PBX است که برای ساخت سیستمهای ارتباطی بلادرنگ طراحی شده است. این فریمورک از پروتکلهای مختلف مانند SIP و IAX پشتیبانی میکند و میتواند برای ایجاد شبکههای VoIP، خطوط تلفنی خودکار، و مرکز تماس استفاده شود. Asterisk به دلیل انعطافپذیری بالا و پشتیبانی از پلتفرمهای مختلف، یکی از محبوبترین گزینهها برای ساخت سیستمهای ارتباطی تجاری و خانگی است.
یکی از ویژگیهای برجسته Asterisk، جامعه کاربری بزرگ و پشتیبانی گسترده آن است که به توسعهدهندگان اجازه میدهد با اطمینان از این سیستم استفاده کرده و ویژگیهای جدیدی به آن اضافه کنند. استفاده اصلی این فریمورک در مرکز تماس (Call Center)، سیستمهای پاسخگویی خودکار و خدمات تلفنی VoIP است.
SIP Servers
Kamailio
Kamailio یکی از محبوبترین سرورهای متنباز SIP است که در شبکههای گسترده و توسط ارائهدهندگان خدمات VoIP به کار گرفته میشود. این سرور که قبلاً با نام OpenSER شناخته میشد، به دلیل مقیاسپذیری بالا و توانایی مدیریت هزاران تماس همزمان، برای سازمانهای بزرگ و ارائهدهندگان خدمات تلفنی گزینهای عالی محسوب میشود.
Kamailio به عنوان یک پروکسی SIP، میتواند ترافیک VoIP را مدیریت کرده و بارگذاری متوازن را فراهم سازد. از دیگر ویژگیهای آن میتوان به احراز هویت کاربر و قابلیتهای امنیتی پیشرفته اشاره کرد که برای شبکههای حساس و گسترده بسیار مناسب است.
OpenSIPS
OpenSIPS یکی دیگر از سرورهای SIP متنباز است که ریشه در پروژه OpenSER دارد. OpenSIPS توانایی مدیریت ترافیک SIP با حجم بالا را دارد و برای ساخت سیستمهای VoIP در مقیاس وسیع به کار میرود. این سرور میتواند به عنوان پروکسی، مسیریاب و ثبتکننده (Registrar) در شبکههای VoIP عمل کند و از قابلیتهای پیشرفتهای مانند مدیریت چند دامنه و چندین کاربر همزمان بهرهمند است.
OpenSIPS برای شرکتهایی که به دنبال یک راهکار مقیاسپذیر برای مدیریت تماسهای VoIP هستند، گزینهای مناسب محسوب میشود و از آن در ارائه خدمات مخابراتی گسترده و سیستمهای تلفنی سازمانی استفاده میشود.
Routr
Routr یک پروکسی SIP سبک است که با استفاده از Node.js نوشته شده و برای مدیریت تماسهای SIP در شبکههای VoIP طراحی شده است. این سرور سبک و مقیاسپذیر بوده و از ویژگیهایی مانند ثبتکننده (Registrar) و سرویس مکانیابی پشتیبانی میکند.
Routr برای اپلیکیشنهای VoIP مدرن و مبتنی بر کلود بسیار مناسب است و به دلیل سازگاری با Docker و Kubernetes، به سرعت در محیطهای کلود قابل پیادهسازی است. سازمانهایی که به دنبال ایجاد یک شبکه VoIP مبتنی بر کلود هستند، میتوانند از مزایای سبک و انعطافپذیر بودن این پروکسی بهرهمند شوند.
Sippy B2BUA
Sippy B2BUA یک سرور SIP نوع Back-to-Back User Agent (B2BUA) است که با زبان Python نوشته شده و برای مدیریت و نظارت بر تماسهای SIP استفاده میشود. این سرور تماسها را به دو طرف جداگانه تقسیم کرده و امکان مدیریت دقیقتر و امنیت بیشتر را فراهم میکند.
سازمانهایی که نیاز به نظارت و کنترل دقیقتری بر روی تماسهای VoIP خود دارند، میتوانند از Sippy B2BUA استفاده کنند. این سرور به طور گسترده در شبکههای مخابراتی و سازمانی برای ایجاد تماسهای امن و نظارتشده مورد استفاده قرار میگیرد.
Flexisip
Flexisip یک مجموعه سرور SIP کامل است که شامل پروکسی، حضور (Presence) و چت گروهی میشود. این سرور به خصوص برای اپلیکیشنهای ارتباطی بلادرنگ که به قابلیتهای پیشرفتهای مانند مدیریت حضور کاربران و چت گروهی نیاز دارند، مناسب است.
Flexisip برای توسعهدهندگان اپلیکیشنهای ارتباطی که به دنبال ایجاد یک شبکه ارتباطی بلادرنگ و مبتنی بر SIP هستند، مناسب است. این سرور از پروتکلهای امن مانند TLS پشتیبانی میکند و میتواند به عنوان یک سرور ارتباطی ایمن در محیطهای مختلف مورد استفاده قرار گیرد.
Janus
Janus یک دروازه (Gateway) متنباز و سبک WebRTC است که به منظور ارائه ارتباطات بلادرنگ در پلتفرمهای مختلف مورد استفاده قرار میگیرد. Janus به توسعهدهندگان اجازه میدهد تا راهحلهای مختلفی برای کنفرانسهای ویدیویی، تماسهای صوتی، و پخش زنده ویدیویی ارائه دهند. یکی از ویژگیهای بارز Janus، پشتیبانی از پروتکلهای مختلف از جمله SIP، WebRTC، و RTSP است که به آن انعطافپذیری زیادی در استفاده در پروژههای متنوع میدهد.
این پروژه به خصوص برای سازمانها و توسعهدهندگانی که به دنبال پیادهسازی سرویسهای WebRTC بلادرنگ با پایداری و عملکرد بالا هستند، مناسب است. همچنین، Janus به عنوان یک پل برای اتصال WebRTC به سایر فناوریهای VoIP نیز عمل میکند.
RTPProxy
RTPProxy یک پروکسی RTP با عملکرد بالا است که برای مدیریت و پروکسیکردن ترافیک RTP در شبکههای VoIP به کار میرود. این پروکسی قابلیت مسیریابی و کنترل تماسهای RTP را داراست و به طور معمول در سیستمهای SIP استفاده میشود.
RTPProxy میتواند در سناریوهایی که نیاز به عبور از فایروالها و NAT است یا در مواردی که نیاز به پروکسیکردن ترافیک رسانهای در کنار SIP وجود دارد، مورد استفاده قرار گیرد. این ابزار برای اپراتورهای مخابراتی و ارائهدهندگان خدمات VoIP بهینهسازی شده و میتواند تعداد زیادی تماس را به صورت همزمان مدیریت کند.
RTP
RTP
یک پروکسی RTP است که میتواند به عنوان ماژول کرنل نیز استفاده شود و ترافیک رسانهای مبتنی بر RTP و UDP را مدیریت میکند. RTP
برای سیستمهایی که نیاز به پروکسیکردن ترافیک رسانهای در حجم بالا دارند مناسب است و میتواند در محیطهایی که استفاده از ماژولهای کرنل برای بهبود عملکرد ضروری است، به کار گرفته شود.
mediasoup
mediasoup یک سیستم کنفرانس WebRTC تخصصی و متنباز است که برای توسعهدهندگان امکان ایجاد پلتفرمهای کنفرانس ویدیویی با کیفیت بالا و کمترین تأخیر ممکن را فراهم میکند. Mediasoup با تمرکز بر استفاده بهینه از منابع سیستمی و مدیریت همزمانی بالا طراحی شده است.
این ابزار برای ایجاد سیستمهای کنفرانسی که نیاز به پشتیبانی از تعداد زیادی از شرکتکنندگان دارند، به کار میرود و توسعهدهندگان میتوانند از طریق APIهای منعطف آن، پلتفرمهای سفارشیسازی شده برای کنفرانس ویدیویی و صوتی بسازند.
SEMS
SEMS یا سرور رسانهای و اپلیکیشن SIP، یک پروژه متنباز است که برای ارائه خدمات VoIP مبتنی بر SIP به کار میرود. SEMS میتواند به عنوان یک پروکسی رسانهای، سرور کنفرانس، و اپلیکیشنهای مبتنی بر SIP استفاده شود و قابلیت اجرای اسکریپتهای سفارشی را نیز دارد.
این سرور برای سازمانهایی که به دنبال یک سرور رسانهای قدرتمند برای مدیریت تماسهای SIP و ارائه خدمات VoIP پیشرفته هستند، مناسب است. SEMS به دلیل قابلیت سفارشیسازی و پشتیبانی از اپلیکیشنهای SIP، یکی از انتخابهای محبوب برای ارائهدهندگان خدمات VoIP است.
Jitsi
Jitsi یک مجموعه پروژههای متنباز برای ارتباطات بلادرنگ (RTC) است که به ویژه بر روی نرمافزارهای کنفرانس تمرکز دارد. Jitsi Meet یکی از محبوبترین اپلیکیشنهای کنفرانس ویدیویی است که بر بستر WebRTC کار میکند و به کاربران امکان میدهد جلسات ویدیویی با کیفیت بالا و بدون نیاز به نصب کلاینتهای اضافی برگزار کنند.
Jitsi برای تیمهای کوچک و بزرگ که به دنبال یک راهحل کنفرانس ویدیویی سریع، امن و قابل اعتماد هستند مناسب است. Jitsi Meet همچنین به راحتی قابل خود میزبانی است و به کاربران امکان کنترل کامل بر دادههای خود را میدهد.
STUN/TURN Servers
coturn
coturn یک سرور کامل و همهجانبه STUN/TURN است که برای عبور ترافیک رسانهای از میان NAT و فایروالها در شبکههای VoIP و WebRTC به کار میرود. این سرور از پلتفرمهای مختلف پشتیبانی میکند و میتواند به طور همزمان به عنوان یک سرور STUN و TURN عمل کند.
coturn برای توسعهدهندگان و سازمانهایی که به دنبال راهحلهای عبور از NAT برای ترافیکهای VoIP و WebRTC هستند، بسیار مناسب است و به طور گسترده در شبکههای ارتباطی بلادرنگ استفاده میشود.
STUNTMAN
STUNTMAN یک پیادهسازی متنباز از پروتکل STUN است که مطابق با استاندارد RFC طراحی شده است. STUN به کلاینتهای VoIP و WebRTC کمک میکند تا بتوانند از پشت NAT و فایروال به شبکههای خارجی متصل شوند.
این سرور به ویژه برای تست و پیادهسازی سیستمهای VoIP و WebRTC مناسب است و توسعهدهندگان میتوانند از آن برای شبیهسازی و بررسی چگونگی عبور ترافیک از NAT استفاده کنند.
Operations
sngrep
sngrep یک ابزار قدرتمند و بر پایه ترمینال است که برای مشاهده جریانهای SIP در شبکههای VoIP استفاده میشود. این ابزار میتواند بستههای SIP را به صورت گرافیکی نمایش داده و تحلیلهای لازم را در اختیار کاربر قرار دهد.
sngrep برای مدیران سیستمهایی که نیاز به نظارت بر ترافیک SIP و تشخیص مشکلات احتمالی دارند، بسیار مفید است.
sipgrep
sipgrep یک ابزار کنسولی است که برای شنود و کاوش در ترافیک SIP به کار میرود. این ابزار به مدیران شبکه کمک میکند تا ترافیک SIP را در زمان واقعی ضبط و تجزیه و تحلیل کنند و به شناسایی مشکلات شبکه کمک میکند.
sipgrep به ویژه در محیطهایی که ترافیک SIP باید به دقت مانیتور شود، استفاده میشود.
rtpbreak
rtpbreak ابزاری برای تشخیص و بازسازی جلسات RTP است که به کاربران اجازه میدهد تا ترافیک RTP را تحلیل کرده و مشکلات شبکه را تشخیص دهند.
rtpbreak برای مهندسین شبکهای که به تحلیل دقیق ترافیک RTP و مشکلات کیفیت صوتی نیاز دارند بسیار مفید است.
HOMER
HOMER یک چارچوب متنباز برای ثبت و نظارت بر پروتکلهای مختلف RTC مانند SIP، RTP و WebRTC است. این ابزار قابلیتهای گستردهای برای مانیتورینگ ترافیک VoIP و تحلیل آن ارائه میدهد و به سازمانها کمک میکند تا مشکلات را در تماسهای VoIP شناسایی و حل کنند.
HOMER به خصوص در مراکز داده و شبکههای VoIP بزرگ برای تحلیل ترافیک و عیبیابی مورد استفاده قرار میگیرد.
WebRTC Troubleshooter
WebRTC Troubleshooter یک ابزار کلاینتمحور و خودمیزبانی است که به کاربران کمک میکند تا مشکلات ارتباطی WebRTC را در سطح کلاینت شناسایی و رفع کنند.
این ابزار به ویژه برای توسعهدهندگان و مهندسین شبکه که به دنبال شناسایی مشکلات NAT و فایروال در ارتباطات WebRTC هستند، مفید است.
Trickle ICE
Trickle ICE یک ابزار برای بررسی و افشای دادههای مرتبط با NAT traversal در سمت کلاینت است.
این ابزار به کاربران کمک میکند تا به بررسی و تحلیل مسیرهای مختلف برای عبور از NAT بپردازند و مشکلات ارتباطی را شناسایی کنند.
SIP3
SIP3 یک پلتفرم مانیتورینگ و تحلیل ترافیک VoIP و RTC است که برای نظارت بلادرنگ بر ترافیکهای VoIP و SIP به کار میرود.
این ابزار قابلیتهای پیشرفتهای مانند شناس
ابزارهای تست و ارزیابی
SIPp
ابزاری برای تولید ترافیک در پروتکل SIP که جهت تست سیستمهای VoIP استفاده میشود. با استفاده از این ابزار میتوانید ترافیک تماسهای SIP شبیهسازی کرده و عملکرد سیستم VoIP خود را تحت شرایط مختلف بررسی کنید.
لینک پروژه SIPp
SIPVicious
مجموعهای از ابزارهای امنیتی برای ارزیابی و تست امنیت سیستمهای VoIP مبتنی بر SIP. این ابزار به شما کمک میکند آسیبپذیریهای امنیتی سیستم VoIP خود را شناسایی و بررسی کنید.
لینک پروژه SIPVicious
sipsak
ابزاری برای تست استرس و دیباگ کردن سیستمهای VoIP. این ابزار به شما این امکان را میدهد تا کارایی سیستم SIP خود را در شرایط بارگذاری سنگین بررسی کرده و نقاط ضعف آن را شناسایی کنید.
لینک پروژه sipsak
sipexer
یک ابزار خط فرمان مدرن و انعطافپذیر برای مدیریت و اجرای دستورات پروتکل SIP. این ابزار به شما امکان میدهد درخواستها و پاسخهای SIP را بهصورت دستی مدیریت کنید.
لینک پروژه sipexer
ابزارهای پیادهسازی
slimswitch
ابزاری برای ایجاد تصاویر Docker امن و سبک برای FreeSWITCH. این ابزار به مدیران سیستم کمک میکند تا سیستمهای FreeSWITCH خود را به صورت امن و بهینه پیادهسازی و اجرا کنند.
لینک پروژه slimswitch
رابطهای وب/API
Issabel
محبوب ترین ایزو مبتنی بر استریسک در دنیا که امکان راه اندازی یک سیستم تلفنی VOIP با تمامی امکانات رایج را به شما می دهد، آموزش این سیستم تلفنی در ویپ ایران به طور کامل صورت می پذیرد.
Eqivo
پلتفرم API قابل برنامهریزی برای مدیریت تماسهای صوتی و مخابراتی. این پلتفرم به توسعهدهندگان اجازه میدهد سیستمهای VoIP خود را از طریق APIها به صورت سادهتری مدیریت کنند.
لینک پروژه Eqivo
Kazoo
یک پلتفرم VoIP قدرتمند مبتنی بر FreeSWITCH و Kamailio که بهویژه برای سرویسدهندگان مخابراتی طراحی شده است. این پلتفرم قابلیت مقیاسپذیری بالا و امکانات پیشرفتهای برای مدیریت تماسها دارد.
لینک پروژه Kazoo
FusionPBX
یک سیستم مدیریت چند مستأجر که بر اساس FreeSWITCH ساخته شده است. این ابزار مناسب برای سرویسدهندگان VoIP است که نیاز به مدیریت کاربران مختلف بهصورت مجزا دارند.
لینک پروژه FusionPBX
FreePBX
رابط کاربری وب برای مدیریت Asterisk که امکان پیکربندی و مدیریت آسان سیستم PBX را فراهم میکند. FreePBX یکی از محبوبترین ابزارها برای مدیریت سیستمهای مبتنی بر Asterisk است.
لینک پروژه FreePBX
Fonoster
پشته مخابراتی منبع باز که با Node.js ساخته شده و به توسعهدهندگان اجازه میدهد سیستمهای VoIP خود را بهصورت برنامهریزیشده و مقیاسپذیر مدیریت کنند.
لینک پروژه Fonoster
Wazo
پلتفرم API VoIP که بر پایه Asterisk، Kamailio و RTPEngine ساخته شده است. این پلتفرم به ارائهدهندگان VoIP امکان میدهد تا خدمات خود را به کاربران بهصورت بهینه و مطمئن ارائه دهند.
لینک پروژه Wazo
jambonz
یک پلتفرم CPaaS منبع باز که به سرویسدهندگان مخابراتی اجازه میدهد خدمات ارتباطی پیشرفته را با استفاده از APIها ارائه دهند.
لینک پروژه jambonz
IVOZ Provider
راهکار چند مستأجر VoIP که به ارائهدهندگان تلفنی اجازه میدهد خدمات VoIP خود را به صورت امن و مقیاسپذیر ارائه دهند.
لینک پروژه IVOZ Provider
سیستمهای صورتحساب
CGRateS
سیستم صورتحساب و ریتینگ (rating) درجه حامل که بهطور خاص برای سیستمهای VoIP طراحی شده است.
لینک پروژه CGRateS
A2Billing
سیستم صورتحساب برای Asterisk که قابلیتهای متعدد از جمله مدیریت پرداختهای پیشپرداخت و پسپرداخت را دارد.
لینک پروژه A2Billing
PyFreeBilling
پلتفرم صورتحساب منبع باز برای Kamailio و FreeSWITCH که بهویژه برای خدمات عمده فروشی VoIP طراحی شده است.
لینک پروژه PyFreeBilling
منابع آموزشی برای توسعهدهندگان
Official Website
منابع ابتدایی و آموزشی WebRTC از طریق سایت رسمی.
لینک به منابع رسمیGetting Started With WebRTC
آموزش WebRTC توسط HTML5 Rocks که شامل مفاهیم پایه و نحوه شروع کار با WebRTC است.
لینک به آموزش HTML5 Rocks
WebRTC Samples
مجموعهای از نمونههای مختلف که عملکردهای مختلف APIهای WebRTC را به نمایش میگذارند.
لینک به نمونههای WebRTC
WebRTC Experiments
فهرست جامعی از آزمایشهای WebRTC که توسط Muaz Khan ارائه شده است.
لینک به WebRTC Experiments
Interactive Codelab
آموزش مرحله به مرحله WebRTC بهصورت زنده توسط گوگل.
لینک به Codelab
کتابخانههای جاوا اسکریپت
drachtio
یک فریمورک SIP برای Node.js که توسعهدهندگان را قادر میسازد تا اپلیکیشنهای SIP پیچیده را بهسادگی پیادهسازی کنند.
لینک به پروژه drachtio
adapter.js
یک کتابخانه جاوا اسکریپت که تغییرات و ناسازگاریهای موجود در WebRTC را پوشش میدهد و برای سازگاری مرورگرهای مختلف استفاده میشود.
لینک به پروژه adapter.js
JsSIP
کتابخانه سبک وزن جاوا اسکریپت برای اجرای SIP که با WebRTC ادغام شده است.
لینک به پروژه JsSIP
sipML5
یک کلاینت SIP جاوا اسکریپت منبع باز که از WebRTC بهعنوان رسانه استفاده میکند.
لینک به پروژه sipML5
SIP.js
کتابخانه جاوا اسکریپت برای ایجاد ارتباطات SIP با استفاده از WebRTC. این کتابخانه به توسعهدهندگان کمک میکند تا بهراحتی تماسهای صوتی و تصویری SIP را در مرورگر پیادهسازی کنند.
لینک پروژه SIP.js
sip-ua.js
کلاینت SIP ساده و سبک وزن جاوا اسکریپت که برای مرورگرها طراحی شده و از WebRTC برای مدیریت جلسات صوتی و تصویری استفاده میکند.
لینک پروژه sip-ua.js
PeerJS
کتابخانهای برای سادهسازی استفاده از WebRTC و مدیریت ارتباطات همتا به همتا (peer-to-peer). این کتابخانه بیشتر برای پروژههایی که نیاز به ارتباط مستقیم بین کاربران دارند، مناسب است.
لینک پروژه PeerJS
SimpleWebRTC
ابزاری برای مدیریت ارتباطات WebRTC بهصورت ساده که به توسعهدهندگان این امکان را میدهد تا به سرعت ارتباطات ویدئویی و صوتی را در اپلیکیشنهای خود اضافه کنند.
لینک پروژه SimpleWebRTC
ابزارهای مانیتورینگ
HOMER
سیستم مانیتورینگ و دیباگینگ SIP که به شما اجازه میدهد بستههای SIP را در شبکه ردیابی کرده و مشکلات موجود را شناسایی کنید.
لینک پروژه HOMER
SNGREP
ابزاری برای ردیابی و بررسی سیگنالینگ SIP که به صورت کنسولی کار میکند و برای بررسی تماسهای SIP مورد استفاده قرار میگیرد.
لینک پروژه SNGREP
کتابخانههای دیگر مرتبط با WebRTC
mediasoup
کتابخانهای پیشرفته برای ساخت برنامههای ارتباطی چندرسانهای با استفاده از WebRTC. این ابزار بیشتر برای سرویسهایی مانند کنفرانسهای ویدئویی و استریمهای زنده استفاده میشود.
لینک پروژه mediasoup
Janus WebRTC Gateway
پلتفرمی چند منظوره برای مدیریت جلسات WebRTC که امکان ارائه خدماتی مانند استریم زنده، کنفرانسهای ویدیویی و موارد دیگر را فراهم میکند.
لینک پروژه Janus