Назначение

Автоматические звонки пользователям через Asterisk.

Функционал:

  • Подключается к Asterisk через AMI (Asterisk Manager Interface).

  • Получает список активных правил (rules_list) для текущей даты.

  • Для каждого правила:

    • Получает список пользователей, которым нужно совершить звонок.

    • Проверяет временные рамки правила (TIME_START и TIME_END).

    • Совершает звонок через Originate, используя аудиофайл (Playback).

    • Обновляет статус пользователя:

      • 1 (успешно), если звонок поставлен в очередь.

      • 2 (ошибка), если звонок не удался.

  • Фильтрует правила для текущей даты:

    • Проверяет диапазон дат (date_start и date_end).

    • Обрабатывает ежемесячные правила (EVERY_MONTH).

    • Сбрасывает статус пользователей на 0 (ожидание) при начале нового цикла.

  • Обновляет список пользователей для правил:

    • Удаляет старых пользователей (del_user).

    • Добавляет новых на основе SQL-запроса (add_users_by_rule).

    • Поддерживает ежедневное (update_day='*') и выборочное обновление (например, раз в месяц).


Запуск:

# Стандартный запуск для обработки правил звонков
/usr/abills/libexec/billd ring_cp DEBUG=2

# Обновление списка пользователей для правил
/usr/abills/libexec/billd ring_cp CMD=users DEBUG=3


Сценарии работы:

    • Подключается к Asterisk через AMI.

    • Для каждого активного правила (rules_list) вызывает пользователей (rule_users).

    • Совершает звонки (Originate), воспроизводя аудиофайлы (Playback).

    • Обновляет статусы пользователей (1 — успешно, 2 — ошибка).

    • Обновляет список пользователей для правил на основе SQL-запросов.

Описания параметров конфигурации (config.pl) или модуля Config

ПараметрПримерОписание
ASTERISK_AMI_IP192.168.1.100IP Asterisk AMI
ASTERISK_AMI_PORT5038Порт AMI
ASTERISK_AMI_USERNAMEadminЛогин AMI
ASTERISK_AMI_SECRETpasswordПароль AMI
ASTERISK_CALLERID107Caller ID
TPL_DIR/var/lib/asterisk/sounds/Путь к аудиофайлам

Дополнительная информация

  • ring_cp.pm: Для мобильных номеров (CELL_PHONE).

  • ring_p.pm: Для стационарных номеров (PHONE).

  • ring.pm: Базовая версия с настройками по умолчанию.

  • Нет меток