Реализация приоритетной очереди в канале - PullRequest
1 голос
/ 10 декабря 2011

Я бы хотел, чтобы кто-то познакомился с Каннелем, чтобы просветить меня, пожалуйста.

В настоящее время у меня есть небольшой сайт, посвященный отправке и получению SMS. Я использую Kannel в качестве SMS-шлюза. Одна из функций, которая мне нравится в нем, - это приоритетная отправка SMS-сообщений на основе приоритетов.

Обходной путь, который придумали я и мой коллега, - это написать посредническую программу, в которую мы будем отправлять наши SMS-сообщения для отправки, она будет управлять своей собственной очередью и, в свою очередь, обрабатывать их в канале Priority мудрый.

Он будет хранить СМС в базе данных MySQL для сохранения и будет выполняться на PHP.

Я просто хочу быть уверен, что это хороший способ решить нашу проблему, и я хочу открыть ее, чтобы другие люди могли извлечь выгоду.

Большое спасибо.

Ответы [ 2 ]

2 голосов
/ 17 декабря 2011

Канал не поддерживает приоритет сообщений во внутренней очереди.

Однако вы можете использовать sqlbox addon (включен в выпуск Kannel 1.5.0 - см. Каталог " addons / sqlbox ").

В этом случае вы можете внести простые изменения следующим образом:

  1. Добавить поле "my_prio" в структуру таблицы.
  2. Изменить исходный запрос SQL для сортировки сообщений по этому полю (SELECT ... ORDER BY my_prio).
  3. Вставить сообщения MT с соответствующим значением этого поля "my_prio".

Все упомянутые изменения могут быть внесены в файл " addons / sqlbox / gw / sqlbox_mysql.h ".

0 голосов
/ 19 декабря 2011

Я разместил этот вопрос в списке рассылки Kannel-dev и узнал, что Kannel реализует базовое планирование приоритетов для исходящих SMS.Это было трудно найти, потому что мы все знаем, что понятное «Руководство пользователя» не является сильной стороной kannel.

Однако, если вы перейдете к Руководство пользователя Kannel и прочитаете под Раздел «Использование HTTP-интерфейса для отправки SMS-сообщений» , вы обнаружите, что можете установить необязательный параметр «приоритет» при отправке запроса GET в канал дляотправить SMS:

приоритет |номер |Необязательный.Устанавливает значение Приоритета (допустимый диапазон 0-3).(По умолчанию 0, что является самым низким приоритетом).

Я надеюсь, что это помогает, однако я пока не знаю, как это работает внутри, реализует ли оно устаревание, поэтому сообщения с низким приоритетом неголодать и т. д. Я поднял вопрос в списке рассылки, но ответа до сих пор нет, если у кого-то есть дополнительная информация по этому вопросу, пожалуйста, сообщите нам.

...