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
Парсер expireddomains.net
5000 UAH
Нужен парсер expireddomains.net на сайте нужно сначала залогиниться, проблема в том что блокирует ИП при попытке парсить данные, нужно парсить тематические домены по списку ключевых слов, кто не уверен в своих силах не пишите PHP, Веб-программирование ∙ 1 день 22 часа назад ∙ 48 ставок |
Интеграция платежного сервиса с Sales Force
3104 UAH
На сайте стоит виджет платежной системы, его нужно интегрировать с asles fоrce что бы все требуемые параметры видели на стороне salec force Нужно сдлеать так, что бы все платежи и подписки кнтролировались через salecforec PHP, Веб-программирование ∙ 2 дня 2 часа назад ∙ 40 ставок |
Домофонные системы
4000 UAH
Ищем опытного программиста BAS (1С 8.3) для доработки самописной конфигурации под бизнес-процессы нашей компании. Что нужно: — Изучить текущую самописную конфигурацию BAS 8.3 — Доработать и настроить под наши процессы — Учет: клиенты, договоры, заявки, склад, оплаты, акты… PHP, Базы данных и SQL ∙ 5 дней 1 час назад ∙ 13 ставок |
Выгрузка товаров из 1С на prom.uaСоздать, настроить модуль выгрузки по API, товаров из 1С в кабинет и на сайт prom.ua, rozetka или другой маркетплейс на выбор, остатки, наименования, картинка из 1С, цены, автоматическая выгрузка, автоматическое обновление PHP, Базы данных и SQL ∙ 5 дней 17 часов назад ∙ 21 ставка |
Исправить проблему перевода WPMLНа сайте настроен перевод товаров через Advanced Editor. Перевод текстов в редакторе корректный, но при этом на сайте отображается некорректный текст. Если зайти в редактор страницы (на языке, на который переводим), там как раз этот текст и указан (в WordPress Editor).… PHP, Веб-программирование ∙ 6 дней 17 часов назад ∙ 37 ставок |