مجله ایرانیکاسرورآموزش سرور، هاست، وردپرس و شبکه
آموزشی

چرا Voicemail تلفن Cisco کار نمی‌کند؟ رفع مشکل MWI و Mailbox

اگر دکمه Voicemail تلفن Cisco را می‌زنید اما هیچ اتفاقی نمی‌افتد، شماره اشتباهی Dial می‌شود یا چراغ قرمز پیام با وجود داشتن Voicemail روشن نمی‌شود، ابتدا باید دو قابلیت جدا از هم را تفکیک…

چرا Voicemail تلفن Cisco کار نمی‌کند؟ رفع مشکل MWI و Mailbox
خلاصه سریع این آموزش

اگر دکمه Voicemail تلفن Cisco را می‌زنید اما هیچ اتفاقی نمی‌افتد، شماره اشتباهی Dial می‌شود یا چراغ قرمز پیام با وجود داشتن Voicemail روشن نمی‌شود، ابتدا باید دو قابلیت جدا…

۲۱ دقیقه مطالعه ۰ دیدگاه ۲۶ مهر ۱۴۰۵ آخرین به‌روزرسانی
اگر دکمه Voicemail تلفن Cisco را می‌زنید اما هیچ اتفاقی نمی‌افتد، شماره اشتباهی Dial می‌شود یا چراغ قرمز پیام با وجود داشتن Voicemail روشن نمی‌شود، ابتدا باید دو قابلیت جدا از هم را تفکیک کنید: دسترسی به صندوق صوتی و Message Waiting Indicator یا همان MWI.

در تلفن‌های Cisco با Firmware نوع MPP، دکمه Messages معمولاً با مقدار Voice Mail Number کار می‌کند؛ یعنی تلفن با فشردن دکمه، شماره یا URI صندوق صوتی را Dial می‌کند. اما چراغ قرمز روی گوشی، شمارنده پیام و وضعیت «پیام جدید دارید» از مسیر دیگری می‌آیند: تلفن یا PBX باید وضعیت Mailbox را با SIP و Event استاندارد message-summary هماهنگ کند.

به همین دلیل ممکن است دکمه Voicemail کاملاً کار کند ولی چراغ MWI روشن نشود؛ یا برعکس، چراغ پیام روشن باشد اما دکمه Messages شماره اشتباهی را بگیرد.

در این راهنما هر دو مسیر را جداگانه عیب‌یابی می‌کنیم: Voice Mail Number، Voice Mail Server، SUBSCRIBE، SIP NOTIFY، MWI و تنظیم Mailbox در Asterisk/PJSIP.

محدوده این آموزش: تمرکز اصلی روی Cisco IP Phoneهای 6800، 7800 و 8800 با Multiplatform Firmware یا MPP و یک SIP PBX مانند Asterisk است. اگر تلفن شما Enterprise Firmware و متصل به CUCM/Cisco Unity Connection است، منطق کلی MWI مشابه است اما مسیر تنظیمات مدیریتی متفاوت است و نباید فیلدهای MPP این مقاله را عیناً روی CUCM اعمال کنید.

فهرست مطالب

اول مشخص کنید دقیقاً کدام بخش Voicemail خراب است

عبارت «Voicemail کار نمی‌کند» می‌تواند چند مشکل کاملاً متفاوت باشد.

🔹 دکمه Messages را می‌زنید اما هیچ شماره‌ای Dial نمی‌شود.

🔹 دکمه Messages شماره اشتباه را Dial می‌کند.

🔹 وارد صندوق صوتی می‌شوید اما Mailbox اشتباه باز می‌شود.

🔹 پیام جدید دارید ولی چراغ قرمز MWI روشن نمی‌شود.

🔹 چراغ قرمز همیشه روشن مانده است.

🔹 شمارنده پیام روی نمایشگر با Mailbox واقعی یکی نیست.

🔹 تلفن SUBSCRIBE می‌فرستد ولی PBX آن را Reject می‌کند.

🔹 PBX NOTIFY می‌فرستد ولی Cisco وضعیت پیام را تغییر نمی‌دهد.

دکمه Voicemail و چراغ MWI یک قابلیت نیستند

این مهم‌ترین نکته مقاله است.

مسیر دکمه Messages:

Messages Button
      |
      v
Voice Mail Number
      |
      v
*97 / *98 / 8000 / SIP URI
      |
      v
Voicemail Application

اما مسیر چراغ MWI معمولاً چنین است:

Cisco Phone
      |
SUBSCRIBE
Event: message-summary
      |
      v
PBX / Voicemail Server
      |
NOTIFY
Messages-Waiting: yes
Voice-Message: 1/0
      |
      v
MWI LED ON

نشانه‌های MWI روی تلفن Cisco چیست؟

