Python Slack Bot 对话框 - 无法连接

问题描述

我开始在 Python 中使用 Slack API。

到目前为止,我能够正常连接并发送消息。

我想创建一个对话框选项,以便用户可以输入变量,而且我可以这样做,但是当我尝试提交对话框时,出现错误提示: 我们在连接时遇到了一些问题。再试一次?

slack bot fail

代码如下:

@app.route("/test",methods=["POST"])
def message_actions():
    data = request.form
    user_id = data.get('user_id')
    client.api_call(api_method="dialog.open",json={"trigger_id": data.get("trigger_id"),"dialog": {
                        "title": "Request a coffee","submit_label": "Submit","callback_id": user_id + "coffee_order_form","elements": [{
                            "label": "Coffee Type","type": "select","name": "meal_preferences","placeholder": "Select a drink","options": [
                                {
                                    "label": "Cappuccino","value": "cappuccino"
                                },{
                                    "label": "Latte","value": "latte"
                                },{
                                    "label": "Pour Over","value": "pour_over"
                                },{
                                    "label": "Cold Brew","value": "cold_brew"
                                }
                            ]
                        }
                        ]
                    }}
                    )

    return make_response("",200)

解决方法

您没有向我们展示任何应该处理模态提交的代码,只展示了创建它的代码。

当用户提交模态时,您的应用将需要处理 view_submission event

我不确定您是否使用了 bolt,但是您可以看到一个示例,说明如何使用 slack bolt here

您需要在 3 秒内确认提交。一个简单的 200 就可以了