我的目標(biāo)是能夠使用斜杠命令打開對話框并將反饋處理到數(shù)據(jù)庫中。我試圖讓對話框打開,但我收到有關(guān)斜杠命令的錯誤,其中顯示“未找到”。我的應(yīng)用程序設(shè)置有 API 和適當(dāng)?shù)?OAuth。我使用我的 php 頁面的 url (domain.com/slash.php) 在我的應(yīng)用程序中添加了一個斜杠命令斜杠命令使用以下代碼設(shè)置。當(dāng)我從 slack 運(yùn)行它時,我得到了輸出'{"ok":false,"error":"invalid_arguments","response_metadata":{"messages":["[ERROR] missing required field: trigger_id"]}}'我嘗試了一些調(diào)試并將trigger_id輸出到屏幕上,發(fā)現(xiàn)trigger_id確實為null。我錯過了什么才能通過這個?我承認(rèn)我是松弛領(lǐng)域的新手。我已經(jīng)按照(我認(rèn)為)松弛網(wǎng)站上關(guān)于正確設(shè)置應(yīng)用程序的文檔進(jìn)行操作。我是否遺漏了我的松弛應(yīng)用程序設(shè)置或我的代碼中導(dǎo)致此錯誤消息的內(nèi)容?預(yù)先感謝您的寶貴時間!<?$command = $_POST['command'];$text = $_POST['text'];$token = $_POST['token'];$cn = $_POST['channel_id'];$user_id = $_POST['user_id'];$triggerid = $_POST['trigger_id'];// define the dialog for the user (from Slack documentation example)$dialog = [ 'callback_id' => 'validres-3100', 'title' => 'Test', 'submit_label' => 'Submit', 'elements' => [ [ 'type' => 'text', 'label' => 'Test Field 1', 'name' => 'field_1' ], [ 'type' => 'text', 'label' => 'Test Field 2', 'name' => 'field_2' ] ]];// define POST query parameters$query = [ 'token' => '<my api auth code>', 'dialog' => json_encode($dialog), 'trigger_id' => $triggerid];// define the curl request$ch = curl_init();curl_setopt($ch, CURLOPT_URL, 'https://slack.com/api/dialog.open');curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/x-www-form-urlencoded']);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);// set the POST query parameterscurl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($query));// execute curl request$response = curl_exec($ch);// closecurl_close($ch);var_export($response);?>
1 回答

慕神8447489
TA貢獻(xiàn)1780條經(jīng)驗 獲得超1個贊
要在 slack 中打開對話框,您可以使用此 api“?https://slack.com/api/views.open?”。使用 api,您需要發(fā)送僅在 3 秒內(nèi)有效的觸發(fā)器 ID。?您的網(wǎng)址將類似于:?“?https://slack.com/api/views.open?trigger_id=?”+“xxxx.xxxxxxxxx.xxxxxxxxxxxx”+“&view=您的數(shù)據(jù)”。對于此請求,您需要在您的發(fā)布請求中發(fā)送令牌,例如:- (URL,"POST", { "token" ,"xoxb-xxxxxx-xxxxx-xxxxxxx"});
需要在您的 slack 應(yīng)用程序中添加 view.open API 也為此使用以下步驟:?使用“Bot 用戶 OAuth 訪問令牌”,在“OAuth 和權(quán)限選項卡”中格式為 xoxb-xxxxx-xxxxx-xxxx。然后添加范圍“views:open”并重新安裝您的應(yīng)用程序。然后嘗試打開視圖對話框。
希望這會有所幫助。
- 1 回答
- 0 關(guān)注
- 148 瀏覽
添加回答
舉報
0/150
提交
取消