در Cisco MPP، وجود Voicemail جدید می‌تواند با چند علامت دیده شود:

🔹 چراغ Message Waiting Indicator روی گوشی به رنگ قرمز روشن می‌شود.

🔹 تعداد Voicemailهای جدید روی صفحه تلفن نمایش داده می‌شود.

🔹 در برخی تنظیمات هنگام برداشتن Handset، Stutter Dial Tone شنیده می‌شود.

اگر یکی از این موارد درست است ولی دیگری نیست، احتمالاً کل سیستم Voicemail خراب نیست و باید همان جزء خاص را بررسی کنید.

مرحله ۱: Voice Mail Number را بررسی کنید

در Cisco MPP وارد رابط مدیریتی تلفن شوید و مسیر:

Voice → Phone → General

را باز کنید.

فیلد:

Voice Mail Number

را پیدا کنید.

این همان شماره یا URI است که دکمه Voicemail باید Dial کند.

مثلاً اگر Asterisk برای ورود مستقیم کاربر به Mailbox از:

*97

استفاده می‌کند، مقدار Voice Mail Number نیز می‌تواند همین شماره باشد؛ البته فقط اگر Dialplan واقعی شما *97 را برای این کار تعریف کرده باشد.

نمونه Provisioning برای Voice Mail Number

Cisco امکان تنظیم آن از طریق فایل Provisioning را نیز می‌دهد:

<Voice_Mail_Number ua="na">*97</Voice_Mail_Number>

دکمه Messages کار نمی‌کند؛ تست ساده چیست؟

شماره‌ای که داخل Voice Mail Number نوشته‌اید را دستی Dial کنید.

اگر:

شماره دستی کار می‌کند ولی دکمه Messages نه

مشکل بیشتر سمت تنظیم Voice Mail Number یا Provisioning تلفن است.

اگر:

شماره دستی هم کار نمی‌کند

اول Dialplan و Voicemail Application روی PBX را بررسی کنید.

مرحله ۲: Mailbox واقعی را روی PBX بررسی کنید

قبل از عیب‌یابی MWI مطمئن شوید Mailbox اصلاً وجود دارد.

در Asterisk:

asterisk -rvvv

voicemail show users

باید Mailbox موردنظر را ببینید.

مثلاً Mailbox داخلی 1001 در Context پیش‌فرض معمولاً به شکل:

1001@default

شناخته می‌شود.

نمونه ساده voicemail.conf

[default]

1001 => CHANGE_TO_A_STRONG_PIN,User 1001,user1001@example.com

PIN نمونه را با مقدار امن جایگزین کنید.

Context را فراموش نکنید

Asterisk برای `app_voicemail` معمولاً Mailbox را به‌شکل:

mailbox@context

می‌شناسد.

پس:

mailboxes=1001

همیشه معادل:

mailboxes=1001@default

نیست.

برای MWI درست، Context را دقیق تنظیم کنید.

مرحله ۳: تنظیمات Voicemail همان Extension را روی Cisco بررسی کنید

در Web Interface تلفن:

Voice → Ext(n) → Call Feature Settings

را باز کنید.

چهار فیلد مهم داریم.

پارامتر کاربرد
Voice Mail Server آدرس یا هویت Voicemail Server برای این Extension
Voice Mail Subscribe Interval مدت اعتبار Subscription مربوط به Voicemail
Voice Mail Enable فعال‌کردن Subscription به Voicemail Server
Message Waiting فعال‌کردن نمایش وضعیت MWI روی تلفن

Voice Mail Server با Voice Mail Number فرق دارد

Voice Mail Number می‌گوید وقتی کاربر دکمه Messages را فشار داد چه شماره‌ای Dial شود.

Voice Mail Server بیشتر به مسیری مربوط است که Extension برای وضعیت Voicemail و Subscription استفاده می‌کند.

این دو را یکی در نظر نگیرید.

Voice Mail Subscribe Interval چیست؟

Cisco در راهنمای فعلی MPP برای این پارامتر محدوده:

0 تا 86400 ثانیه

را ذکر کرده و مقدار پیش‌فرض را:

86400

قرار داده است.

یعنی تلفن Subscription خود را قبل از پایان اعتبار تمدید می‌کند.

Interval را برای رفع مشکل روی عدد تصادفی نگذارید

اگر SUBSCRIBE اصلاً Reject می‌شود، کم‌کردن Interval مشکل Authentication یا Mailbox Mapping را حل نمی‌کند.

اول SIP Trace را ببینید.

مرحله ۴: SUBSCRIBE تلفن را ببینید

اگر MWI مبتنی بر Subscription است، Cisco باید Requestی شبیه این بفرستد:

SUBSCRIBE sip:1001@pbx.example.com SIP/2.0

Event: message-summary
Accept: application/simple-message-summary
Expires: 86400

