Skip to content

Conversation

@dabear
Copy link
Contributor

@dabear dabear commented Jun 4, 2017

Synopsis

This makes it possible to select which shareserver to use in the Loop UI and thereby solves issue #416 .

This requires updating the dexcom-share-client-swift to the latest master version, rather than specifying version 0.2.1 , as there isn't a tag available for the latest changes, which this depends on.

Use cases

  • It allows you to change to the NON_US dexcom share server. And users don't have to alter the Loop code to do so.
  • You can use a fake shareserver for testing purposes. One such server, made by my self, is freely available at http://mockedshareserver.azurewebsites.net .
  • When Looping with another cgm solution such as freestyle libre, librealarm and xdrip+ you wouldn't typically have access to a dexcom transmitter id. Without a dexcom transmitter id you can't use dexcom share. By using a proxy such as https://github.com/dabear/NightscoutShareServer you can still use Loop and share.

Screenshot

img_0022

@ps2
Copy link
Collaborator

ps2 commented Jun 14, 2017

Because it appears that the goal is to allow arbitrary urls, the ShareClient framework should be updated to just take a non-nil url. The known URLs can be implemented as a public string backed enum in the framework. This will work better with the implementation in Loop.

For the UI, we should keep it simple for the common use case (selecting between US and EU servers), and make that a radio selection. To support custom URLs, which is a less common use case, users could edit the code for now. To make it easier, we could add to the array of Name/URL tuples with a commented out third option and "type your server URL here and uncomment this line" block, then the radio selector would change from 2 to 3 options.

Lastly, RemoteDataManager needs to be updated to use the saved configuration; it looks like right now, after restarting Loop, it would revert to using US servers.

@mddub
Copy link
Contributor

mddub commented Jun 16, 2017

Thanks a ton for doing this, @dabear. I just bumped the version of dexcom-share-client-swift with a v0.3.0 tag, so you can specify that version explicitly in the Cartfile.

@dabear
Copy link
Contributor Author

dabear commented Jun 17, 2017

@mddub thanks, however, I have some additional changes for you, please see mddub/dexcom-share-client-swift#13 which should fix @ps2 first feedback here regarding "The known URLs can be implemented as a public string backed enum in the framework."

@mddub
Copy link
Contributor

mddub commented Jun 20, 2017

@dabear
Copy link
Contributor Author

dabear commented Jun 27, 2017

Closing this pull request. Most of this feature was added to the following branch: https://github.com/LoopKit/Loop/compare/share-server

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.

3 participants