我是 Slack APP 开发的新手,我正在使用 Slack bolt python 开发应用程序。在我的应用程序中,我使用按钮单击配置了松弛交互,单击按钮时我正在调用相应的侦听器(由按钮中提到的 action_id 标识)。在侦听器中,我得到了 block_actions 有效负载,其中包含事件的所有状态值,但除此之外,我还想为侦听器函数提供一些参数。是否有可能以任何方式向听众发送额外的参数
@app.action("change_time_period")
def handle_change_time_period(ack, context, body, client, logger, message, say):
# want the arguments here such as passing email_id from post_data
def post_data(user_id, email_id):
client = WebClient(token=os.environ.get("SLACK_BOT_TOKEN"))
result = client.chat_postMessage(
channel=user_id,
blocks=[
{
"type": "actions",
"elements": [
{
"type": "button",
"text": {
"type": "plain_text",
"emoji": True,
"text": "Change time period"
},
"style": "primary",
"value": "time_period",
"action_id": "change_time_period"
}
]
}
]
)
在上面的代码中,我将调用 post_data,它将发布包含块工具包的消息,一旦用户单击按钮,将调用 handle_change_time_period