مهم‌ترین خط:

Event: message-summary

است.

message-summary استاندارد MWI در SIP است

RFC 3842 این Event Package را برای Message Waiting و خلاصه وضعیت پیام‌ها تعریف کرده است.

پس اگر تلفن BLF یا Presence SUBSCRIBE می‌فرستد ولی هیچ `message-summary` ندارید، هنوز MWI Subscription درست شروع نشده است.

SUBSCRIBE سالم چه پاسخی می‌گیرد؟

معمولاً:

SUBSCRIBE
   |
   v
200 OK
   |
   v
NOTIFY

بعد از پذیرش Subscription، Server باید وضعیت فعلی Mailbox را با NOTIFY اعلام کند.

مرحله ۵: SIP NOTIFY را بررسی کنید

اگر Mailbox یک پیام جدید دارد، Body استاندارد می‌تواند چیزی شبیه این باشد:

NOTIFY sip:1001@phone-ip SIP/2.0

Event: message-summary
Content-Type: application/simple-message-summary

Messages-Waiting: yes
Message-Account: sip:1001@pbx.example.com
Voice-Message: 1/0

Voice-Message: 1/0 یعنی چه؟

در ساده‌ترین حالت:

1 = پیام جدید

0 = پیام قدیمی

است.

پس اگر Mailbox یک پیام خوانده‌نشده دارد، MWI باید روشن شود.

وقتی پیام‌ها خوانده یا حذف شدند

Server باید وضعیت جدید را ارسال کند.

مثلاً:

Messages-Waiting: no
Voice-Message: 0/1

یا بسته به وضعیت Mailbox:

Messages-Waiting: no
Voice-Message: 0/0

چراغ MWI همیشه روشن مانده است؛ چرا؟

اگر Phone آخرین وضعیت:

Messages-Waiting: yes

را دریافت کرده ولی بعد از خواندن پیام هیچ NOTIFY جدیدی با `Messages-Waiting: no` نرسیده باشد، چراغ می‌تواند روشن بماند.

در این حالت Reset کارخانه‌ای راه‌حل اول نیست.

اول ببینید PBX وضعیت Mailbox را درست تشخیص داده و NOTIFY جدید را واقعاً فرستاده است یا نه.

مرحله ۶: PJSIP Logger را روی Asterisk فعال کنید

asterisk -rvvv

pjsip set logger on

حالا:

۱. تلفن را Register کنید.

۲. منتظر SUBSCRIBE بمانید.

۳. یک Voicemail جدید برای داخلی بگذارید.

۴. NOTIFY را پیدا کنید.

۵. پیام را بخوانید یا حذف کنید.

۶. NOTIFY دوم را ببینید.

بعد از تست:

pjsip set logger off

ماژول‌های MWI روی Asterisk را بررسی کنید

Asterisk برای MWI روی PJSIP از Moduleهای مربوط استفاده می‌کند.

module show like res_pjsip_mwi

به‌خصوص وجود Moduleهای:

res_pjsip_mwi.so
res_pjsip_mwi_body_generator.so

را بررسی کنید.

مرحله ۷: MWI مبتنی بر SUBSCRIBE را در Asterisk درست تنظیم کنید

اگر Cisco خودش برای `message-summary` SUBSCRIBE می‌فرستد، Asterisk باید بداند این AoR به کدام Mailbox متصل است.

نمونه:

[1001]
type=aor
max_contacts=1
mailboxes=1001@default

این قسمت برای Deviceهایی است که خودشان MWI Subscription می‌سازند.

Endpoint نمونه

[1001]
type=endpoint
aors=1001
auth=1001-auth
context=internal
disallow=all
allow=ulaw,alaw

اشتباه مهم: mailboxes را هم‌زمان روی Endpoint و AoR نگذارید مگر دقیقاً می‌دانید چرا

Asterisk دو مدل MWI دارد.

مدل اول: Solicited MWI

Phone می‌گوید:

SUBSCRIBE
Event: message-summary

برای این مدل، `mailboxes` روی AoR اهمیت دارد.

مدل دوم: Unsolicited MWI

Asterisk بدون اینکه Phone Subscription خاصی بسازد، هنگام تغییر Mailbox برای Endpoint NOTIFY می‌فرستد.

در این مدل `mailboxes` می‌تواند روی Endpoint تعریف شود.

چرا تنظیم هر دو می‌تواند دردسرساز شود؟

مستند Asterisk یک حالت مشخص را توضیح می‌دهد که اگر Endpoint از قبل برای Unsolicited MWI روی یک Mailbox تنظیم شده باشد و AoR همان Mailbox را برای Subscription داشته باشد، Asterisk می‌تواند MWI SUBSCRIBE تلفن را رد کند.

بنابراین اول معماری خود را انتخاب کنید.

