Решение ошибки в Asterisk «File vm-newn does not exist in any format»

При звонке на номер голосовой почты заметил в консоли Asterisk следующие ошибки:

[Apr 10 17:08:01] WARNING[19135][C-00001cf4]: file.c:701 ast_openstream_full: File digits/1n does not exist in any format
[Apr 10 17:08:01] WARNING[19135][C-00001cf4]: file.c:1017 ast_streamfile: Unable to open digits/1n (format (ulaw)): No such file or directory
[Apr 10 17:08:01] WARNING[19135][C-00001cf4]: file.c:701 ast_openstream_full: File vm-newn does not exist in any format
[Apr 10 17:08:01] WARNING[19135][C-00001cf4]: file.c:1017 ast_streamfile: Unable to open vm-newn (format (ulaw)): No such file or directory

Ошибки возникают из-за отсутствия звуковых файлов, например в моем случае в голосовой почте одно сообщение и при попытке сказать «у вас одно(1n.ulaw) новое(vm-newn) сообщение возникает ошибка и ложится трубка.

Архив с набором нужных файлов достаточно просто загрузить с официального сайта http://downloads.asterisk.org/pub/telephony/sounds/releases/ и распаковать в директорию /usr/share/asterisk/sounds
После этого ошибки не должно быть.

Настройка голосовой почты в Asterisk

Для примера настрою голосовую почту для SIP номера 207.
Голосовые сообщения будут отправляться на email с помощью Postfix.
Как его установить я описывал в этой статье — Установка и настройка Postfix.

Для начала укажем в контексте SIP 207 (обычно в файле /etc/asterisk/sip.conf) следующее:

mailbox=207@voicemailcontext

Далее настроим конфигурацию голосовой почты в файле /etc/asterisk/voicemail.conf:

[general]
; формат звуковых файлов
format=wav49|gsm|wav
; от кого слать письма с уведомлениями
serveremail=noreply@example.com
; прикреплять ли к письму аудио файл
attach=yes
; максимальное количество сообщения (стандартно 100, максимум 9999)
maxmsg=100
; максимальное время сообщения в секундах
maxsecs=120
; максимальное время приветствия в секундах
maxgreet=60
; Количество секунд тишины до завершения записи
maxsilence=10
; порог чувствительности к тишине, чем ниже тем чувствительнее, значение от 0 до 256, стандартно 128
silencethreshold=128
; Максимальное число неудачных попыток подключения
maxlogins=3
; Автоматически перемещать прослушиваемые сообщения в папку «Old». По умолчанию включено.
moveheard=yes
; Кодировка сообщений, стандартная ISO-8859-1, с ней у меня часть текста отображалась неверно, поэтому лучше указать UTF-8
charset=UTF-8
; Пропустить строку «[PBX]:» из заголовка сообщения
pbxskip=yes
; Текст строки «От:»
fromstring=VoiceMail
; Тема письма
emailsubject=Новое голосовое сообщение ${VM_MSGNUM} в ящике ${VM_MAILBOX}
; Содержимое письма
emailbody=Уважаемый ${VM_NAME}:\n\n\tВам пришло новое голосовое сообщение длиной ${VM_DUR} под номером (number ${VM_MSGNUM})\nв ящик ${VM_MAILBOX} от ${VM_CALLERID}, в ${VM_DATE}. \n\t
; Формат даты
emaildateformat=%A, %d %B %Y в %H:%M:%S
pagerdateformat=%T %D
; стандартная программа для отправки почты
mailcmd=/usr/sbin/sendmail -t

[zonemessages]
ru=Europe/Moscow|'vm-received' q 'digits/at' H 'hours' M 'minutes'
ua=Europe/Kiev|'vm-received' q 'digits/at' H 'hours' M 'minutes'

; пропишем параметры контекста voicemailcontext, 1111 - пароль голосовой почты(можно не указывать), Username - имя пользователя, test@example.com - на какой адрес слать голосовые сообщения, после запятой можно указать еще один, в конце опции
[voicemailcontext]
207 => 1111,Username,test@example.com,,attach=yes|tz=ua|delete=yes

Кстати если не указать delete=yes, то при достижении лимита maxmsg, автоответчик будет говорить приветствие, а потом текст что голосовой ящик абонента переполнен и не сохранять сообщение, а также не отправлять на email. В этом случае нужно звонить на номер голосовой почты и удалять сообщения. Если указано delete=yes, то сообщения не сохраняются на сервере, не приходят в голосовой ящик, а только отправляются на email, в этом случае лимит maxmsg не действует и переполнение не возможно.

Теперь в конфигурации плана набора /etc/asterisk/extensions.conf в основной контекст добавим номер позвонив на который можно прослушать почту

exten => 500,1,Log(NOTICE, Dialing out from ${CALLERID(all)} to VoiceMail (500))
exten => 500,n,VoiceMailMain(0${CALLERID(num)}@voicemailcontext,s)
exten => 500,n, Hangup

И добавим в контекст набора номера 207 строку VoiceMail (после чего, если номер не отвечает или не в сети, будет срабатывать голосовая почта), например:

