Решилось без AMI.
Перед забором из парковки в плане нумерации работает скрипт AGI, который перенаправляет непосредственно в parcedcalls, в нем объявил наследованную переменную с меткой времени, наследованную переменную кто забирает с парковки, наследованную переменную с какого парковочного места забирают.
Прикрутил в диалплан контекст parcedcalls с extensions 'h' - он стал виден и заработал после окончания парковки. В нем скрипт AGI который забирает эту метку времени и по ней считает сколько длился разговор после парковки, ну и запись в журнал.
Да подключился, подключился я к AMI, посл еснятия с парковки почти ничего не показывает. Эта справка пожалуй на устаревшие версии, поскольку в 11 версии и модуля то такого res_features.so нету.
Получилось узнать номер парковочного места и засунуть в журнал событие о парковке на такое-то место. Теперь новый анекдот при снятии с парковки: контекст parcedcalls опять-таки встроен в ядро (хотя вот постановка на паркинг удалась в рукописном контексте, например в моем случае parked через Park), и чтобы сделать запись в журнал об обращении к парковочному месту нужно это делать в плане нумерации ДО перехода на extensions в parcedcalls. Непонятно теперь, как считать время разговора (да и вообще, удалось ли забрать с парковки, или это просто был набор парковочного номера) - из контекста практически ничего не забрать и не добавить.
Путь такой. Перед тем, как сделать Park() через AGI спрашиваем какой сейчас у нас ${CHANNEL}, потом, после Park() через SYSTEM спрашиваем ASTERISK
asterisk -x 'parkedcalls show'
будет таблица с номером парковочным, потом номер канала Астериска, который туда припаркован, потом еще что-то
и парсим выхлоп по ${CHANNEL}
Дмитрий Шицков, занести в журнал "вызов припаркован на номер 7XXX"
А потом мол "вызов забран с парковочного места 7XX" (с этим то проблем не вижу) , а то в целом такие финты паркинг-забрать уходят в темноту по журналу.
С АМI плохо знаком, только с AGI
Можно запустить хоть 10 виртуальных машин, и каждой в таком случае дать по 8 ядер. Но это просто будет означать, что каждая виртуальная машина будет пользоваться всеми ядрами реальной.
библиотека разработки libxml2 теперь является обязательной зависимостью для Asterisk - а то я раньше всегда при сборке конфигурировал перед сборкой без libxml2, что-то типа --disable-xmldoc
SetMusicOnHold:
- Приложение диалплана SetMusicOnHold устарело и было удалено. Пользователи приложения должны использовать вместо этого параметр musicclass функции CHANNEL.
WaitMusicOnHold:
- Приложение диалплана WaitMusicOnHold устарело и было удалено. Пользователи приложения должны использовать MusicOnHold с параметром продолжительности.
My_Second_Nickname, да да. У меня после цепочки обновлений с 1.6-1.8-10 (неудачно) - сразу 11 (удачно) проблемы навскидку были:
1. Много лишних модулей, из-за них не запускалось. Файл modules.conf то остается старый, наименование другое, много новых появляется.
2. Права на доступ/запуск файлов в каталогах, особенно опять-таки модулей.
А так заработало. В вашем случае проблем то особых не должно быть (12 с 13 не сильно то различаются). А исходники, из которых собирался 12 Астериск в папке /usr/src то остались? История bash осталась интересно или нет? По ней можно посмотреть с какими ключами собирался Астериск? Ну там еще
configure с какими ключами были.... Или запустить make menuconfig на старом и посмотреть модули какие там.
Как вы себе представляете засовывать строку в заголовок чужого сообщения, которое к вам пришло? Сделайте петлю внутри Астериска и звоните самому себе тогда и добавляйте любые заголовки.
При международной связи КПВ должен генерировать международный узел той страны, которая вызывающая сторона. Так что ваши мелодии вместо КПВ - не пройдут.
А я сначала с 1.6 перешел на 1.8, потом попытался на 10, но не получилось, и сразу на 11. Realtime Asterisk на PSQL. Но потребность была в TLS и SIP/SMS. Все завелось, только модули надо было выключить незадействованные.
Перед забором из парковки в плане нумерации работает скрипт AGI, который перенаправляет непосредственно в parcedcalls, в нем объявил наследованную переменную с меткой времени, наследованную переменную кто забирает с парковки, наследованную переменную с какого парковочного места забирают.
Прикрутил в диалплан контекст parcedcalls с extensions 'h' - он стал виден и заработал после окончания парковки. В нем скрипт AGI который забирает эту метку времени и по ней считает сколько длился разговор после парковки, ну и запись в журнал.