メインコンテンツまでスキップ

ステップの定義

ワークフローステップの作成には、Bolt が提供する WorkflowStep クラスを利用します。

ステップの callback_id と設定オブジェクトを指定して、WorkflowStep の新しいインスタンスを作成します。

設定オブジェクトは、editsaveexecute という 3 つのキーを持ちます。それぞれのキーは、単一のコールバック、またはコールバックのリストである必要があります。すべてのコールバックは、ワークフローステップのイベントに関する情報を保持する step オブジェクトにアクセスできます。

WorkflowStep のインスタンスを作成したら、それをapp.step() メソッドに渡します。これによって、アプリがワークフローステップのイベントをリッスンし、設定オブジェクトで指定されたコールバックを使ってそれに応答できるようになります。

また、デコレーターとして利用できる WorkflowStepBuilder クラスを使ってワークフローステップを定義することもできます。 詳細は、こちらのドキュメントのコード例などを参考にしてください。

指定可能な引数の一覧はモジュールドキュメントを参考にしてください(共通 / ステップ用

import os
from slack_bolt import App
from slack_bolt.workflows.step import WorkflowStep

# いつも通りBolt アプリを起動する
app = App(
token=os.environ.get("SLACK_BOT_TOKEN"),
signing_secret=os.environ.get("SLACK_SIGNING_SECRET")
)

def edit(ack, step, configure):
pass

def save(ack, view, update):
pass

def execute(step, complete, fail):
pass

# WorkflowStep の新しいインスタンスを作成する
ws = WorkflowStep(
callback_id="add_task",
edit=edit,
save=save,
execute=execute,
)
# ワークフローステップを渡してリスナーを設定する
app.step(ws)