آرشیو موضوعات ‘معرفی’

FreeSWITCH چیست؟

منتشر شده در دی ۲۹م, ۱۳۹۱ موضوع معرفی توسط

FreeSWITCH، یک سیستم تلفنی کدباز است که اولین بار در سال ۲۰۰۶ توسط یکی از برنامه‌نویسان Asterisk به نام Anthony Minessale معرفی شد. او کار طراحی و پیاده‌سازی این سیستم را به کمک Brian West و Michael Jerris، که آنها نیز قبل از آن از توسعه‌دهنده‌گان Asterisk بودند، انجام داده بود. در ابتدا ایجاد یک سیستم تلفنی جدید با وجود سیستم تلفنی موفقی مانند Asterisk، کار عاقلانه‌ایی به نظر نمی‌رسید. اما با توجه به تجربیاتی که او و همکارانش در کار با Asterisk داشتند و متوجه یک سری مشکلات در آن شده بودند (در مقاله‌ایی دیگر به بررسی مشکلات استریسک خواهیم پرداخت)، هدف اولیه آنها طراحی یک سیستم تلفنی ماژولار، قابل‌گسترش، پایدار و قابل پشتیبانی بر روی سیستم‌عامل‌های مختلف بود. نسخه ۱٫۰٫۰ FreeSWITCH در ماه می ۲۰۰۸ رسما معرفی شد و در حال حاضر بعد از گذشت چندین سال، روزانه کاربران و توسعه‌دهندگان زیادی به پیشرفت این پروژه کمک می‌کنند.

FreeSWITCH در حقیقت یک soft switch کلاس ۵ یا B2BUA (مخفف back-to-back user agent) است که تحت لیسانس MPL و با زبان برنامه‌نویسی C پیاده‌سازی شده و بر روی سیستم عامل‌های Windows، Mac OSX، Linux، *BSD و سایر توزیع‌های UNIX قابل اجرا است. در طراحی و پیاده‌سازی این سیستم تلفنی، سعی شده است هسته (core) آن تا حد امکان کوچک باشد و تنها امکانات و قابلیت‌های ضروری را شامل شود. ضمنا در پیاده‌سازی آن سعی شده تا حد امکان دوباره کاری نشود و از کتابخانه‌های نرم‌افزاری موجود استفاده شود. به عنوان مثال در پیاده‌سازی ماژول mod_sofia، از پروژه Sofia-SIP که یک پروژه کدباز تحت حمایت شرکت نوکیا استفاده شده است (sofia-sip.sourceforge.net).

در این سیستم تلفنی، از تکنولوژی‌ها و پروتکل‌های ارتباطی مختلفی مانند Skype، SIP، H323 و GoogleTalk پیشتیبانی می‌شود که امکان برقراری ارتباط آسان با سیستم‌های تلفنی کدباز مختلفی مانند sipXecs، Call Weaver، Bayonne، YATE و یا Asterisk را فراهم می‌کند.

FreeSWITCH، از بسیاری از ویژگی‌های پیشرفته SIP مانند presence/BLF/SLA و همچنین TCP TLS و sRTP پشتیبانی می‌کند. آن همچنین می‌تواند به عنوان یک پروکسی ناپیدا (transparent proxy) با و بدون media در مسیر استفاده شود و به عنوان یک SBC یا Session Border Controller عمل کند.

FreeSWITCH ، از کدک‌های Wide Band و Narrow Band پشتیبانی می‌کند و آن را به راهکاری ایده‌آل برای برقراری ارتباط بین دستگاه‌های قدیمی و تکنولوژی‌های جدید، تبدیل کرده است. کانال‌های صدا و ماژول اتصال کنفرانس می‌توانند با فرکانس‌های ۸،۱۲،۱۶،۲۴،۳۲ یا ۴۸ کیلوهرتزی کار کنند و حتی کانال‌هایی با نرخ‌های مختلف را به هم وصل کنند. کدک G729 تحت لیسانس تجاری هم قابل دسترسی است.

FreeSWITCH، از فکس، هم بر روی صدا و هم پروتکل T.38 پشتیبانی می‌کند و می‌تواند بین هردو روش به عنوان مبدل هم عمل کند.

RingPBX چیست؟

منتشر شده در آذر ۲۳م, ۱۳۹۱ موضوع معرفی توسط

RingPBX، یک نرم افزار مدیریت تماس کاملا ایرانی و مبتنی بر نرم افزار کدباز FreeSWITCH است که نقشی مشابه نرم افزارهای شناخته شده ایی مانند trixbox ،AsteriskNOW ،Elastix  (برپایه Asterisk) و blue.box، FusionPBX و FreePyBX (بر پایه FreeSWITCH) را در دنیای VoIP ایفا می کند.

تاریخچه RingPBX، به اوایل سال ۱۳۸۹ بر می گردد که نسخه اولیه آن تحت ویندوز و به صورت اختصاصی برای شرکت گسترش ارتباطات سپنتا پیاده سازی شده بود. به دلیل اینکه نسخه ۱ این نرم افزار، اختصاصی برای یک شرکت خاص پیاده سازی شده بود، به راحتی قابل نصب و راه اندازی برای شرکت ها و سازمان های دیگر نبود. از این رو در ابتدا تصمیم گرفته شد نسخه ۱ این نرم افزار کلا کنار گذاشته شود و برای صرفه جویی در وقت از یکی از نرم افزارهای کدباز مانند blue.box و یا FusionPBX استفاده شود. تیم فنی بخش VoIP سپنتا بعد از ماه ها وقت گذاشتن بر روی این نرم افزارهای کدباز متوجه یک سری محدودیت های فنی شد که باعث پیچیده شدن پیاده سازی یک سری ایده ها و گسترش این نرم افزارها می شد. از این رو در اواخر سال ۱۳۹۰ تصمیم گرفته شد با کنار گذاشتن نسخه ۱ نرم افزار RingPBX، نسخه ۲ آن از صفر (from scratch) پیاده سازی شود. بعد از ماه ها تلاش در نهایت نسخه ۲ این نرم افزار در اواخر مهرماه سال ۱۳۹۱ بعد از انجام تست های اولیه به مرحله بهره برداری رسید.

نسخه ۲ RingPBX، برخلاف نسخه ۱ آن، بر روی توزیع CentOS سیستم عامل Linux ومبتنی بر ۳٫۲ Kohana که یک HMVC PHP5 Framework است پیاده سازی شده است.

به منظور پیاده سازی نرم افزاری در حد استانداردهای جهانی و با توجه به داشتن یک سری تجربیات تیم فنی بخش VoIP سپنتا در کار با نرم افزارهای مدیریت تماسی مانند blue.box، Elastix و Cisco Unified Communication Manager، سعی شده است با در نظر گرفتن و ترکیب یک سری از قابلیت های قابل استفاده این نرم افزارهای شناخته شده، یک نرم افزار مطمئن، یکپارچه و قابل گسترش برای رفع نیازهای شرکت ها و سازمان های داخلی، طراحی و پیاده سازی شود.