432 просмотров
от (2.8 тыс. баллов) в категории Тонкая настройка
редактировать от

Не работает голосовая почта.

MIKOPBX ver: 2021.3.77

Запись голосовой почты осуществляется, но! ее по факту нет. В журнале звонков запись отображается, но проиграть ее невозможно.

Я залез внутрь посмотрел папку - там пусто. Суда по всему это издержки настройки контекста:

[voicemailcontext]

admin => admin,user,admin@mycompany.com,,attach=yes|tz=local|delete=yes

delete=yes - говорит о том, что сообщения не сохраняются, а просто пересылаются.

Мне кажется - это не очень правильно. Копию записи все-таки нужно оставлять на сервере. Для прослушивания и разбора полетов.

кусок лога(в нем я, кстати, не вижу переименования в папку inbox и попытки отправки на почту):

res_agi.c: Launched AGI Script /usr/www/src/Core/Asterisk/agi-bin/clean_timeout.php

[2021-09-23 10:20:16] VERBOSE[13535][C-0000000e] res_agi.c: <PJSIP/201-0000000d>AGI Script /usr/www/src/Core/Asterisk/agi-bin/clean_timeout.php completed, returning 0

[2021-09-23 10:20:16] VERBOSE[13535][C-0000000e] pbx.c: Executing [voicemail@voice_mail_peer:6] Gosub("PJSIP/201-0000000d", "voicemail_start,voicemail,1") in new stack

[2021-09-23 10:20:16] VERBOSE[13535][C-0000000e] pbx_lua.c: Executing [voicemail@voicemail_start:1] UserEvent("PJSIP/201-0000000d", "CdrConnector,AgiData:eyJJU19PUkdOVCI6ZmFsc2UsIlVOSVFVRUlEIjoibWlrb3BieC0xNjMyMzgxNjE2LjE3XzFvN1IwMiIsImFjdGlvbiI6InZvaWNlbWFpbF9zdGFydCIsImFuc3dlciI6IjIwMjEtMDktMjMgMTA6MjA6MTYuMTA5IiwiZGlkIjoiIiwiZHN0X2NoYW4iOiJWT0lDRU1BSUwiLCJkc3RfbnVtIjoidm9pY2VtYWlsIiwiZnJvbV9hY2NvdW50IjoiMjAxIiwibGlua2VkaWQiOiJtaWtvcGJ4LTE2MzIzODE2MTYuMTciLCJzcmNfY2FsbF9pZCI6IjdmOTk2ZGZhLTE5OTEwMTg5QDE5Mi4xNjguMS4xNjAiLCJzcmNfY2hhbiI6IlBKU0lQLzIwMS0wMDAwMDAwZCIsInNyY19udW0iOiIyMDEiLCJzdGFydCI6IjIwMjEtMDktMjMgMTA6MjA6MTYuMTA5IiwidHJhbnNmZXIiOiIwIiwidmVyYm9zZV9jYWxsX2lkIjoiW0MtMDAwMDAwMGVdIn0=")

[2021-09-23 10:20:16] VERBOSE[13535][C-0000000e] pbx_lua.c: Executing [voicemail@voicemail_start:1] return("PJSIP/201-0000000d", "")

[2021-09-23 10:20:16] VERBOSE[13535][C-0000000e] pbx.c: Executing [voicemail@voice_mail_peer:7] VoiceMail("PJSIP/201-0000000d", "admin@voicemailcontext") in new stack

[2021-09-23 10:20:16] VERBOSE[13535][C-0000000e] file.c: <PJSIP/201-0000000d> Playing 'vm-intro.gsm' (language 'ru-ru')

[2021-09-23 10:20:22] VERBOSE[13535][C-0000000e] file.c: <PJSIP/201-0000000d> Playing 'beep.gsm' (language 'ru-ru')

[2021-09-23 10:20:22] VERBOSE[13535][C-0000000e] app_voicemail.c: Recording the message

