Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

socketClient fails to push a view with larger payload #1196

Open
Nizar-opt opened this issue Apr 25, 2023 · 0 comments
Open

socketClient fails to push a view with larger payload #1196

Nizar-opt opened this issue Apr 25, 2023 · 0 comments
Labels

Comments

@Nizar-opt
Copy link

What happened

Our app is using socketmode interactive events to push/update views (modals). Recently, i added one more option to one of the select input fields, then the app started to fail on pushing new views, once i remove that option it gets back to normal operation. I thought that I'm hitting a limit of the number of options but other fields have way more options, so i guess it might be related to the overall size of the payload? I checked the logs, there were no errors, it shows that the payload has been sent to slack:

socketmode: 2023/04/25 14:35:57 socket_mode_managed_conn.go:311: Sending Socket Mode response with envelope ID "5b57b603-5960-4bfa-becf-deae754e6674": &{5b57b603-5960-4bfa-becf-deae754e6674 0xc00007a5a0}
socketmode: 2023/04/25 14:35:57 socket_mode_managed_conn.go:320: Finished sending Socket Mode response with envelope ID "5b57b603-5960-4bfa-becf-deae754e6674"

Expected behavior

just to push a new view or at least throw an error if there is something wrong with the payload

Steps to reproduce

reproducible code

# payload
{
    "envelope_id": "xxxxxxxxxxxxxxxxxxxxxxx",
    "payload": {
        "response_action": "push",
        "view": {
            "type": "modal",
            "title": {
                "type": "plain_text",
                "text": "Deploy K8S"
            },
            "blocks": [
                {
                    "type": "section",
                    "text": {
                        "type": "mrkdwn",
                        "text": "Enter parameters to deploy my-app"
                    }
                },
                {
                    "type": "divider"
                },
                {
                    "type": "input",
                    "block_id": "BRANCH",
                    "label": {
                        "type": "plain_text",
                        "text": "BRANCH"
                    },
                    "element": {
                        "type": "plain_text_input",
                        "action_id": "BRANCH",
                        "initial_value": "main"
                    }
                },
                {
                    "type": "input",
                    "block_id": "ENV_TARGET",
                    "label": {
                        "type": "plain_text",
                        "text": "ENV_TARGET"
                    },
                    "element": {
                        "type": "static_select",
                        "action_id": "ENV_TARGET",
                        "options": [
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "PRO"
                                },
                                "value": "PRO"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "CANARY"
                                },
                                "value": "CANARY"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "B"
                                },
                                "value": "B"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "C"
                                },
                                "value": "C"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "D"
                                },
                                "value": "D"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "E"
                                },
                                "value": "E"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "F"
                                },
                                "value": "F"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "G"
                                },
                                "value": "G"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "H"
                                },
                                "value": "H"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "R"
                                },
                                "value": "R"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "S"
                                },
                                "value": "S"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "T"
                                },
                                "value": "T"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "TT"
                                },
                                "value": "TT"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "TTT"
                                },
                                "value": "TTT"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "TTTT"
                                },
                                "value": "TTTT"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "TTTTT"
                                },
                                "value": "TTTTT"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "U"
                                },
                                "value": "U"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "V"
                                },
                                "value": "V"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "W"
                                },
                                "value": "W"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "X"
                                },
                                "value": "X"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "Y"
                                },
                                "value": "Y"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "Z"
                                },
                                "value": "Z"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "ZZ"
                                },
                                "value": "ZZ"
                            }
                        ],
                        "initial_option": {
                            "text": {
                                "type": "plain_text",
                                "text": "PRO"
                            },
                            "value": "PRO"
                        }
                    }
                },
                {
                    "type": "input",
                    "block_id": "ENV_TYPE",
                    "label": {
                        "type": "plain_text",
                        "text": "ENV_TYPE"
                    },
                    "element": {
                        "type": "static_select",
                        "action_id": "ENV_TYPE",
                        "options": [
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "Auto-Detect"
                                },
                                "value": "Auto-Detect"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "STAGING-A"
                                },
                                "value": "STAGING-A"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "STAGING-B"
                                },
                                "value": "STAGING-B"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "STAGING-C"
                                },
                                "value": "STAGING-C"
                            },
                            {
                                "text": {
                                    "type": "plain_text",
                                    "text": "STAGING-DEV"
                                },
                                "value": "STAGING-DEV"
                            }
                        ],
                        "initial_option": {
                            "text": {
                                "type": "plain_text",
                                "text": "Auto-Detect"
                            },
                            "value": "Auto-Detect"
                        }
                    }
                }
            ],
            "close": {
                "type": "plain_text",
                "text": "Back"
            },
            "submit": {
                "type": "plain_text",
                "text": "Submit"
            },
            "private_metadata": "some private data less than 3000 chars xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

            "callback_id": "form",
            "notify_on_close": true
        }
    }
}
...
payload := slack.NewPushViewSubmissionResponse(&modalRequest)
socketClient.Ack(*event.Request, payload)
...

manifest.yaml

display_information:
  name: MR_Deployer
  description: deploys apps
  background_color: "#4f639e"
features:
  bot_user:
    display_name: MR_Deployer
    always_online: false
  slash_commands:
    - command: /deploy
      description: "deploys apps "
      should_escape: false
oauth_config:
  scopes:
    bot:
      - chat:write
      - channels:join
      - commands
settings:
  interactivity:
    is_enabled: true
    request_url: xxxxxxxxxxxxxxxxxxxxx
  org_deploy_enabled: false
  socket_mode_enabled: true
  token_rotation_enabled: false

Versions

  • Go: 1.20
  • slack-go/slack: v0.12.2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants