FreePBX 14 Bulk Handler

freepbx bulk handler icon Экспорт / Импорт Extensions и DIDs в/из CSV.
Модуль Bulk Handler управляет массовым импортом / экспортом екстеншенов, маршрутов и пользователей при помощи csv фалов. Для настройки систем с множеством пользователей и продвинутой маршрутизацией, данный модуль незаменимый помощник, сильно облегчающий жизнь администратору системы.

FreePBX > Admin > Bulk Handler

Структура модуля Bulk Handler

  • Export
  • Import
    • Extensions
    • DIDs
    • User Manager Users
    • User Manager Groups

bulk handler defaults

Экспорт / Импорт Extensions

Предположим вы настраиваете новую систему и требуется создать множество Extensions с единообразными свойствами.

  1. Создайте екстеншен требуемой вам технологии и настройте его свойства под ваши нужды
  2. В модуле Bulk hanler выполните Export для Extensions
  3. Откройте полученный файл в редакторе (Open Office Calc или MS Excel)
  4. Добавьте нужное количество строк, с новыми номерами. Параметры: extension,name,id,dial,user,description - уникальны для каждого екстеншена.
  5. Для автогенерации паролей в поле secret задайте - REGEN.
  6. Остальные поля задайте, как у шаблонного екстеншена.
  7. Во вкладке Import выберите созданный файл и нажмите Submit

Если данные корректны появиться список номеров. Нажмите кнопку Import. Система начнет операцию записи в базу данных. В случае успешного добавления строки, она выделяется зеленым. В случае неудачи красным. Модуль немного капризней, чем Bulk Extensions во FreepBX 12.
Когда данные добавлены нажмите Finished и Apply config

freepbx-13-bulk-extensions

Также вы можете самостоятельно создать csv файл с минимумом требуемых полей:

extension,name,voicemail,id,tech,dial,devicetype,user,description,secret,findmefollow_voicemail,findmefollow_enabled,voicemail_enabled
500,Phone 500,novm,500,pjsip,PJSIP/500,fixed,200,ph 200,REGEN,novm,,
callwaiting = enabled/disabled
findmefollow_enabled = yes/<empty>

Экспорт / Импорт DIDs

Для DIDs никаких особенных отличий нет, приведем только пример файла csv с разными destinations:

  1. ring group
  2. extension
  3. ivr
  4. queue
  5. trunk
  6. time condition

соответственно:

cidnum,extension,destination,faxexten,faxemail,answer,wait,privacyman,alertinfo,ringing,mohclass,description,grppre,delay_answer,pricid,pmmaxretries,pmminlength,reversal,rvolume
,8121234561,"ext-group,230,1",,,,,0,,,default,a-1234561,,0,,,,,0
,8121234562,"from-did-direct,200,1",,,,,0,,,default,a-1234562,,0,,,,,0
,8121234563,"ivr-1,s,1",,,,,0,,,default,a-1234563,,0,,,,,0
,8121234564,"ext-queues,666,1",,,,,0,,,default,a-1234564,,0,,,,,0
,8121234565,"ext-trunk,1,1",,,,,0,,,default,a-1234565,,0,,,,,0
,8121234566,"timeconditions,2,1",,,,,0,,,default,E1-1234566,,0,,3,10,,0

Tips & Tricks

Большую часть параметров внутренних номеров, для быстрого доступа из диалплана, FreePBX хранит во внутренней БД asterisk /var/lib/asterisk/astdb.sqlite3.
Это наводит на мысль, что мы можем массово редактировать некоторые параметры при помощи sql запросов из командной строки sqlite3.

Пример: Параметр Call Waiting, включается для экстеншена любой технологии, добавлением в astdb строки вида:

 /CW/<number>|ENABLED

где, /CW/<number>, это key, а ENABLED - value:

sqlite> select * from astdb where key like '/CW%';
/CW/669|ENABLED
/CW/670|EBABLED

Таким образом, чтобы выключить Call Waiting для всех номеров, надо удалить все строки /CW/..

sqlite> delete from astdb where key like '/CW%';
Обратите внимание, что asterisk защищает от записи astdb, когда он запущен.

http://wiki.freepbx.org/display/FPG/Bulk+Handler+User+Guide

FreePBX

  • freepbx/bulk-handler.txt
  • Последние изменения: 2019/12/17