Logic Apps, un service Azure PaaS, était GA en juillet 2016. Cette fois, j'ai essayé de notifier Slack en utilisant uniquement les fonctions de base de Logic Apps.
Du côté sur site, raspbian est installé dans le Raspberry Pi 2 Model B qui reste de l'entreprise. Cette fois, j'utiliserai Python pour envoyer à Azure Service Bus.
Azure a Logic Apps et Service Bus pour échanger des messages.
Pour Logic Apps, vous pouvez sélectionner Twitter, Slack, etc. comme destination de notification aux réseaux sociaux, mais cette fois, j'ai choisi Slack.
Python est déjà installé dans rapbian et la commande pip pour ajouter divers modules est également incluse.Après cela, vous pouvez entrer la commande suivante pour préparer l'utilisation du SDK Azure.
$ sudo pip install azure
La commande ci-dessus installera et utilisera le SDK Azure pour Python.
Créez rapidement depuis l'écran du portail. Récemment, il est devenu disponible dans les régions du Japon oriental et du Japon occidental.
Ceci est également créé rapidement à partir de l'écran du portail. Étant donné que le plan tarifaire est à des fins de vérification, le basique le moins cher et la région ont été créés dans l'est du Japon.
Le nom de la file d'attente est pythontest, et les autres éléments sont à des fins de vérification, alors créez-les avec les valeurs par défaut.
Définissez les stratégies d'accès partagé pour la file d'attente créée. Accorde les autorisations d'envoi et de navigation de la file d'attente au nom de stratégie «utilisateur».
Notez le contenu du nom de la politique (utilisateur) et de la CLÉ PRIMAIRE des politiques d'accès partagé créées car elles seront intégrées dans le code côté Python. Le contenu de CONNECTION STRING-PRIMARY KEY est requis du côté Logic Apps, alors notez-les également.
Lorsque vous déployez et appuyez pour la première fois sur «Modifier» dans Logic Apps, le concepteur d'applications logiques s'ouvre, donc cette fois, sélectionnez «Vider l'application logique». Depuis que l'écran du concepteur s'ouvre, définissez d'abord le déclencheur pour la file d'attente Service Bus. Sélectionnez "Service Bus - Lorsqu'un message est reçu dans une file d'attente" et sélectionnez le nom de connexion approprié. Pour la chaîne de connexion, entrez la CHAÎNE DE CONNEXION du bus d'exercice créé précédemment, mais excluez le "Chemin d'entité" à la fin des éléments de cette CONNEXION COMMENCÉE. (Inclure uniquement Endpoint, ShareAccessKeyName, SharedAccessKey)
Ensuite, entrez le nom de la file d'attente créée dans Service Bus dans "Nom de la file d'attente" et définissez la fréquence et l'intervalle de manière appropriée.
Ajoutez ensuite une action. Cliquez sur "Ajouter une action" dans "+ Nouvelle étape".
Si vous sélectionnez Slack, il sera ajouté.
Après cela, lorsque vous vous connectez à Slack, vous pouvez saisir le nom de la chaîne à publier sur Slack et le message à publier. Cette fois, dans le champ TEXTE DU MESSAGE, nous utiliserons simplement le contenu envoyé par Service Bus depuis l'écran tel quel.
Enfin, n'oubliez pas de "sauvegarder".
Ceci est un exemple de programme côté envoi. Entrez le nom du Service Bus créé dans service_namespace. Pour share_access_key_name et shared_access_key_value, collez le contenu du nom de la stratégie et de la CLÉ PRIMAIRE que vous avez notés précédemment. Le premier argument de bus_service.send_event définit le nom de la file d'attente créée précédemment (test python).
sender.py
# -*- coding: utf-8 -*-
import json
from azure.servicebus import ServiceBusService, Message, Queue
if __name__ == '__main__':
bus_service = ServiceBusService(
service_namespace='ktkrqiitatest',
shared_access_key_name='user',
shared_access_key_value='XXXXXXXXXXXXXXXXXXXXXXXXXX')
msg = Message('Hello! World')
bus_service.send_event('pythontest', msg)
Maintenant, exécutons le script Python.
$ python sender.py
Confirmez qu'il a été exécuté normalement sur l'écran du portail.
J'ai également reçu un message de notification du BOT sur le canal #logicappstest de Slack!
Cette fois, j'ai essayé d'utiliser Azure Logic Apps avec un mécanisme très simple, mais le côté Azure était tout terminé avec uniquement des opérations d'interface utilisateur. Si vous souhaitez créer des branches ou des actions élaborées, vous devez modifier le code JSON directement, mais j'aimerais l'essayer à un autre moment.
Recommended Posts