[2021-09-23 10:20:22] VERBOSE[13535][C-0000000e] app.c: x=0, open writing:  /storage/usbdisk1/mikopbx/astspool/voicemail/voicemailcontext/admin/tmp/h2qHeA format: wav, 0x154514056f40

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] app.c: User hung up

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Spawn extension (voice_mail_peer, voicemail, 7) exited non-zero on 'PJSIP/201-0000000d'

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Executing [h@voice_mail_peer:1] Gosub("PJSIP/201-0000000d", "voicemail_end,h,1") in new stack

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx_lua.c: Executing [h@voicemail_end:1] UserEvent("PJSIP/201-0000000d", "CdrConnector,AgiData:eyJVTklRVUVJRCI6Im1pa29wYngtMTYzMjM4MTYxNi4xN18xbzdSMDIiLCJhY3Rpb24iOiJ2b2ljZW1haWxfZW5kIiwiYWdpX2NoYW5uZWwiOiJQSlNJUC8yMDEtMDAwMDAwMGQiLCJkaWFsc3RhdHVzIjoiQU5TV0VSRUQiLCJlbmQiOiIyMDIxLTA5LTIzIDEwOjIwOjI5LjI5MiIsImxpbmtlZGlkIjoibWlrb3BieC0xNjMyMzgxNjE2LjE3Iiwidm0tcmVjb3JkaW5nZmlsZSI6Ii9zdG9yYWdlL3VzYmRpc2sxL21pa29wYngvYXN0c3Bvb2wvdm9pY2VtYWlsL3ZvaWNlbWFpbGNvbnRleHQvYWRtaW4vSU5CT1gvbXNnMDAwMC5tcDMifQ==")

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx_lua.c: Executing [h@voicemail_end:1] return("PJSIP/201-0000000d", "")

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Executing [h@voice_mail_peer:2] Hangup("PJSIP/201-0000000d", "") in new stack

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Spawn extension (voice_mail_peer, h, 2) exited non-zero on 'PJSIP/201-0000000d'

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] app_stack.c: PJSIP/201-0000000d Internal Gosub(hangup_handler,s,1) start

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Executing [s@hangup_handler:1] NoOp("PJSIP/201-0000000d", "--- hangup - PJSIP/201-0000000d ---") in new stack

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Executing [s@hangup_handler:2] Gosub("PJSIP/201-0000000d", "hangup_chan,s,1") in new stack

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx_lua.c: Executing [s@hangup_chan:1] UserEvent("PJSIP/201-0000000d", "CdrConnector,AgiData:eyJPTERfTElOS0VESUQiOiJtaWtvcGJ4LTE2MzIzODE2MTYuMTciLCJVTklRVUVJRCI6Im1pa29wYngtMTYzMjM4MTYxNi4xN18xbzdSMDIiLCJhY3Rpb24iOiJoYW5ndXBfY2hhbiIsImFnaV9jaGFubmVsIjoiUEpTSVAvMjAxLTAwMDAwMDBkIiwiYWdpX3RocmVhZGlkIjoibWlrb3BieC0xNjMyMzgxNjE2LjE3X0oxMTQwcyIsImRpYWxzdGF0dXMiOiIiLCJkaWQiOiIiLCJlbmQiOiIyMDIxLTA5LTIzIDEwOjIwOjI5LjI5NiIsImxpbmtlZGlkIjoibWlrb3BieC0xNjMyMzgxNjE2LjE3In0=")

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx_lua.c: Executing [s@hangup_chan:1] return("PJSIP/201-0000000d", "")

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] pbx.c: Executing [s@hangup_handler:3] Return("PJSIP/201-0000000d", "") in new stack

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] app_stack.c: Spawn extension (voice_mail_peer, h, 2) exited non-zero on 'PJSIP/201-0000000d'

[2021-09-23 10:20:29] VERBOSE[13535][C-0000000e] app_stack.c: PJSIP/201-0000000d Internal Gosub(hangup_handler,s,1) complete GOSUB_RETVAL=

Не смотря на отключенные оповещения и отсутствие e-mail адреса в почта уведомление MikoPBX упорно и настойчиво отправляет уведомления:

system/message.log:

Sep 23 11:13:16 user.err msmtp:  host=smtp.gmail.com tls=on auth=off from= recipients=admin@mycompany.com smtpstatus=530 smtpmsg='530-5.7.0 Authentication Required. Learn more at\n530 5.7.0  https://support.google.com/mail/?p=WantAuthError s9sm508594ljp.34 - gsmtp' errormsg='envelope from address  not accepted by the server' exitcode=EX_DATAERR

