# Workbot for Slack の Block kit
Block Kit (opens new window) は Slack の UI フレームワークです。これを使用すると、Slack 向けのメッセージを作成する際の管理性と柔軟性が高まります。
ユーザーは「ブロック」を積み重ねたり、各ブロックの順番や外観、および各ブロック内の要素をカスタマイズしたりできます。以下の表にブロックの種類と、それに対応するアクションを示します。
ブロックは、以下の Slack サーフェスで使用できます。
サーフェス | 対応するアクション |
---|---|
メッセージ | Post message、Post command reply |
モーダル | モーダルのオープン/更新またはプッシュ |
アプリホーム | アプリホームビューの公開 |
# メッセージの Attachment との互換性
これまで、Post message と Post command reply はメッセージの Attachments を使用してメッセージを構築していましたが、ブロックもメッセージの Attachments と一緒に使用できるようになりました。
任意で2番目の Attachments を指定し、定義したブロックの下に表示させることもできます。
# メッセージの Attachments と併用した場合のブロックの動作
ブロックとメッセージの Attachments の両方が定義されている場合、ブロックは常に、メッセージの Attachments の上に表示されます。
ブロックが1つでも定義されている場合は、 [Message text] フィールドの入力データが Slack の通知メッセージとして使用されます。
# サポートされているブロック
以下の表に、サポートされているブロックを示します。
ブロック | 説明 |
---|---|
テキストを含むセクション | テキストを表示します。 |
画像を含むセクション | テキストと併せて画像サムネイルを表示します。 |
ボタンを含むセクション | テキストと併せてボタンを表示します。 ボタンの送信時、ボタンは別のレシピを呼び出し、そのボタンが持つコマンド入力値を渡します。 |
フィールドを含むセクション | セクションのテキストを表示し、その下にタイトルと値からなるフィールドの配列を2列で表示します。フィールドの最大数は10です。各フィールドのテキストの最大長は2000文字です。 |
選択メニューを含むセクション | テキストと併せて選択メニューを表示します。ユーザーの選択、会話の選択、チャンネルの選択といった、Slack の組み込みの動的メニューをサポートします。カスタマイズした独自の動的メニューを定義することもできます。 送信時、メニューオプションは別のレシピを呼び出し、そのオプションが持つコマンド入力値を渡します。 |
オーバーフローメニューを含むセクション | テキストと併せてオーバーフローメニューを表示します。静的なオーバーフローメニューや動的に生成されるオバーフローメニューをサポートします。 送信時、オーバーフローメニューのオプションは別のレシピを呼び出し、そのオプションが持つコマンド入力値を渡します。 |
日付選択のカレンダーを含むセクション | テキストと併せて日付選択のカレンダーを表示します。 日付の選択時、日付選択のカレンダーは別のレシピを呼び出し、日付パラメータを通して、選択された日付を渡します。この日付パラメータの名前はカスタマイズできます。 必要に応じて、追加のコマンド入力値を日付パラメータとともに渡すこともできます。 |
リピートブロックグループ | これは特殊なブロックタイプであり、Workato bot プラットフォームでのみ利用可能です。リピートブロックグループを使うと、パターンとして使用する一連のブロックを定義できます。既存のリストを反復処理し、そのリストの項目をパターン内のブロックのフィールドにマッピングすることで、リピートブロックを動的に生成できます。 |
区切り線 | のようなコンテンツの区切り線です。メッセージ内のさまざまなブロックの分割に使用されます。 |
画像 | 指定された公開 URL を使用して画像を表示します。 |
アクション | ボタン、オーバーフローメニュー、選択メニュー、日付選択のカレンダーといった、さまざまなインタラクティブな要素を保持できるブロックです。 |
コンテキスト | メッセージのコンテキストを表示します。これには画像とテキストの両方を含めることができます。すべての画像とテキストは、現れた順番に結合され、一続きになります。 |
# 制限事項
# ブロックの最大数
以下の表は、Slack が1つのサーフェスへの発行を許可しているブロックの最大数を示しています。
サーフェス | ブロックの最大数 |
---|---|
メッセージ | 50 |
モーダル | 100 |
アプリホーム | 100 |
# Block kit 要素内の文字数制限
Slack のサーフェスに投稿する際、Workbot は value
と action_id
というフィールドを使用して、bot のコマンドとパラメータを渡します。これらのフィールドには文字数制限があります。bot のコマンドとコマンド入力値はユーザーが使用できるように開放されていますが、Workbot は9文字を内部使用のために予約しています。また、スペースも文字数としてカウントされます。
WARNING
ボタン/メニューオプション送信コマンド、コマンド入力値、スペース、および9文字 (Workbot の内部使用) は、結合されたうえで value
や action_id
を通して渡されるため、同一の文字数制限を共有しています。
以下の表では、Block kit の要素の文字数制限を示します。
Block kit の要素 | 文字数にカウントされるもの | 文字数制限 | ペイロードで使用されるフィールド | サーフェス |
---|---|---|---|---|
ボタンを含むセクション アクション: ボタン |
| 2000 | value |
|
選択メニューを含むセクション |
| 255 | action_id |
|
アクション: 選択メニュー |
| 75 | value |
|
オーバフローメニューを含むセクション アクション: オーバーフローメニュー |
| 75 | value |
|
日付選択のカレンダーを含むセクション アクション: 日付選択のカレンダー |
| 255 | action_id |
|
選択メニューの入力 *タイプ: カスタム、ダイナミック* | このオプションが選択されたときに渡される値 | 75 | value | モーダルのみ |
ラジオボタンを含むセクション |
| 75 | value | モーダルのみ |
チェックボックスの入力 | 値 | 75 | value | モーダルのみ |
ラジオボタンの入力 | 値 | 75 | value | モーダルのみ |
Last updated: 2023/8/31 1:07:14