###概要
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
プレビュー