У сотрудников e-mail не проставлены.

от (2.8 тыс. баллов)
редактировать от
В гитхабе я видел исправления по предыдущей версии, где говорили, что оповещения никогда не отправляются(https://github.com/mikopbx/Core/issues/111). Сейчас по всей видимости перегнули палку в другую сторону - всегда отправляются.
от (2.8 тыс. баллов)
Почитал: https://github.com/mikopbx/Core/issues/126

Правда в этом есть. Но до первых разборок. Были попытки извратить проблему, говоря что голосовая почта не приходила, или что сказали совсем другое. Были даже попытки диверсии с удалением письма с записью из почтового ящика, приходилось поднимать записи с сервера телефонии и письма с бекапов почты. Хорошо бы сделать переключатель - оставлять копию на сервере при отсылке.
от (2.8 тыс. баллов)
редактировать от
Продолжаем тест. Версия 2021.3.86

Оповещения отключены, админский емайл в почта и уведомления вычищен.

Звоним на голосовой ящик. Слышим приветсвие. В логах видим:

pbx.c: Executing [voicemail@voice_mail_peer:4] ExecIf("PJSIP/201-00000000", "0?ChannelRedirect(,voice_mail_peer,voicemail,2)") in new stack
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] pbx.c: Executing [voicemail@voice_mail_peer:5] AGI("PJSIP/201-00000000", "/usr/www/src/Core/Asterisk/agi-bin/clean_timeout.php") in new stack
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] res_agi.c: Launched AGI Script /usr/www/src/Core/Asterisk/agi-bin/clean_timeout.php
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] res_agi.c: <PJSIP/201-00000000>AGI Script /usr/www/src/Core/Asterisk/agi-bin/clean_timeout.php completed, returning 0
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] pbx.c: Executing [voicemail@voice_mail_peer:6] Gosub("PJSIP/201-00000000", "voicemail_start,voicemail,1") in new stack
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] pbx_lua.c: Executing [voicemail@voicemail_start:1] UserEvent("PJSIP/201-00000000", "CdrConnector,AgiData:eyJJU19PUkdOVCI6ZmFsc2UsIlVOSVFVRUlEIjoibWlrb3BieC0xNjMyNjYxMjc4LjBfODA3ejgxIiwiYWN0aW9uIjoidm9pY2VtYWlsX3N0YXJ0IiwiYW5zd2VyIjoiMjAyMS0wOS0yNiAxNjowMToxOC40MjkiLCJkaWQiOiIiLCJkc3RfY2hhbiI6IlZPSUNFTUFJTCIsImRzdF9udW0iOiJ2b2ljZW1haWwiLCJmcm9tX2FjY291bnQiOiIyMDEiLCJsaW5rZWRpZCI6Im1pa29wYngtMTYzMjY2MTI3OC4wIiwic3JjX2NhbGxfaWQiOiI0MjllNjljYi00ZDdlZTI0N0AxOTIuMTY4LjEuMTYwIiwic3JjX2NoYW4iOiJQSlNJUC8yMDEtMDAwMDAwMDAiLCJzcmNfbnVtIjoiMjAxIiwic3RhcnQiOiIyMDIxLTA5LTI2IDE2OjAxOjE4LjQyOSIsInRyYW5zZmVyIjoiMCIsInZlcmJvc2VfY2FsbF9pZCI6IltDLTAwMDAwMDAxXSJ9")
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] pbx_lua.c: Executing [voicemail@voicemail_start:1] return("PJSIP/201-00000000", "")
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] pbx.c: Executing [voicemail@voice_mail_peer:7] VoiceMail("PJSIP/201-00000000", "admin@voicemailcontext") in new stack
[2021-09-26 16:01:18] VERBOSE[2243][C-00000001] file.c: <PJSIP/201-00000000> Playing 'vm-intro.gsm' (language 'ru-ru')
[2021-09-26 16:01:24] VERBOSE[2243][C-00000001] file.c: <PJSIP/201-00000000> Playing 'beep.gsm' (language 'ru-ru')
[2021-09-26 16:01:24] VERBOSE[2243][C-00000001] app_voicemail.c: Recording the message
[2021-09-26 16:01:24] VERBOSE[2243][C-00000001] app.c: x=0, open writing:  /storage/usbdisk1/mikopbx/astspool/voicemail/voicemailcontext/admin/tmp/yiGbZf format: wav, 0xca9950
[2021-09-26 16:01:30] VERBOSE[2243][C-00000001] app.c: User hung up

