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

Support multiple service endpoints in a single service property #85

Closed
decentralgabe opened this issue Jan 4, 2024 · 3 comments · Fixed by #86
Closed

Support multiple service endpoints in a single service property #85

decentralgabe opened this issue Jan 4, 2024 · 3 comments · Fixed by #86
Assignees

Comments

@decentralgabe
Copy link
Member

decentralgabe commented Jan 4, 2024

yeah in that case i think _sN._did. should absolutely use ; to separate entities vs. , as you have right now because values like uri can have multiple values as noted here.

image

On that note, did did:dht make an explicit decision to not support serviceEndpoint being an object? DWNs require this which you can see here

image

Originally posted by @mistermoe in #83 (comment)

@decentralgabe
Copy link
Member Author

My belief is that this risks exceeding the length of a text packet and we should instead encourage multiple service endpoints be used. Open to other opinions / workarounds!

@mistermoe
Copy link
Contributor

definitely hear your concern around exceeding text packet length. here's a thought that came to mind.

Service RData

Entries

Entry Required Description
id Y Service's ID
t Y Service's Type
uri N List of ServiceEndpoint URIs
se N List of Service Endpoint resource names

Examples

Single URI

id=dwn;t=DecentralizedWebNode;uri=https://whatever.com

Multiple URIs

id=someservice;t=SomeService;uri=https://whatever.com,https://ok.com

Service Endpoint

id=dwn;t=DecentralizedWebNode;se=se0

Service Endpoint

Each Service Endpoint's name is represented as a _se0._did.. RData entries are dynamic

Example

nodes=did:example:host,https://dwn.example.com

It doesn't necessarily alleviate length concerns. but it came to mind so i figured i'd toss it out there.

@decentralgabe
Copy link
Member Author

I like the second example, I think we can do something with that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants