###概要
Slack の Interactive Massage で JSON の構造に textarea を入れています(下のような感じ)。
JSON
1//前略 2{ 3 'type': 'textarea', 4 'label': 'URLとその説明を入力', 5 'optional':'true', 6 'name': 'dialg_url' 7} 8//後略
このプログラムを実行するとSlackでダイアログが開き、入力した文字列がSubmit後、 Google Spreadsheet に表示されます。
例えば、次の文字列を入力するとします。
<課題1> Slackのダイアログについて https://api.slack.com/dialogs
すると、Google spredsheet には次のように表示されます。
<課題1> Slackのダイアログについて <https://api.slack.com/dialogs>
URLが<>
で囲まれて表示しないようにしたいのです。
正規表現で<>
を消すことも考えたのですが、URL以外の<>
は消したくないです。
なお、Slackへの投稿やGASの受信はchat.postMessage
、doPost()
を使用しています。
入力した文字列は一つの配列に格納しています。
良い方法を教えてください。
###追記1
<>
がどのタイミングでつくようになったのか調べてみました。
上の処理をした後に、stateにmessage_tsとdescriptionを渡しているのですが、~~どうもこの時に<>
がつくようです。~~その前に配列に格納していました。
JSON
1var dialog = { 2 'token': 'xxxxxxxxxxxxxxxxxxxxxxx', 3 "trigger_id": trigger_id, 4 "dialog": JSON.stringify({"callback_id": "dialog4", 5 "state":message_ts+','+description, 6 "title": "追加情報を入力", 7 "submit_label": "Submit", 8 "elements": [ 9 {"type": "textarea", 10 "label": "追加情報", 11 "name": "dialg_plus" 12 }] 13 }) 14}
###追記2
ダイアログを使用しないで、Slackの機能のTrigger Wordを使って調べてみました。
Trigger WordのあとにURLを含んだ文字列を入力して送信し、Google Spreadsheetに表示させたところ、<>
が付きました。
入力された文字列データをGoogle apps Scriptで配列に格納しているので、配列化するとURLに<>
が付くようです。
回答1件
あなたの回答
tips
プレビュー