Но в Истории звонков появляется только данные о записи. Самой записи нет. Идем с каталог INBOX. Там записи нет.

Смотрим файл system/messages там:

 user.err msmtp:  host=smtp.gmail.com tls=on auth=off from= recipients=admin@mycompany.com smtpstatus=530 smtpmsg='530-5.7.0 Authentication Required. Learn more at\n530 5.7.0  https://support.google.com/mail/?p=WantAuthError c15sm1299342lft.244 - gsmtp' errormsg='envelope from address  not accepted by the server' exitcode=EX_DATAERR
Проводим следующие настройки:

В файле voicemail.conf в контексте voicemailcontext удаляем delete=yes.

перезапускаем.

В итоге запись сохраняется и в CDR и в почтовом ящике. Приходится чистить INBOX.

У меня вопрос: Что происходит с голосовым ящиком? Как он должен по итогу работать?

Правильно ли я полагаю, что запись должна оставаться в CDR и стираться в INBOX? Но тогда получается она не остается ни там ни там при невозможности отправить письмо. Как быть?

1 Ответ

от (112 тыс. баллов)
  • Если smtp не настроен, система не должна пытаться отправлять email
  • Голосовая почта должна быть отправлена на email при корректных настройках smtp
  • Почта не должна сохраниться в INBOX
  • Почта должна сохраниться в истории звонков АТС (CDR), номер назначения будет указан "voicemail"
Проблему воспроизвел. Поправил. Теперь тестируем. 
от (2.8 тыс. баллов)
Спасибо. посмотрим, как будет возможность(iso, img будет выложен).

А вы не думали сделать что-то типа ночных сборок или jenkins запустить? Я думаю, скорость тестирования возросла. Ну, по крайней мере, основные компоненты можно было бы быстрее тестировать, и не боятся что они в релизе отвалятся.
от (112 тыс. баллов)
ночные сборки есть, просто они не публичные

публиковать промежуточные версии пока не было планов
от (2.8 тыс. баллов)
Понятно. Просто если бы была промежуточная версия - проблем с консолью точно можно было бы избежать.По практике обычно делают - одну-две предрелизные для общего пользования, потом релиз. Но дело выбора, конечно.

Ждем корректирующей сборки.
На этом сайте можно бесплатно задать вопрос разработчикам MikoPBX и другим членам сообщества. Время ответа не регламентированно, но мы стараемся несколько раз в день заглядывать сюда. Для срочного решения проблем обращайтесь на платную линию поддержки

Популярные теги

askozia входящие-вызовы настройка исходящие запись-разговоров провайдер маршрутизация ivr обновление входящие очередь исходящие-звонки провайдеры очередь-вызовов ошибка запись маршрут переадресация транк askozia7 askozia6 битрикс24 перевод mikopbx панель-телефонии-1с перевод-вызова callerid установка логи ростелеком история-звонков интеграция голосовая-почта факс модуль запись-разговора битрикс веб-интерфейс почта перехват-вызова nat настройка-провайдер релиз история gsm goip диалплан вызовы звонок внешние-номера docker pjsip нерабочее-время маршруты cdr журнал-звонков bitrix24 переадресация-мобильный zabbix ascozia телефонная-книга аон мобильный voicemail редактор asterisk sip лицензия панель web-интерфейс звонков провайдеров время лицензирование голосовая fax вызовов номер разговоров #mikopbx донабор beeline monitoring регистрация оповещения тишина smtp cisco мультифон мегафон не-работает группы-пользователей пропущенные-звонки askozia-5 распределение билайн настройка-исходящие-исходящих-вызов-вызовов ami железо

2.5 тыс. вопросов

2.2 тыс. ответов

6.1 тыс. комментариев

192 тыс. пользователей

...