در این مقاله سعی شده است تا عمده مشکلاتی که در هنگام نصب و کار با کارت های تلفنی وجود دارد، بررسی گردد. اغلب این مشکلات عبارتند از :
- سیستم کارت را شناسایی نمی کند.
- کارت توسط سیستم شناسایی شده ولی درایور آن بارگذاری نمی شود.
- تماسها قطع نمی شوند.
- شماره تماس گیرنده (CallerID) دریافت نمی شود.
- هنگام تماس از طریق کارت تلفنی صدا دارای اکو می باشد.
۱٫ سیستم کارت را شناسایی نمی کند.
در ترمینال لینوکس سیستم تلفنی، دستور lspci را اجرا کنید. اگر در نتایج، موردی همانند شکل زیر باشد بیانگر نصب درست کارت OpenVox از لحاظ سخت افزاری است.
در غیر این صورت کارت از لحاظ سخت افزاری به درستی نصب نشده است. بنابراین سیستم را خاموش کرده و از صحت نصب صحیح کارت تلفنی بر روی مادربورد اطمینان حاصل نمایید.یکی از تست های اولیه در صورت بروز این مشکل، نصب کارت بر روی یک Slot دیگر و اجرای دستور lspci است.
۲٫ کارت توسط سیستم شناسایی شده ولی بارگذاری نمی شود.(توسط Dahdi شناخته نشده است.)
در این مورد به عنوان گام نخست باید از صحت نصب و کارکرد dahdi اطمینان حاصل کنید. برای نحوه نصب می توانید به این پست و یا این لینک مراجعه کنید.
این نکته را در نظر بگیرید که درایور کارت نیز باید نصب شده باشد در غیر این صورت درایور کارت را نصب کنید. حال دستور lsdahdi را برای لیست کردن کانال های بارگذاری شده اجرا کنید؛ گفتنی است که در Elastix این درایور به صورت پیش فرض نصب شده اگر نتیجه فرمان فوق مشابه شکل زیر باشد سرویس dahdi درست راه اندازی شده است.
اما اگر هیچ نتیجه ای را برنگرداند این احتمال وجود دارد که سرویس dahdi به درستی راه اندازی نشده است.(مانند شکل زیر)
بنابراین برای راه اندازی سرویس dahdi و تنظیم خودکار کارت، دستورات زیر را به ترتیب تایپ و اجرا کنید:
dahdi_genconf #
dahdi_cfg -vvvv#
حال سرویس asterisk را دوباره راه اندازی کرده و مجدداً بررسی کنید. اگر بعد از مراحل فوق همچنان کانالهای dahdi در asterisk بارگذاری نشده باشند فایل chan_dahdi.conf را بررسی کنید.
این نکته را در نظر بگیرید که پارامتر [channels] در این فایل موجود باشد. (به شکل زیر دقت کنید.)
۳.تماسها قطع نمی شود.
در فایل chan_dahdi.conf که در مسیر زیر قرار دارد تغییرات زیر را اضافه گردد.
#nano /etc/asterisk/chan_dahdi.conf
busydetect=yes
busycount=3
اگر همچنان مشکل باقی بود و هنوز خطها قطع نمی شوند، دو حالت وجود خواهد داشت:
- busypattern متفاوت است : در این حالت باید مقدار busypattern را تغییر داد.
- gain دریافتی ضعیف است: در این حالت باید مقدار rxgain را بیشتر کرد.
این نکته نیز قابل ذکر است که در صورت وجود فکس، مقدار rxgain و txgain را به مقدار قابل توجهی تغییر ندهید زیرا احتمال بروز مشکل در دریافت و ارسال فکس بالا می رود.
۴٫ شماره تماس گیرنده(CALLERID) دریافت نمی شود.
یک گوشی تلفن معمولی به خط مورد نظر وصل کرده و بررسی کنید که CallerID چه موقع دریافت می شود.
- اگر قبل از زنگ اول باشد asterisk نمی تواند CallerID را بگیرد و باید با سرویس دهنده مخابراتی تماس بگیرید.
- در غیر اینصورت بسته به نوع CallerID که معمولا DTMF یا FSK هست باید در فایل chan_dahdi.conf مقدار پارامترهای زیر را تغییر دهید. پارامتر cidsignalling با توجه به نوع CallerID یکی از مقادیر زیر را می پذیرد. در نهایت سرویس asterisk را restart کنید.
۱- bell
2- v23
3- v23_jp
4- dtmf
5- smdi
5. صدا دارای اکو (پژواک) می باشد.
در فایل chan_dahdi.conf که در مسیر اشاره شده قرار دارد پارامترهای زیر را اضافه کنید.
#nano /etc/asterisk/chan_dahdi.conf
echocancel=yes
echotraining=800