status-im / status-protocol-go

Status Protocol implementation in Go
Mozilla Public License 2.0
0 stars 1 forks source link

Feedback using the messenger #60

Open adambabik opened 5 years ago

adambabik commented 5 years ago

When writing a bridge between Status and other platform, the following feedback was given:

  1. All the hustle with the node is confusing. A proper messenger or client should handle that.
  2. Passing Whisper service is confusing as well. It should be customizable but also a default service should be used if not specified.
  3. Consider installationID to be optional or provide a function to generate it. It's unknown what it is and why it's needed.
adambabik commented 5 years ago

(1) and (2) We can create a package called client which actually can be a separate module. It can provide Client which would abstract creating a node and Whisper service.

(3) We can rename it to deviceID or we can provide a function which would generate a predictable ID based on the input.

jakubgs commented 5 years ago

Also, you said that options are optional in NewMessager but they aren't: https://github.com/status-im/status-protocol-go/blob/7d230faaa7e20f0e30379ebc5ff66f005a054295/messenger.go#L232-L234 It fails if I don't specify WithDatabaseConfig in options.