====== [vasexperts] Генерация индивидуальных шейперов ====== С версии 3.07.05 была добавлена возможность генерировать индивидуальные шейпера абонентов для BRAS vasexperts. Логика использования: - Указать индивидуальные шейпера у абонента - Сгенерировать policy файлы (консольная команда) - Применение policy на серверах BRAS vasexperts - При авторизации, radius передаст в **VasExperts-Policing-Profile** индивидуальный шейпер ===== Генерация policy файлов ===== \\ Для генерации policy файлов необходимо выполнить [[admin/additionally/console_commands|консольную команду]] **shaper_generate_vasexperts** \\ В разультате биллинг создаст **json** файлы в разделе **/tmp/bill/shaper/ckatdpi**, имена файлов **{IN_SPEED}_{OUT_SPEED}.json** ===== Применение policy на BRAS ===== \\ Для применения policy можно использовать скрипт, который считает данные из сгенерированных json файлов и запустит **fdpi_ctrl** на BRAS для создания policy. Скрипт использует пакет **sshpass** #!/bin/bash DPI_LOGIN="policy" DPI_PASS="strong_password" DPI_IP="192.168.0.1" DPI_PORT="2233" # директория шейперов SHAPER_DIR="/tmp/bill/shaper/ckatdpi" # для ssh подключения PROG_SSH=$(command -v ssh) PROG_SSHPASS=$(command -v sshpass) # что запустить для применения policy PROG_FDPI_CTRL="/usr/sbin/fdpi_ctrl load profile --policing" # считываем каждый файл шейпера for SHAPER_FILE in ${SHAPER_DIR}/*.json; do # название профиля из названия файла PROFILE_NAME=$(basename "${SHAPER_FILE}" .json) # получаем данные файла SHAPER_DATA=$(cat ${SHAPER_FILE}) # применяем policy на сервере BRAS через sshpass и ssh ${PROG_SSHPASS} -p "${DPI_PASS}" ${PROG_SSH} -p "${DPI_PORT}" "${DPI_LOGIN}@${DPI_IP}" "${PROG_FDPI_CTRL} --profile.name ${PROFILE_NAME} --profile.json '${SHAPER_DATA}'" done