2016-11-24 3 views
0

Сценарий:Отправка толчок уведомления на Android на основе триггера в лазури

Мы мигрирующие наш бэкенд к Azure, как часть распайки, и мы должны разработать толчок уведомление на Android приложения (т.е. мы также развиваемся с нуля). В принципе, у нас есть электронный датчик, который собирает данные из среды и отправляет (через сокет, на данный момент) вызов нашего бэкэнд, который хранит эти данные в базе данных mysql.

Тот же бэкэнд также отвечает за прием вызовов в приложение Android (также через сокет, на данный момент). Затем приложение отображает информацию на экране (среди других функций).

Проблема:

Когда бэкенд получает конкретные данные от датчика (уставки будет храниться в базе данных через пользовательский ввод в приложении), мы хотели бы отправить уведомление толчок к Приложение для Android. Мы полагаем, что это может быть достигнуто в Azure с использованием триггеров и концентратора push-уведомлений. Часть, которую мы не можем понять, заключается в том, как/где запускать это событие push. Во-первых, мы думали, что триггер таймера будет решением. Кажется, что он заботится о работе, но не настолько эффективен, и мы не знаем, возможно ли (или любое другое) сделать запрос к db в этой триггерной функции. Затем мы решили реализовать триггер, когда ввод данных выполняется в базе данных, что кажется лучшим решением.

Вопрос:

Является ли это правильный подход, чтобы сделать это? Это достижимо? Мы новичок в платформе Azure.

ответ

1

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

Для того, чтобы использовать концентраторы уведомлений на Java, вы можете обратиться к here. Кроме того, в Azure есть другие языки SDK и Rest API, здесь я предполагаю, что ваш бэкэнд находится на платформе Java.

Для получения дополнительной информации о концентраторах уведомлений Azure вы можете обратиться к https://docs.microsoft.com/en-us/azure/notification-hubs/notification-hubs-push-notification-overview.

Если у вас есть вопросы, пожалуйста, сообщите мне.

+0

Спасибо за ответ. Мой бэкэнд разделен на две части: одна, которая отвечает за связь с концом сенсоров, разработанная в Mono; второй, разработанный на Java, который общается с Android-приложением.Оба имеют одну и ту же базу данных. Я разработал простое указание, в котором мы использовали бэкэнд C#, который использовал Notification Hub для отправки push в приложение для Android. Но теперь мне хотелось бы, чтобы этот толчок вызвал событие. Вот почему использование триггеров показалось хорошим. –

1

Посмотрите на Azure Functions.

Данное предложение состоит в том, чтобы отправить push-уведомление в концентратор событий, который запускает функцию Azure, которая выполняет push.

Azure Функции в основном безсерверный код, который работает по расписанию или что-то срабатывает. Триггер может сохранять blob (файл) или реагировать на сообщение в концентраторе событий, с которым очень легко начать работу. Вы также можете запускать код, настроив WebHook, если хотите.

Функции написаны на C# или JavaScript, и красота в том, что вам в принципе даже не нужно писать приложение. Код компилируется и запускается там &, тогда - входы и выходы в функцию также очень легки в настройке.

+0

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