برای Cisco MPP کدام مدل را انتخاب کنیم؟

وقتی روی خود تلفن:

Voice Mail Enable = Yes

و Voicemail Server تنظیم شده است، بررسی MWI مبتنی بر SUBSCRIBE نقطه شروع طبیعی‌تری است.

پس ابتدا Cisco را وادار کنید یک SUBSCRIBE سالم بفرستد و Asterisk با 200 OK + NOTIFY پاسخ دهد.

اگر SUBSCRIBE با 404 پاسخ می‌گیرد

به احتمال زیاد Resource یا Mailbox موردنظر در Server پیدا نشده است.

بررسی کنید:

🔹 User داخل Request-URI درست است.

🔹 Mailbox روی AoR درست Map شده است.

🔹 Context صحیح است.

🔹 Extension و AoR اشتباه با هم جابه‌جا نشده‌اند.

اگر SUBSCRIBE با 403 پاسخ می‌گیرد

403 معمولاً نشان می‌دهد Request شناخته شده ولی اجازه Subscription داده نشده است.

در Asterisk بررسی کنید آیا همان Mailbox به‌صورت Unsolicited روی Endpoint تنظیم شده و Subscription دوباره در حال ایجاد است.

همچنین Authentication و Endpoint Matching را بررسی کنید.

اگر SUBSCRIBE با 489 Bad Event رد می‌شود

این پاسخ معمولاً به Event Package پشتیبانی‌نشده اشاره دارد.

اطمینان پیدا کنید:

Event: message-summary

است و Module MWI در PBX لود شده است.

اگر 200 OK می‌گیرید ولی NOTIFY نمی‌آید

این مرحله مشکل را بسیار محدود می‌کند.

SUBSCRIBE پذیرفته شده، اما PBX وضعیت Mailbox را ارسال نمی‌کند.

بررسی کنید:

🔹 Mailbox Mapping صحیح است.

🔹 `app_voicemail` Mailbox را می‌شناسد.

🔹 Module MWI لود است.

🔹 Mailbox واقعاً پیام جدید دارد.

مرحله ۸: یک تست واقعی End-to-End انجام دهید

بهترین تست این نیست که فقط چراغ را نگاه کنید.

یک Sequence کامل ثبت کنید.

مرحله ۱: Mailbox را خالی کنید.

مرحله ۲: Cisco را Register کنید.

مرحله ۳: SUBSCRIBE را ثبت کنید.

مرحله ۴: باید NOTIFY با:

Messages-Waiting: no

ببینید.

مرحله ۵: از یک داخلی دیگر تماس بگیرید و یک Voicemail جدید بگذارید.

مرحله ۶: PBX باید NOTIFY جدید با:

Messages-Waiting: yes
Voice-Message: 1/0

ارسال کند.

مرحله ۷: چراغ Cisco باید روشن شود.

مرحله ۸: پیام را گوش دهید یا حذف کنید.

مرحله ۹: باید NOTIFY دیگری با `Messages-Waiting: no` دریافت شود.

اگر PBX NOTIFY درست می‌فرستد ولی چراغ روشن نمی‌شود

حالا مشکل از Mailbox Server فاصله گرفته و به Phone نزدیک شده است.

بررسی کنید:

🔹 Event برابر `message-summary` است.

🔹 Content-Type صحیح است.

🔹 NOTIFY برای همان Extension ارسال می‌شود.

🔹 Message Waiting روی Cisco روی Yes است.

🔹 NOTIFY به IP و Contact فعلی تلفن می‌رسد.

Content-Type استاندارد چیست؟

برای RFC 3842:

Content-Type: application/simple-message-summary

اگر PBX پشت NAT است چه؟

ممکن است SUBSCRIBE از تلفن به PBX برسد ولی NOTIFY برگشتی به Contact اشتباه ارسال شود.

به‌خصوص اگر تلفن Remote باشد.

بررسی کنید:

🔹 Contact ثبت‌شده تلفن

🔹 Source IP و Port واقعی

🔹 NAT Rewrite در PJSIP

🔹 Firewall Session State

وضعیت Contact را روی Asterisk ببینید

pjsip show contacts

و:

pjsip show endpoint 1001

MWI روی چند Line چه می‌شود؟

اگر Cisco چند Line دارد، باید مطمئن شوید Mailbox مربوط به همان Extension درست Map شده است.

برای مثال:

Line 1 = 1001

Line 2 = 2001

اگر Line 2 به Mailbox 1001 Subscribe شود، شمارنده و چراغ می‌توانند با انتظار کاربر متفاوت باشند.

Voice Mail Server را برای همان Ext(n) بررسی کنید

تنظیم Global Voice Mail Number به‌تنهایی Mapping چند Extension را حل نمی‌کند.

برای هر Extension، Call Feature Settings را جدا بررسی کنید.