[207]
exten => 207,1,Dial(SIP/207,30)
exten => 207,n,Answer
exten => 207,n,VoiceMail(207@voicemailcontext)

Напоследок подключимся к консоли Asterisk, перезагрузим конфигурацию, посмотрим список голосовых ящиков и писем:

asterisk -rvv
sip reload
voicemail reload
dialplan reload
voicemail show users
exit

Записанные сообщения хранятся в директории /var/spool/asterisk/voicemail/
Звуковые файлы хранятся в /usr/share/asterisk/sounds

Смотрите также:
Отправка голосовой почты Asterisk на несколько email
Решение ошибки в Asterisk «File vm-newn does not exist in any format»
Как конвертировать звуковые файлы в ulaw, alaw, gsm, g722 и т.д.

Замена HDD на быстрый SSD в Apple MacBook Pro

На тесте заменю стандартный HDD Hitachi 500Gb на быстрый SSD Kingston 120Gb.
Снятый HDD в дальнейшем можно будет поставить вместо привода для дисков.

Читать далее «Замена HDD на быстрый SSD в Apple MacBook Pro»

Как посмотреть версию операционной системы на MacBook

Чтобы узнать версию операционной системы (MacOS) на MacBook необходимо сделать следующее:

1) В верхнем левом углу щелкнуть мышкой по логотипу компании Apple.

2) В открывшемся меню выбрать «Об этом компьютере» или «Об этом Mac».

В следующем открывшемся окошке отобразится версия операционной системы.

Как отменить загрузку приложения в App Store на MacBook

Сегодня в App Store на MacBook нажал на кнопку загрузки одного большого приложения, потом передумал, а кнопка отмены стандартно то не отображается, есть только пауза.

Чтобы отменить необходимо в App Store открыть вкладку «Покупки» и зажать на клавиатуре клавишу «Alt«, после этого напротив загружаемого приложения появится кнопка «Отмена» нажав на которую можно отменить загрузку.

Все.

Смотрите также видео:

Изоляция портов на коммутаторах Huawei

На тесте возьму коммутаторы Huawei Quidway S2326TP-EI и Huawei Quidway S3928P-EI, в которых uplink порт GigabitEthernet 0/0/1 (на него приходит интернет), все остальные порты находятся в одном VLAN и нужно запретить им видеть друг друга. Для этого выполним команду port-isolate enable для каждого интерфейса (порта), кроме uplink GigabitEthernet 0/0/1.

Подключимся к коммутатору через консоль или telnet и перейдем в режим повышенных привилегий:

system-view

Выполним команду для интерфейсов:

interface Ethernet 0/0/1
port-isolate enable
interface Ethernet 0/0/2
port-isolate enable
interface Ethernet 0/0/3
port-isolate enable
и т.д.
interface Ethernet 0/0/24
port-isolate enable
quit
interface GigabitEthernet 0/0/2
port-isolate enable

Для Huawei Quidway S3928P-EI будут другие команды:

interface Ethernet1/0/1
port isolate
interface Ethernet1/0/2
port isolate
...
interface GigabitEthernet 1/1/2
port isolate
interface GigabitEthernet 1/1/3
port isolate
interface GigabitEthernet 1/1/4
port isolate

Выйдем из режима настройки интерфейса:

quit

Выйдем из режима повышенных привилегий:

quit

Сохраним конфигурацию:

save

Теперь порты на которых прописана команда port-isolate enable не видят другие порты на которых тоже прописана эта команда, они видят только порты где она не прописана, то есть в нашем случае uplink порт GigabitEthernet 0/0/1, а он, так как на нем не прописана эта команда, видит все порты с командой и без.

Настройка коммутатора Huawei Quidway S2326TP-EI
Настройка Protected Ports на Cisco
Изоляция портов на коммутаторе ZyXEL

Решение проблемы SSL «Connection is not secure — Parts of this page are not secure (such as images)»

Заметил однажды одном сайте с подписанным SSL сертификатом, сообщение от браузера Mozilla Firefox:

Connection is not secure — Parts of this page are not secure (such as images)

Как выяснилось на сайте были вставлены картинки с других источников, соответственно соединение можно считать не защищенным и для решения этой проблемы, картинки нужно закачать на текущий сайт и изменить ссылка на страницах, обязательно начиная с https://.

Если сайт работает по http:// и https://, а картинки находятся на нем же, то ссылки нужно изменить например с:

<img src="http://www.ixnfo.com/img.jpg">

на

<img src="/img.jpg">

Все.

Установка Huawei iManager U2000 NMS в Windows Server

Опишу процедуру установки серверного программного обеспечения Huawei iManager U2000 NMS в Windows Server:

1) Запустим от имени администратора файла install.bat

2) Copyright. Читаем и соглашаемся с лицензионным соглашением выбрав «I accept the terms».
Читать далее «Установка Huawei iManager U2000 NMS в Windows Server»

Список онлайн сервисов для тестирования сайта

Приведу ниже несколько ссылок на популярные сервисы для тестирования сайтов.

Читать далее «Список онлайн сервисов для тестирования сайта»