Skip to content

Re-Evaluate introducer feature/workflow/API

Seems like we agreed on using the storage layer of bitmask-core for the introducer. TODOs:

  • On the desktop, we only have a single api object. So we need to add a SetIntroducer function

For Android, we have:

In pkg/mobile/bitmaskmobile.go we have

 func (bm *BitmaskMobile) SetIntroducer(introducer string) {
     bm.config.Introducer = introducer
 }

SetIntroducer is called from the Java part. We also need to call it from the desktop code. But what do we add as an argument? We can not hand over the introducer url.

When we agree on saving only a single introducer (cyberta and me like that idea, jkito doesn't), we need the folloing API in bitmask-core:

  • SaveIntroducer(introducerURL) - saves it to disk using bitmask-core storage layer
  • DeleteIntroducer() - delete it from disk using the storage layer of bitmask-core
  • GetIntroducerURL() - returns the url from the bitmask-core storage layer (only one is stored)

In the UI, we can dis/enable the use of the introducer:

  • EnableIntroducer()
  • DisableIntroducer()

Both functions just change the value of api.config.introducer (url).

When we want to save multiple intdroducer, not only the UI is much more complicated. For the API part in bitmask-core:

  • EnableIntroducer(introducer string) - What is introducer here? The name? If bitmask-core stores it like introducer_name: introducer_config? But then we need to save in systray.json the last selected one.

Again want to propose the support of a single intrdocuer.

Just my 2 cents. What do you think @jkito @cyberta