Voicemail PLK چیست؟

در Cisco MPP می‌توانید یک Line Key را نیز برای مانیتورینگ Voicemail یک User یا Group تنظیم کنید.

نمونه Syntax رسمی:

fnc=mwi;sub=group_vm@domain;vid=1;nme=Voicemail

این قابلیت برای Mailbox گروهی یا Shared Voicemail مفید است.

MWI + Speed Dial

Cisco همچنین امکان ترکیب MWI و Speed Dial را دارد.

یعنی یک Line Key:

🔹 وضعیت Mailbox را مانیتور کند.

🔹 با فشردن، شماره Voicemail را Dial کند.

اما ذخیره‌کردن PIN صندوق صوتی داخل رشته Speed Dial از نظر امنیتی انتخاب مناسبی نیست و Cisco نیز واردکردن PIN در چنین رشته‌ای را توصیه نمی‌کند.

اگر گزینه MWI روی PLK نمایش داده نمی‌شود

در راهنمای فعلی Cisco MPP یک Troubleshooting مشخص برای این حالت وجود دارد.

اگر هنگام تنظیم Line Key گزینه:

MWI

یا:

MWI + Speed Dial

را نمی‌بینید، بخش:

Voice → Att Console → Customizable PLK Options

را بررسی کنید و مطمئن شوید قابلیت‌های مربوط به MWI در فهرست گزینه‌های قابل انتخاب وجود دارند.

Firmware را چه زمانی بررسی کنیم؟

Firmware می‌تواند روی Voicemail اثر بگذارد، اما نباید اولین مظنون باشد.

در زمان نگارش، Cisco برای مدل‌های اصلی 7800/8800 MPP Firmware:

12.0(7)SR5

را به‌عنوان Maintenance Release منتشر کرده است.

یک Bug قدیمی Voicemail که ارزش دانستن دارد

Cisco در Releaseهای قبلی 12.0(7) یک Caveat با شناسه:

CSCwn74481

داشت که در آن ابتدای Audio از Voicemail Server روی MPP از دست می‌رفت.

این مشکل در SR2 در فهرست Resolved Caveats قرار گرفت.

بنابراین اگر مشکل شما فقط:

دکمه Messages، SUBSCRIBE یا MWI

است، این Bug را دلیل اصلی فرض نکنید؛ موضوع آن Audio Voicemail بوده است.

اگر بعد از Firmware Update مشکل شروع شد

قبل از Downgrade:

🔹 PRT تلفن را جمع‌آوری کنید.

🔹 SIP SUBSCRIBE/NOTIFY را Capture کنید.

🔹 Provisioning Config قبل و بعد را مقایسه کنید.

🔹 Release Notes و Caveatهای همان Build را بررسی کنید.

Downgrade بدون جمع‌آوری شواهد می‌تواند علت اصلی را پنهان کند.

تست با sngrep

اگر SIP روی UDP/TCP بدون TLS است، `sngrep` برای دیدن Flow MWI بسیار مفید است.

sudo sngrep -d any port 5060

در Flow دنبال:

SUBSCRIBE
NOTIFY
message-summary

بگردید.

Packet Capture برای MWI

sudo tcpdump -ni any \
host PHONE_IP \
and port 5060 \
-w /tmp/cisco-mwi.pcap

`PHONE_IP` را با IP واقعی تلفن جایگزین کنید.

اگر SIP TLS دارید

در PCAP محتوای SIP قابل خواندن نیست.

در این حالت:

🔹 PJSIP Logger روی PBX

🔹 PRT تلفن

🔹 Logهای SIP Proxy/SBC

مفیدتر هستند.

PRT تلفن Cisco در مشکل Voicemail چه کمکی می‌کند؟

اگر SIP Trace نشان می‌دهد PBX NOTIFY را فرستاده ولی Phone رفتار مورد انتظار ندارد، PRT می‌تواند برای بررسی Logهای داخلی تلفن مفید باشد.

هنگام ثبت PRT:

🔹 ساعت دقیق وقوع مشکل را بنویسید.

🔹 مشخص کنید Message LED روشن نشده یا دکمه Messages کار نکرده است.

🔹 Call-ID یا زمان SUBSCRIBE/NOTIFY را کنار PRT نگه دارید.

فرق Voice Mail Number با *97 و *98 چیست؟

*97 و *98 خودشان استاندارد جهانی Cisco نیستند.

این‌ها معمولاً Dial Codeهایی هستند که PBX تعریف می‌کند.

برای مثال در یک Dialplan ممکن است:

*97 = ورود مستقیم کاربر فعلی به Mailbox خودش

*98 = ورود عمومی و درخواست Mailbox Number

باشد.

اما باید Dialplan واقعی سیستم خودتان را بررسی کنید.

نمونه Dialplan برای دسترسی به Voicemail

