dxos-deprecated / sdk

DXOS SDK and tools.
GNU Affero General Public License v3.0
0 stars 2 forks source link

Generate invitation links based on public access point. #121

Open richburdon opened 3 years ago

richburdon commented 3 years ago

E.g., running app from xbox.local should generate a link to one of the public nodes.

dboreham commented 3 years ago

This is the workflow we currently support:

  1. User-A owns kube-a advertising mDNS kube.local on their LAN. They run teamwork from that kube.
  2. User-A invites User-B to collaborate in a party.
  3. Invitation URL is https://kube.local/...
  4. User-B owns kube-b advertising mDNS kube.local on their LAN.
  5. User-B visits invitation URL in browser, resolves to their kube-b.
  6. kube-b can fetch teamwork from IPFS via metadata in WNS and serve to UserB's browser.
  7. Underneath, kube-a and kube-b are in the same signal mesh facilitated by DHT and bootstrap from WNS, so User-B's browser makes a WebRTC data channel connection to User-A's browser and the party collaboration proceeds from there.
dboreham commented 3 years ago

Requirements

dboreham commented 3 years ago

This is a head scratcher for me:

To automatically select an public (or otherwise accessible) kube (which may advertise its services due to incentives).

Perhaps split this into two steps:

  1. Invite URL directs UserB to some kube provisioning marketplace site.
  2. UserB buys a kube from marketplace.
  3. Carry on as before now UserB has a kube.
dboreham commented 3 years ago

New proposal:

  1. UserA's app always generates a URL resolvable to the "marketplace" thing (v1.0 stand in is : demo.kube.dxos.network).
  2. UserB if they are "cold onboarding" just goes to that site and everything works.
  3. UserB if they are "warm oboarding" (they are already running our apps, and/or have a kube already) then code running on their side re-writes the host part of the URL to point to their kube.