SAP Business Technology Platform - SAP Integration SuiteでSlackにメッセージを投稿してみました(1) -

2022年7月25日

SAP Integration Suiteとは、SAP社が提供するSAP Business Technology Platformの機能のひとつで、SAPシステムを含む、様々なシステム間の統合を実現するツールです。今回は、SAP Integration SuiteとSlackを連携しました。その一連のプロセスをまとめてみました。ぜひご一読ください。

はじめに

SAP Integration Suiteとは

SAP Business Technology Platform(以下、SAP BTP)の機能のひとつで、SAPシステムを含む、様々なシステム間の統合を実現するツールです。

SAP Integration Suite(以下、Integration Suite)が提供する機能は複数ありますが、そのうちの3つについて紹介します。

  • Cloud Integration
  • Open Connectors
  • API Management

Cloud Integrationとは

Cloud Integrationは、クラウドおよびオンプレミスのアプリケーション間でのメッセージの処理、変換および転送用のコアランタイムを提供します。

IDocやSFTP、SOAP、OData など主要な連携方式については追加設定が不要で利用でき、それら以外のものについても Open Connectors や API Management を介して利用することが可能です。

Open Connectorsとは

Open Connectorsでは、今回検証で利用するSlackの他、160種類以上の接続ツールを提供しており、開発者は簡単にシステム統合を実現します。

API Managementとは

API Managementは、Cloud IntegrationやOpen ConnectorsなどSAP BTP上で利用するAPIを一元管理する機能です。セキュリティ機能もあるため、API利用時の安全性も向上します。

今回の検証内容

Integration SuiteのOpen ConnectorsとSlackを連携させます。その後、実際に連携できているか、Open Connectorsが提供しているAPIを用いてメッセージ投稿をすることで確認します。構成は下記の図の通りです。

GSL_Tech_Blog_10-1-1.png

0.事前作業

検証にあたり、事前にIntegration Suiteの環境のセットアップ。加えて、Slackでのアカウント登録を実施します。

先に記載した通り、Integration Suiteでは複数のサービスがありますが、今回は検証で利用する“Open Connectors”の機能が有効化されていれば問題ありません。

GSL_Tech_Blog_10-2.png

GSL_Tech_Blog_10-3.png

1.Open ConnectorsでSlack用のコネクタを作成

Open ConnectorsとSlackを連携させるためのコネクタを作成します。

Open Connectorsでは、クラウドアプリと連携するための様々なコネクタを提供しています。一覧の中からSlackを選択します。

GSL_Tech_Blog_10-4.png

2.コネクタの設定

下記の設定画面では、Open Connectorsと連携させるSlackのワークスペース名と実行できる権限を入力します。

権限についてはデフォルトで入力されているため、必要があれば追記します。

GSL_Tech_Blog_10-5.png

“Create Instance”ボタンを押すと、認証の許可画面に遷移します。連携させるWorkspace名が表示されていることを確認し、“許可する”ボタンをクリックします。

これで、Open ConnectorsとSlackの連携設定が完了です。

GSL_Tech_Blog_10-6.png

3.連携設定の確認

Connector Instanceの作成後、パネルが3つ表示されます。

その中から”Test in the API docs"を選択します。利用できるAPIの一覧が表示されるので、一覧の中からAPIで情報の取得と送信を実施し、実際にSlackと連携ができているか確認します。

確認では、指定したチャネルにメッセージが投稿できているかを確かめます。

GSL_Tech_Blog_10-7.png

  • チャネルのID取得
  • 表示された一覧の中から“GET:/channels”を選択し、実行します。このAPIを実行することで、Slackのチャネル情報の一覧が取得できます。実行結果の中から、任意のチャネルのチャネルIDを手元に控えます。

    GSL_Tech_Blog_10-8.png

  • メッセージの投稿
  • 今度は“POST:/channels/{channelId}/messages”でChannel IDで指定したチャネルにメッセージを投稿します。

    ParametersのChannel IDに「1.チャネルのID取得」で控えたChannel IDを入力し、Bodyのtext部分に投稿するメッセージを入力します。Bodyはデフォルトで入力されているので、text部分に記載されていた“String”を投稿したいメッセージに置き換えました。

    必要な値を入力後に、APIを実行します。

    GSL_Tech_Blog_10-9.png

  • 実行結果
  • 実際にSlackでメッセージが投稿されているか確認します。下記のように指定したチャネルに「2.メッセージの投稿」で指定したメッセージが投稿されていることが確認できました。

    GSL_Tech_Blog_10-10.png

おわりに

今回の検証ではIntegration SuiteのOpen Connectorsの機能を用いて、SAP BTPからSAPシステム以外の外部システムにAPIを利用した連携ができることを確認できました。

冒頭で述べたCloud IntegrationやAPI managementについてもSAP社がチュートリアルを紹介されているので、ぜひ試してみてください。

次回はIntegration SuiteのAPI Managementの機能を利用して、Slackから情報の取得とメッセージの投稿ができるかを確認していきたいと思います。

参考