exten => *97,1,NoOp(Direct Voicemail Access)
 same => n,VoiceMailMain(${CALLERID(num)}@default)
 same => n,Hangup()

exten => *98,1,NoOp(General Voicemail Access)
 same => n,VoiceMailMain()
 same => n,Hangup()

این مثال را با Context و Policy امنیتی PBX خودتان تطبیق دهید.

PIN صندوق صوتی را حذف نکنید

ممکن است برای راحتی بخواهید VoiceMailMain را طوری تنظیم کنید که PIN درخواست نکند.

در Asterisk گزینه‌هایی برای Skip کردن برخی Promptها وجود دارد، اما حذف Authentication Mailbox می‌تواند باعث دسترسی غیرمجاز به پیام‌های صوتی شود.

روی سیستمی که کاربران یا Endpointهای غیرقابل اعتماد به Dialplan دسترسی دارند، PIN را دور نزنید.

سناریوی ۱: دکمه Voicemail هیچ کاری نمی‌کند

نشانه: با فشردن Messages تماس ایجاد نمی‌شود.

بررسی: Voice Mail Number.

تست: همان شماره را دستی Dial کنید.

اگر دستی کار کرد: تنظیم Phone/Provisioning را اصلاح کنید.

اگر دستی کار نکرد: Dialplan و Voicemail Application را بررسی کنید.

سناریوی ۲: دکمه کار می‌کند ولی Mailbox اشتباه باز می‌شود

بررسی کنید:

🔹 Caller ID داخلی صحیح است.

🔹 *97 یا Short Code بر اساس داخلی فعلی کار می‌کند.

🔹 Multi-line Phone از Line درست تماس را ایجاد می‌کند.

🔹 Mailbox و Extension Number اشتباه Map نشده‌اند.

سناریوی ۳: پیام جدید داریم ولی چراغ قرمز روشن نمی‌شود

ترتیب تشخیص:

۱. آیا Phone SUBSCRIBE فرستاده؟

۲. آیا Event برابر message-summary است؟

۳. آیا PBX 200 OK داده؟

۴. آیا NOTIFY آمده؟

۵. آیا NOTIFY شامل `Messages-Waiting: yes` است؟

۶. آیا Message Waiting روی Phone فعال است؟

سناریوی ۴: چراغ همیشه روشن است

اول Mailbox واقعی را بررسی کنید.

اگر پیام جدید ندارید، Trace را ببینید.

آیا آخرین NOTIFY هنوز:

Messages-Waiting: yes

است؟

اگر بله، مشکل Server State است.

اگر PBX `no` فرستاده ولی Phone روشن مانده، سمت Device/Subscription را بررسی کنید.

سناریوی ۵: بعد از Reboot درست می‌شود و دوباره خراب می‌شود

این الگو می‌تواند نشان دهد:

🔹 Subscription در ابتدا ساخته می‌شود اما Renew شکست می‌خورد.

🔹 NAT Mapping بعد از مدتی از بین می‌رود.

🔹 Voice Mail Subscribe Interval با PBX سازگار نیست.

🔹 Provisioning بعداً تنظیمات را Override می‌کند.

Provisioning Override را جدی بگیرید

ممکن است تنظیم را در Web UI تغییر دهید و همه‌چیز درست شود، اما در Resync بعدی Provisioning Server مقدار قبلی را دوباره روی Phone بنویسد.

اگر تغییرات «خودبه‌خود برمی‌گردند»، فایل cfg.xml یا Template Provisioning را بررسی کنید.

سناریوی ۶: فقط یکی از چند Cisco مشکل دارد

یک Phone سالم و Phone خراب را مقایسه کنید.

این فیلدها را کنار هم بگذارید:

🔹 Firmware

🔹 Voice Mail Number

🔹 Voice Mail Server

🔹 Voice Mail Subscribe Interval

🔹 Voice Mail Enable

🔹 Message Waiting

🔹 SIP Account/User

بعد SUBSCRIBE دو Phone را Diff کنید.

سناریوی ۷: همه تلفن‌ها هم‌زمان MWI را از دست داده‌اند

در این حالت احتمال Device-specific کمتر است.

اول بررسی کنید:

🔹 Voicemail Server

🔹 Asterisk MWI Modules

🔹 SIP Proxy

🔹 Firewall

🔹 تغییر Config سراسری PBX

سناریوی ۸: MWI فقط روی Remote Phone خراب است

اگر تلفن داخل LAN درست کار می‌کند ولی Remote Phone نه، به NAT و Contact توجه کنید.

ممکن است REGISTER زنده باشد اما NOTIFY به Contact قابل دسترس ارسال نشود.

در این حالت Source IP، rport، Contact Rewrite و Firewall Timeout را بررسی کنید.

جدول عیب‌یابی سریع

