You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've implemented a slack bot using the Bolt python framework. This bot includes a bunch of shortcuts that perform some actions.
I've made it work in my local by using local proxy ngrok and setting the request URL in the Interactive section to the ngrok URL adding /slack/events at the end. I was running the app on a local server listening to Slack events in that request URL.
...
@app.shortcut("my-shortcut")
def open_modal(ack, shortcut, client, body, logger):
# Acknowledge the shortcut request
ack()
try:
result = client.views_open(
trigger_id=shortcut["trigger_id"],
# It opens the modal
view=get_modal_json()
)
except SlackApiError as e:
logger.error(
"Error opening the modal: {}".format(e))`
@app.view("my-shortcut")
def modal_submission(ack, body, client, view, logger):
# Acknowledge the shortcut request
ack()
# some actions
...
# Start your app
if __name__ == "__main__":
app.start(port=3000))
So the next step was to deploy in a test environment. For that purpose, I've built and deployed the slack app using Lambda with an API gateway integration.
When I trigger a shortcut a modal is opened with a couple of text boxes where the user will be introducing some values.
The modal is opened successfully as it did in my local, but when I submit the values, I always got the error "We had some trouble connecting. Try again?" when I test with the lambda. In my local, I never got this error.
The actions performed on the submission are performed successfully after submitting the modal but I am always getting this error "We had some trouble connecting. Try again?"
Code is as follows:
...
@app.shortcut("my-shortcut")
def open_modal(ack, shortcut, client, body, logger):
# Acknowledge the shortcut request
ack()
try:
result = client.views_open(
trigger_id=shortcut["trigger_id"],
# It opens the modal
view=get_modal_json()
)
except SlackApiError as e:
logger.error(
"Error opening the modal: {}".format(e))`
@app.view("my-shortcut")
def modal_submission(ack, body, client, view, logger):
# Acknowledge the shortcut request
ack()
# some actions
...
def handler(event, context):
slack_handler = SlackRequestHandler(app=app)
return slack_handler.handle(event, context)
I don't see any error in either in the Lambda and in the API Gateway Cloudwatch logs.
Lambda is responding with [DEBUG] 2021-07-09T13:31:36.360Z 36279b25-9135-478e-a101-ca3822263fa4 Responding with status: 200 body: "" (341 millis)
and the API Gateway also with a 200 response status as follows (f1c28d03-d61e-4ea5-9d03-8a830a444400) Method response body after transformations: { "statusCode": 200, "body": "", "headers": { "content-type": "text/plain;charset=utf-8" } }
Could you please help with this? I couldn't find any related issue in slack bolt python docs.
Thanks in advance and kind regards,
Juande
The text was updated successfully, but these errors were encountered:
Hi,
I've implemented a slack bot using the Bolt python framework. This bot includes a bunch of shortcuts that perform some actions.
I've made it work in my local by using local proxy ngrok and setting the request URL in the Interactive section to the ngrok URL adding /slack/events at the end. I was running the app on a local server listening to Slack events in that request URL.
So the next step was to deploy in a test environment. For that purpose, I've built and deployed the slack app using Lambda with an API gateway integration.
When I trigger a shortcut a modal is opened with a couple of text boxes where the user will be introducing some values.
The modal is opened successfully as it did in my local, but when I submit the values, I always got the error "We had some trouble connecting. Try again?" when I test with the lambda. In my local, I never got this error.
The actions performed on the submission are performed successfully after submitting the modal but I am always getting this error "We had some trouble connecting. Try again?"
Code is as follows:
I don't see any error in either in the Lambda and in the API Gateway Cloudwatch logs.
Lambda is responding with
[DEBUG] 2021-07-09T13:31:36.360Z 36279b25-9135-478e-a101-ca3822263fa4 Responding with status: 200 body: "" (341 millis)
and the API Gateway also with a 200 response status as follows
(f1c28d03-d61e-4ea5-9d03-8a830a444400) Method response body after transformations: { "statusCode": 200, "body": "", "headers": { "content-type": "text/plain;charset=utf-8" } }
Could you please help with this? I couldn't find any related issue in slack bolt python docs.
Thanks in advance and kind regards,
Juande
The text was updated successfully, but these errors were encountered: