web-dev-qa-db-ja.com

スラックwebhook htmlテーブル

Webhookを介してslackに投稿しようとしているhtmlテーブルがあります。 htmlテーブルをスラックに投稿する方法はありますか?以下はhtmlコードです-

<!DOCTYPE html>
<html>
<head>
<title>HTML Tables</title>
</head>
<body>
<table border="1">
<tr>
<td>Row 1, Column 1</td>
<td>Row 1, Column 2</td>
</tr>
<tr>
<td>Row 2, Column 1</td>
<td>Row 2, Column 2</td>
</tr>
</table>
</body>
</html>
28
Punter Vicky

いいえ、Slackメッセージに表を描く方法はないと思います。

Slackメッセージのフォーマットに使用できる他のオプションは次のとおりです。 https://api.slack.com/docs/formatting

28
smarx

Slackの Incoming Webhook メッセージが任意の形式(HTMLまたはMarkdown)のテーブルをサポートするかどうかを尋ねるSlackサポートへのチケットを開きました。

公式の答えは、Slackメッセージはテーブルをサポートしていません

彼らはテーブルを生成し、それを画像として投稿することを提案しています。

また、彼らはそれを彼らのバックログに追加すると言った。

35
Sahar Menashe

特にHTMLテーブルではありませんが、 console.table のようなパッケージを使用して、テーブルのデータを文字列変数に出力できます。次に、triple backticksを使用して、スラックメッセージのテキストフィールドにテーブルを追加します。例えば:

const cTable = require('console.table');
const table = cTable.getTable([
  {
    name: 'foo',
    age: 10
  }, {
    name: 'bar',
    age: 20
  }
]);

そして、スラックメッセージの添付ファイルの一部として:

const attachmentList = {
        "title": "YOUR TITLE",
        "text": 'HERE IS YOUR TABLE: : \n ```'+table+'```',
    }
13
Nima

"fields" layout block を使用して、簡単な2列のテーブルをスラックで実行できるようになりました。

2列のテーブルを作成できます。

[
   {
        "type": "section",
        "fields": [
            {
                "type": "mrkdwn",
                "text": "*Name*"
            },
            {
                "type": "mrkdwn",
                "text": "*Email*"
            },
            {
                "type": "plain_text",
                "text": "Jeff Henderson",
                "emoji": true
            },
            {
                "type": "mrkdwn",
                "text": "[email protected]"
            },
            {
                "type": "plain_text",
                "text": "Anne Polin",
                "emoji": true
            },
            {
                "type": "mrkdwn",
                "text": "[email protected]"
            }

        ]
    }
]

あなたに与える:

enter image description here

または、フィールドスタイルに移動します。

[
    {
        "type": "section",
        "fields": [
            {
                "type": "plain_text",
                "text": "Name",
                "emoji": true
            },
            {
                "type": "mrkdwn",
                "text": "*Jeff Henderson*"
            },
            {
                "type": "plain_text",
                "text": "Email",
                "emoji": true
            },
            {
                "type": "mrkdwn",
                "text": "[email protected]"
            },
            {
                "type": "plain_text",
                "text": "Mobile Phone",
                "emoji": true
            },
            {
                "type": "mrkdwn",
                "text": "0451000000"
            },
            {
                "type": "plain_text",
                "text": "Work Phone",
                "emoji": true
            },
            {
                "type": "mrkdwn",
                "text": "94550000"
            }

        ]
    }
]

生成されます:

enter image description here

5
Avner