نشانه اول کجا را بررسی کنیم؟
Messages چیزی Dial نمی‌کند Voice Mail Number
شماره اشتباه Dial می‌شود Voice Mail Number / Provisioning
Mailbox اشتباه باز می‌شود Caller ID / Dialplan / Mailbox Mapping
MWI خاموش است SUBSCRIBE → NOTIFY
MWI همیشه روشن است آخرین NOTIFY و Mailbox State
SUBSCRIBE با 404 Mailbox/AoR Mapping
SUBSCRIBE با 403 Subscription Policy / Endpoint-AoR MWI Config
SUBSCRIBE با 489 message-summary / MWI Module
200 OK بدون NOTIFY PBX Mailbox State / res_pjsip_mwi
بعد Reboot موقتاً درست است Subscription Renewal / NAT / Provisioning

روش استاندارد تشخیص در ۱۰ مرحله

مرحله ۱: Voice Mail Number را دستی Dial کنید.

مرحله ۲: وجود Mailbox را روی PBX تأیید کنید.

مرحله ۳: Voice Mail Server و Voice Mail Enable را بررسی کنید.

مرحله ۴: `pjsip set logger on` را فعال کنید.

مرحله ۵: SUBSCRIBE با Event `message-summary` را پیدا کنید.

مرحله ۶: Response به SUBSCRIBE را بررسی کنید.

مرحله ۷: NOTIFY اولیه را ببینید.

مرحله ۸: یک Voicemail واقعی ایجاد کنید.

مرحله ۹: تغییر `Messages-Waiting` و `Voice-Message` را بررسی کنید.

مرحله ۱۰: اگر SIP صحیح است ولی Phone رفتار غلط دارد، PRT و Firmware را بررسی کنید.

پرسش‌های رایج

چرا دکمه Voicemail تلفن Cisco کار نمی‌کند؟

در Cisco MPP ابتدا Voice Mail Number را بررسی کنید. این فیلد تعیین می‌کند دکمه Messages چه شماره یا URI را Dial کند. اگر همان شماره به‌صورت دستی هم کار نمی‌کند، مشکل در Dialplan یا Voicemail Server است.

Voice Mail Number و Voice Mail Server چه تفاوتی دارند؟

Voice Mail Number برای دسترسی کاربر به صندوق صوتی و Dial شدن با دکمه Messages است؛ Voice Mail Server به تنظیمات Extension برای سرویس و Subscription Voicemail مربوط می‌شود.

MWI در Cisco چیست؟

MWI یا Message Waiting Indicator وضعیت وجود پیام جدید را نشان می‌دهد و می‌تواند چراغ قرمز گوشی، شمارنده پیام و برخی اعلان‌های دیگر را فعال کند.

message-summary چیست؟

Event استاندارد SIP برای Message Waiting است که در RFC 3842 تعریف شده و تلفن معمولاً با SUBSCRIBE آن را درخواست می‌کند.

چرا چراغ Voicemail روشن نمی‌شود؟

بررسی کنید تلفن SUBSCRIBE با Event برابر message-summary ارسال می‌کند، PBX آن را می‌پذیرد و NOTIFY با `Messages-Waiting: yes` به تلفن می‌رسد.

چرا چراغ MWI بعد از حذف پیام خاموش نمی‌شود؟

باید پس از تغییر Mailbox یک NOTIFY جدید با `Messages-Waiting: no` دریافت شود. اگر این NOTIFY ارسال یا دریافت نشود، چراغ می‌تواند روی وضعیت قبلی بماند.

Voice Mail Subscribe Interval در Cisco چیست؟

مدت اعتبار Subscription Voicemail است. در راهنمای Cisco MPP مقدار پیش‌فرض 86400 ثانیه ذکر شده است.

در Asterisk mailboxes را روی Endpoint بگذاریم یا AoR؟

برای Deviceهایی که خودشان MWI SUBSCRIBE می‌فرستند، mailboxes روی AoR استفاده می‌شود. mailboxes روی Endpoint برای Unsolicited MWI است. تنظیم هم‌زمان نامناسب هر دو می‌تواند Subscription را دچار مشکل کند.

آیا Firmware می‌تواند باعث مشکل Voicemail شود؟

بله، ولی قبل از تغییر Firmware باید SIP Flow را بررسی کرد. Cisco در Releaseهای قبلی یک مشکل صوتی Voicemail با شناسه CSCwn74481 داشت که در SR2 رفع شد؛ این Bug مستقیماً معادل مشکل دکمه یا MWI نیست.

چرا MWI فقط روی تلفن Remote کار نمی‌کند؟

اگر تلفن داخل LAN سالم است، Contact ثبت‌شده، NAT، Firewall و مسیر برگشت NOTIFY را بررسی کنید.

