1.Logic Apps とは
簡単に Logic Apps について説明します。
Logic Apps は、Microsoft Azure の PaaS サービスでアプリケーションをホストする App Service のサブ機能の位置づけのサービスです。
特徴としては、プログラミングなしで手軽に複数のサービスを相互にコネクションすることができます。
すでに、接続用に準備されたコネクタは現時点で約160種類あります。
https://docs.microsoft.com/ja-jp/azure/connectors/apis-list
今回は、RSS を使って Azure Update の記事が更新されたことを検知し、それをトリガに記事の概要を日本語に翻訳し、Slack に通知するサービスをプログラミングなしで作成しようと思います。
ちなみに、
私は試したことがないのですが、オンプレミスの環境に Gateway をインストールすることで、Azure とオンプレミス環境を接続することもできようです。
https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-gateway-install
詳しいことは、Logic Apps のドキュメントをご覧ください。
https://docs.microsoft.com/ja-jp/azure/logic-apps/
また、Office 365 にも Flow という Logic Apps と似たようなサービスがあります。
Flow と Logic Apps の違いにつきましては、以下のドキュメントをご覧いただくといいと思います。
https://docs.microsoft.com/ja-jp/azure/azure-functions/functions-compare-logic-apps-ms-flow-webjobs
2.早速作ってみた
前述のとおり、Azure Update で記事が更新されたら、概要を日本語に変換して Slack に飛ばしたいと思います。
ちなみに、日本語翻訳しないのであれば、Slack の RSSのアプリを使った方が簡単に作成できると思います。
が、今回は翻訳入れますw
まずは、Logic Apps を作りましょう。
こんな感じでぽちぽちとします。
Logic Apps は、App Service に含まれていますが、今は、従量課金のサービスとなります。
料金については、Logic Apps の価格表のページ(https://azure.microsoft.com/ja-jp/pricing/details/logic-apps/
)をご覧ください。
ちなみに、以前は従量課金から App Service Plan に変更することができましたが、今はできないみたいです。
続いて、Logic Apps の処理をデザイナーを使って作成します。
完成形はこんな感じです。
やっていることをざっくり書くとこんな感じです。
1.RSSコネクタで1時間に1回の周期で「
2.Microsoft Translator コネクタで、RSSの概要を日本語に変換
3.Slack コネクタで、RSS や Microsoft Translator で取得した情報を Slack に Post
ではこんな感じで、Feed を受け取る URL を指定します。
動かした結果はこんな感じです。
・タイトル
・リンクのURL
・概要の翻訳
ネタとしては面白くないですが、とっても簡単なことが伝わってるといい感じです。
3.最後に
Logic Apps は、コードを書くことなく簡単に様々なサービスをつなぎ合わせることができるのが、とても面白いと思います。
また、アクションには、Azure Functions なども利用できますので、ちょっとしたロジックを呼び出すこともできます。
イメージとしては、ちょっとした小さめのジョブネットが作れるような感じですかね。
また、Azure Event Grid と組み合わせることで、Azure のリソースの変化をトリガーにすることができるので、例えば、仮想マシンを作成したというのを受け取って、次の処理を実行するってこともできます。
今回は紹介しませんでしたが、Logic Apps では、統合アカウントというのを利用することによって B2B な接続もできるみたいです。
https://docs.microsoft.com/ja-jp/azure/logic-apps/logic-apps-enterprise-integration-b2b
簡単にできるのに、意外と色んな事ができるので、是非皆さんもお試しください!!
あと、セミナーをやりたいっていう企業様おりましたら、以下からお問合せくださーい。(宣伝でおわる。。)