Skip to content

feat(client/android): Add report button for connection failures with webhook integration #2484

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

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

techamateur
Copy link

Resolves #2036

What

  • Added REPORT button next to DETAILS in connection error dialog.
  • Automated sending of failure details (error message, access key, user AS) to a configurable webhook.

Why

  • Manual error reporting via screenshots is inefficient and underutilized.
  • Enables providers to collect real-time connectivity issues data.

How to Test

  1. Add webhook parameter in your access key (e.g., ss://...?&webhook=https://example.com/report#key).
  2. Simulate connection failure (e.g., block server IP).
  3. Click REPORT and verify webhook receives JSON payload:

Screenshot
Error dialog with REPORT button

@techamateur techamateur requested a review from a team as a code owner April 27, 2025 15:20
@fortuna
Copy link
Collaborator

fortuna commented Apr 28, 2025

Thank you for your contribution.

Snackbars should have only one action (with an optional dismiss): https://m3.material.io/components/snackbar/guidelines#ae0935b0-a14e-4dec-8c3c-2c0809acffeb.

This needs a redesign.

@emohandesi
Copy link
Contributor

Thank you for your contribution.

Snackbars should have only one action (with an optional dismiss): https://m3.material.io/components/snackbar/guidelines#ae0935b0-a14e-4dec-8c3c-2c0809acffeb.

This needs a redesign.

@techamateur,
Please refer to #2036 for the updated design. The REPORT button is now moved to the Error Details dialogue box. Please update the screenshot in the PR, too.

Copy link
Contributor

@jyyi1 jyyi1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the contribution 👍. Before we review the code, please clean up the translation files, as they are handled automatically by our pipeline.

Copy link
Contributor

@jyyi1 jyyi1 Apr 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please revert the translation changes, they are handled by a pipeline. The only thing you need to change is resources/original_messages.json.

In addition, it will also simplifies the PR.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wait, it's 'resources/original_messages.json`, right?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, updated. en.json is for local debug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Enable user to report the connection failure
5 participants