PHP + Asterisk
Техническое задание
на разработку PHP модуля для Asterisk
- Краткое описание: необходимо разработать на PHP модуль, умеющий генерировать звонки на базе Asterisk по заданным значениям и критерям. Далее по тексту - Модуль
- Полное описание задачи:Требуемый функционал
В общем смысле, нужно написать такой модуль на php, который был бы способен:
- Считывать необходимые данные из БД MySQL - задания на звонки
- Распознавать критерии запуска заданий - номера телефонов, количество одновременных вызовов, служебные переменные (наименование контекста, callerid для исходящего вызова и др.)
- Отправлять в Asterisk в соответствии с критериями команды на звонки.
- Отслеживать выполнение звонков - потребуется регистрация следующих параметров (статистические данные):
- статус выполнения звонка (есть дозвон до абонента, сбросили, занято, не взяли трубку) по каждому из номеров
- длительность звонка
- Особенности реализацииПри реализации должны быть задействованы следующие системы и технологии:
- Языки программирования: php, при необходимости можно использовать какой-либо JS фреймворк (Node.JS например) (или иное, если обоснуете)
- БД: MySQL (либо другая, если обоснуете)
- Система телефонии: Asterisk
- Модули подключения к Asterisk (клиенты):
PAMI (http://marcelog.github.io/PAMI/index.html )
PAGI (http://marcelog.github.io/PAGI/index.html )
- Предполагаемый алгоритм реализации:
Словесно алгоритм можно изложить следующим образом:
- Пользователь загружает телефонные номера (через имеющийся интерфейс системы, его разрабатывать в рамках этого задания не нужно) в БД;
- Модуль проверяет появившуюся информацию по следующим флагам:Проведена проверка загрузки номеров Администратором - грубо говоря, в некой табличке должен быть выставлен соответствующий флаг, разрешающий звонки.
- Должна быть предусмотрена проверка еще от 2 до 5 условий (флагов), после выполнения которых начинается звонок.
- статус выполнения звонка (есть дозвон до абонента, сбросили, занято, не взяли трубку) по каждому из номеров
- временнЫе параметры звонка: длительность, момент начала набора номера, момент ответа на звонок, момент разрыва канала связи, момент ошибки звонка (сброс, занято, недоступен).
Дополнительные требования к Модулю:
- Модуль в местах совершения существенных операций должен содержать логирование в файл или БД.
- Модуль должен правильно учитывать выполнение звонка по конкретному номеру (записи в БД), чтобы не было повторных звонков.
- Модуль должен взаимодействовать с диалпланом Asterisk, сформированном в конфигурационных файлах (extensions.conf).
- Модуль также должен быть способен распознавать нажатия клавиш ответившим абонентом и совершать действия по соответствующему нажатию (соответствие номера выполняемому действию считывается из БД).
- Веб-интерфейса к Модулю на данном этапе не предполагается формировать, все разрабатываемые компоненты должны работать на Backend’е.
- Требования
- Качественные характеристики:
- осмысленные имена переменных, классов, методов, функций
- не должно быть перегрузки функций или классов по выполняемым задачам. Количество решаемых задач внутри одной функции не должно превышать 3-5.
- К существенным блокам кода должны быть даны комментарии.
- В ходе работы скорее всего потребуется дорабатывать как существующую БД системы, так и возможно создавать новую. При этом совместно с нами должна быть отрисована схема БД, прописаны поля, их свойства и назначения.
- Разработка должна вестись с помощью Git.
- Желательно использование ООП.
Актуальні фриланс-проєкти в категорії PHP
"Magento 2.4.6 додавання товару через атрибути»"Проблема: На сайті присутній великий вибір продуктів, які можуть продаватися разом з іншими продуктами. Потрібно додавати продукти через атрибут у конфігураційному продукті. Наприклад: Комп'ютерна миша доступна в різних кольорах, і до неї можна придбати килимок для миші (при… PHP, Веб-програмування ∙ 2 ставки |
Розробити скрипт під WordPress CMS + Google maps API + MySQLМи потребуємо код для веб-сайту на WordPress. Поточний (демо) веб-сайт https://e-ztrans.com/ базується на деякій саморобній CMS. Ми намагаємося перевизначити й зробити його надійнішим. Я надам доступ до панелі адміністратора поточного веб-сайту, а також вихідного коду поточної… PHP, Веб-програмування ∙ 2 ставки |
Додати розділ на сайт
3000 UAH
1. Додати розділ https://www.vitajuwel.us/sana на сайт https://vitajuwel.com.ua/ 2. Виправити центральний слайдер. Сайт на Laravel. Значення по пейджспіду не повинно зменшитися. PHP ∙ 3 ставки |
Калькулятор підрахунку вартості по м2 для сайту ролетівВсім привіт, мені треба зробити калькулятор підрахунку вартості товару по ширині та висоті Приклад розрахунку:Горизонтальні жалюзі 0.75 м2Тканині ролети 0.60 м2Москітні сітки 0.75 м2Римські штори 1 м2Японські штори 0.60 м2Захисні ролети 1.3 м2Вертикальні жалюзіЦіна від 1.6 м… Javascript, PHP ∙ 11 ставок |
Стилізувати Select option WordpressЗавдання стилізувати стандартний Select option на відповідні стилі. Проблема: при використанні заміни дропдауну на list через jquery: не працюють фільтри сортування товарів. Javascript, PHP ∙ 9 ставок |