برای عیب‌یابی MWI به Packet Capture نیاز داریم؟

اگر PJSIP Logger جواب را مشخص نکند، PCAP یا sngrep می‌تواند SUBSCRIBE، 200 OK و NOTIFY را نشان دهد. در SIP/TLS محتوای Packet رمزنگاری شده و Logهای PBX/Phone اهمیت بیشتری دارند.

جمع‌بندی

وقتی Voicemail روی تلفن Cisco کار نمی‌کند، ابتدا دکمه Messages را از MWI جدا کنید.

اگر دکمه Messages مشکل دارد، از Voice Mail Number و Dialplan شروع کنید.

اگر دکمه کار می‌کند ولی چراغ پیام مشکل دارد، از SUBSCRIBE → message-summary → NOTIFY شروع کنید.

روی Cisco MPP، Voice Mail Server، Voice Mail Subscribe Interval، Voice Mail Enable و Message Waiting باید برای همان Extension درست باشند. روی Asterisk نیز Mailbox باید با Context صحیح به MWI متصل شده باشد.

اگر Phone خودش MWI را Subscribe می‌کند، `mailboxes` روی AoR را بررسی کنید. اگر از Unsolicited MWI استفاده می‌کنید، Endpoint Configuration را جدا بررسی کنید و دو مدل را بی‌دلیل با هم مخلوط نکنید.

در یک سیستم سالم، روند قابل مشاهده است: تلفن SUBSCRIBE می‌فرستد، PBX آن را قبول می‌کند، NOTIFY وضعیت Mailbox را اعلام می‌کند و با اضافه یا حذف پیام، مقدار `Messages-Waiting` تغییر می‌کند.

این روش بسیار مطمئن‌تر از Factory Reset، تغییر تصادفی Firmware یا دستکاری چند تنظیم هم‌زمان است.

منابع و مستندات
تنظیمات Voicemail و MWI در Cisco MPP، استاندارد message-summary و رفتار Asterisk PJSIP تا ۱۸ اکتبر ۲۰۲۶ با منابع رسمی بررسی شده‌اند.
راهنمای فعلی Cisco MPP
مرجع جدید Cisco برای Message Waiting، Voicemail PLK، Voice Mail Server، Voice Mail Enable و گزینه‌های MWI تلفن‌های MPP
Voicemail Configuration
مرجع Voice Mail Number، Voice Mail Server، Voice Mail Subscribe Interval، Voice Mail Enable و Message Waiting
استاندارد MWI
مرجع استاندارد Event نوع message-summary، SUBSCRIBE/NOTIFY، Messages-Waiting و Voice-Message
Asterisk MWI
مرجع MWI در Asterisk، Mailbox State و دریافت یا ارسال Notificationهای Message Waiting
PJSIP Troubleshooting
مرجع res_pjsip_mwi، تنظیم mailboxes روی AoR، تفاوت Solicited/Unsolicited MWI و علت ردشدن برخی MWI Subscriptionها
Asterisk PJSIP
مرجع رسمی گزینه mailboxes روی Endpoint و AoR و incoming_mwi_mailbox در PJSIP
Firmware فعلی
مرجع نسخه Maintenance فعلی شاخه MPP در زمان نگارش مقاله
Caveat Voicemail
مرجع رفع Caveat با شناسه CSCwn74481 مربوط به از دست رفتن ابتدای Audio از Voicemail Server؛ برای تفکیک Bug صوتی از مشکل MWI
پیشنهاد زیرساخت ایرانیکاسرور برای VoIP و Cisco

MWI روی تلفن‌های Remote قطع می‌شود؟ PBX را روی IP ثابت و مسیر SIP قابل‌کنترل نگه دارید

وقتی Cisco MPP، Asterisk و کاربران Remote دارید، چراغ MWI فقط به Mailbox وابسته نیست؛ SUBSCRIBE و NOTIFY باید بتوانند در تمام مدت Registration از NAT و Firewall عبور کنند. تغییر Public IP، Contact اشتباه یا Timeoutهای شبکه می‌توانند باعث شوند تماس عادی کار کند اما اعلان Voicemail به تلفن نرسد.

برای راه‌اندازی مرکز تلفن سازمانی می‌توانید Asterisk، FreePBX یا SIP Proxy خود را روی سرور مجازی ایرانیکاسرور با IP ثابت اجرا کنید و قبل از ورود کاربران واقعی، REGISTER، SUBSCRIBE، NOTIFY، MWI و تماس‌های ورودی/خروجی را با Trace واقعی تست کنید.

مشاوره Cisco MPP، Asterisk و SIP: 021-91302467

اشتراک‌گذاری مقاله
گفت‌وگو درباره آموزش

دیدگاه‌ها (۰)

هنوز دیدگاهی ثبت نشده است.

دیدگاه یا سؤال خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *