EngineIT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。Slackで自動返信の投稿をするボットをPythonで作る手順(ngrokでローカルPCをサーバーに見立てて)全体像としては次のような感じで、Slackアプリがクライアント相当の位置づけで、指定のアドレス(例:http://a05f-106-131-76-39.ngrok.io)に対してPOSTリクエストを送ります。ngrokでこのリクエストを検知し、ローカルのアドレス(例:http://localhost:5000)に対してリクエストを転送します。その転送されたリクエストをFlaskで捌いて、レスポンス(応答)として投稿や画面などを返却します。STEP3:「ngrok」のインストール「ngrok」は「パブリックなIPアドレスやドメイン」を「ローカルのWebサーバ」にルーティングできるツールです。これをインストールする事で、ご自身のローカル端末をWebサーバ代わりにする事が出来ます。STEP4:Python環境にflaskをインストールFlaskは軽量のマイクロWebサービスで、Webサーバの用途で使います。・1コマンドプロンプト等で以下のコマンドを実行し、flaskをインストールします。flask(図1211)・2Flask実行用のPythonコードを追記します。World」が描画されます。STEP5:Slackでイベント発行&受取りの準備Slackの「イベント」は例えば、誰かがチャンネルに投稿したり、誰かがメンションされたり、誰かがチャンネルに参加したり、そういったSlackで起きる各種の出来事が「イベント」です。今回は作ったアプリが特定の「イベント」をWebサーバ(今回はngrok+Flask)で検知できるように設定します。・1「slackeventsapi」モジュールのインストールPython側でSlackのイベントを受け取るモジュールである「slackeventsapi」をインストールします。Secret」のキーの値を取得します。Secretの値を使い、Python側でイベントを処理するためのSlackEventAdapterインスタンスを生成するコード等を追加。World”が投稿されます。・5次のコマンドでグローバルアドレスを取得。Flaskのポート番号はデフォルト「5000」です。・6「Forwarding」の列にグローバルIPアドレスが表示されるので、そちらを控えます(次で使います)。意味合いとしては「グローバルアドレス:https://d112-49-106-215-201.ngrok.io」を「ローカルホストのアドレス:http://localhost:5000」にマッピングしてくれています。Subscription」設定。URL」という設定があります。これは、検知対象のイベントが発生した時に、指定したURLに対してHTTPプロトコルの「POST」リクエストを送ります。・このURLを、ご自身でPython等から作成したAPIに指定する事で、イベント発生時にご自身でプログラミングした処理を実行させる事ができます。URL」にイベント発行先URLを指定します。STEP7:疎通テスト試しに、ボットを入れたどこかのチャンネルで投稿をすると、ボットが反応してオウム返し(同じ内容を返信)してくれる事を確認します。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。EngineIT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。Reserved.Top。