1

我创建了一个交互式消息按钮来打开一个对话框。

这是交互消息端点的应用程序代码。

$httpClient = new GuzzleHttp\Client();

$httpClient->post($interactionRequest->payload->response_url, [
    'json' => [
        'text' => 'dialog open',
        'trigger_id' => $interactionRequest->payload->trigger_id,
        'dialog' => [
            'callback_id' => 'ryde-46e2b0',
            'title' => 'Request a Ride',
            'submit_label' => 'Request',
            'elements' => [
                [
                    'type' => 'text',
                    'label' => 'Pickup Location',
                    'name' => 'loc_origin',
                ],
                [
                    'type' => 'text',
                    'label' => 'Dropoff Location',
                    'name' => 'loc_destination',
                ],
            ],
        ],
    ],
]);

请求成功,我在 jsontext属性中定义的消息显示在 slack 中。但是对话框没有打开。

打开对话框,我的代码缺少什么部分?

4

1 回答 1

2

这不起作用,因为您没有使用正确的方法打开对话框。

如果你想打开一个 Slack 对话框,你需要将对话框定义连同触发器一起发布到这个 API 方法:dialog.open

于 2019-08-01T11:39:35.090 回答