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

Users SBAT select a hosted node setup when in Low Connectivity #1171

Closed
nityas opened this issue Oct 1, 2019 · 3 comments · Fixed by #1419
Closed

Users SBAT select a hosted node setup when in Low Connectivity #1171

nityas opened this issue Oct 1, 2019 · 3 comments · Fixed by #1419
Assignees
Labels
feature Feature requests Priority: P2 Major triaged label for issues that have been assigned a priority wallet

Comments

@nityas
Copy link
Contributor

nityas commented Oct 1, 2019

Expected Behavior

Goal: get the setup for prompting a sync mode switch/toggle in place with some reasonable starting parameters that can be fine tuned.

New Modal:

We propose a modal that provides a user with the option to enable 'Celo-Lite' mode.

NOTES:

  • If geth has restarted more than twice, or syncing has taken longer than 15s, but there is still some internet connection(eg type:unknown) show the modal below.
  • same modal template as the 'Are you sure?' Backup Key Modal, with enable being the primary cta:
  • a user should only see this modal after they have completed the 'Welcome to Celo' screen
  • once ‘Dismiss’ is pressed, we should not show the modal again, to avoid an overly intrusive or confusing experience.

(TODO: are there other signals we can use to fine tune this?)


Switch Connection Mode?

We’ve noticed you’re having some trouble connecting. We recommend enabling Celo-Lite mode to allow you to keep using the Celo Wallet with intermittent connection.

Celo-Lite allows you to communicate with the Celo Network through a trusted, hosted node, which can give faster performance than running a node on your device. You can always change this mode in Settings.

[Dismiss] [Enable Celo-Lite]


Settings Changes:

In Settings/Preferences (see #1239), add a section called 'Celo-Lite', which leads to the following (same pattern as 'Analytics' Tab)


Enable Celo-Lite <- >

celo-lite mode allows you to communicate with the Celo Network through a trusted node. You can always change this mode in app settings.


Current Behavior

working as a separate build

@nityas nityas added the wallet label Oct 1, 2019
@annakaz annakaz self-assigned this Oct 1, 2019
@nityas
Copy link
Contributor Author

nityas commented Oct 2, 2019

@annakaz - have some ideas on how we can productize this, but I'd like to get your view on what feasible to detect from the OS regarding a device's state. Let's perhaps brainstorm on this later this week?

@ashishb
Copy link
Contributor

ashishb commented Oct 2, 2019

@annakaz In its current form, the switching is not possible. Here's how it can be enabled.

  1. Always write the key in src/web3/saga.ts by calling savePrivateKeyToLocalDisk in both ZeroSync and non-zero sync mode => user will be able to switch from geth to hosted node setup (zero sync mode)
  2. When the user starts the app for the first time in local geth mode, check if the key exists by calling for getPrivateKeyFilePath(accountName) (you already have the account name elsewhere) and checking if the file exists. If it does, get the pincode (which might prompt the user for security screen), get the decrypted key and import it in geth.

@annakaz
Copy link
Contributor

annakaz commented Oct 31, 2019

Split low connectivity into separate issue- see #1559

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature Feature requests Priority: P2 Major triaged label for issues that have been assigned a priority wallet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants