Comments (3)
I can help here with some questions for the notifications portion that I articulated the development of PREP:
- How does a client discover notification capabilities, ie what is the structure of a discovery request?
- How does a client request notifications, ie what is the structure of subscription request?
- What customization for notifications can a client request (imho these are very limited because every customization makes life harder for intermediaries and takes us away from the layering benefits of REST)?
- What is the structure of the response if there is an error or resource is not available?
- What is the structure of the response if resource is available, but there is an error in sending notifications or notifications are not available?
- What is the structure of response ie how does it frame historic patches, the current representation and then notifications?
- What does a notification look like when:
- only events are sought?
- events and patches are sought?
- what do the patches look like?
- a more processed combination of the two are sought?
- How and when does server terminate notifications?
- How and when does client terminate notifications?
I believe there is a protocol independent answer for each of these questions! I hope this helps...
from braid-spec.
This is a wonderful list @CxRes! Thank you! I am glad that you've put so much thought into this, and that we can now benefit from your insight and organized mind on the topic.
If I'm understanding correctly, this is essentially a list of questions that a protocol designer should answer in order to fully-specify a subscription/notifications protocol over any transport. If the designer has answered all these questions, I suspect that should be enough to fully specify the protocol!
from braid-spec.
I would not say fully-specify, but these were the questions I came up with after I had made a proto-version of PREP. It should help mostly-specify a notifications protocol.
One of the benefits of putting the list out (selfishly) is that others can identify blindspots!
from braid-spec.
Related Issues (20)
- Heartbeat messages to prevent timeouts HOT 8
- Subscriptions with no immediate response HOT 2
- Add top level Patch-Type to subscriptions HOT 3
- What error code should we use when historical versions are missing? HOT 1
- Get requests with 'version' header should all appear in same section. HOT 3
- Allow 404s within a Subscription HOT 7
- Cache-Control is missing from the spec HOT 1
- Typo on braid.org HOT 1
- Subscription without payload HOT 6
- Compression or inheritence for headers
- Guidance for PUTs to legacy servers HOT 9
- Articulate the general form of Updates HOT 1
- Subscription parameters HOT 2
- Place fields in correct IANA Registry
- Multi-ID versions used in text before they are explained HOT 2
- Difference between ignoring and rejecting an update HOT 3
- Reporting versioning-related errors
- Memento protocol HOT 3
- First-Readthrough Nitpicks HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from braid-spec.