-
Notifications
You must be signed in to change notification settings - Fork 217
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #840 from JamesKEbert/fix/rfcJSON
fix: RFC JSON formatting
- Loading branch information
Showing
7 changed files
with
180 additions
and
154 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
# 0212: Pickup Protocol | ||
|
||
- Authors: [Sam Curren](mailto:[email protected]) | ||
- Status: [PROPOSED](/README.md#proposed) | ||
- Since: 2019-09-03 | ||
|
@@ -32,41 +33,52 @@ batch retrieval can be executed when many messages ... | |
## Reference | ||
|
||
### StatusRequest | ||
|
||
Sent by the _recipient_ to the _message_holder_ to request a `status` message. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/status-request" | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/status-request" | ||
} | ||
``` | ||
|
||
### Status | ||
|
||
Status details about pending messages | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/status", | ||
"message_count": 7, | ||
"duration_waited": 3600, | ||
"last_added_time": "2019-05-01 12:00:00Z", | ||
"last_delivered_time": "2019-05-01 12:00:01Z", | ||
"last_removed_time": "2019-05-01 12:00:01Z", | ||
"total_size": 8096 | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/status", | ||
"message_count": 7, | ||
"duration_waited": 3600, | ||
"last_added_time": "2019-05-01 12:00:00Z", | ||
"last_delivered_time": "2019-05-01 12:00:01Z", | ||
"last_removed_time": "2019-05-01 12:00:01Z", | ||
"total_size": 8096 | ||
} | ||
``` | ||
|
||
`message_count` is the only required attribute. The others may be present if offered by the _message_holder_. | ||
|
||
### Batch Pickup | ||
|
||
A request to have multiple waiting messages sent inside a `batch` message. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/batch-pickup", | ||
"batch_size": 10 | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/batch-pickup", | ||
"batch_size": 10 | ||
} | ||
``` | ||
|
||
### Batch | ||
|
||
A message that contains multiple waiting messages. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/batch", | ||
|
@@ -87,22 +99,29 @@ A message that contains multiple waiting messages. | |
] | ||
} | ||
``` | ||
|
||
### Message Query With Message Id List | ||
|
||
A request to read single or multiple messages with a message message id array. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/list-pickup", | ||
"message_ids": [ | ||
"06ca25f6-d3c5-48ac-8eee-1a9e29120c31", | ||
"344a51cf-379f-40ab-ab2c-711dab3f53a9a" | ||
] | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/list-pickup", | ||
"message_ids": [ | ||
"06ca25f6-d3c5-48ac-8eee-1a9e29120c31", | ||
"344a51cf-379f-40ab-ab2c-711dab3f53a9a" | ||
] | ||
} | ||
``` | ||
|
||
`message_ids` message id array for picking up messages. Any message id in `message_ids` could be delivered via several ways to the recipient (Push notification or with an envoloped message). | ||
|
||
### Message List Query Response | ||
|
||
A response to query with message id list. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@type": "https://didcomm.org/messagepickup/1.0/list-response", | ||
"messages~attach": [ | ||
|
@@ -121,16 +140,18 @@ A response to query with message id list. | |
] | ||
} | ||
``` | ||
|
||
### Noop | ||
|
||
Used to receive another message implicitly. This message has no expected behavior when received. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/noop" | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/messagepickup/1.0/noop" | ||
} | ||
``` | ||
|
||
|
||
## Prior art | ||
|
||
Concepts here borrow heavily from a [document](https://hackmd.io/@8VtAqKThQ6mKa9T7JgzIaw/SJw9Ead2N?type=view) written by Andrew Whitehead of BCGov. | ||
|
@@ -143,6 +164,6 @@ Concepts here borrow heavily from a [document](https://hackmd.io/@8VtAqKThQ6mKa9 | |
|
||
The following lists the implementations (if any) of this RFC. Please do a pull request to add your implementation. If the implementation is open source, include a link to the repo or to the implementation within the repo. Please be consistent in the "Name" field so that a mechanical processing of the RFCs can generate a list of all RFCs supported by an Aries implementation. | ||
|
||
Name / Link | Implementation Notes | ||
--- | --- | ||
| | | ||
| Name / Link | Implementation Notes | | ||
| ----------- | -------------------- | | ||
| | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
# 0213: Transfer Policy Protocol | ||
|
||
- Authors: [Sam Curren](mailto:[email protected]) | ||
- Status: [PROPOSED](/README.md#proposed) | ||
- Since: 2019-09-03 | ||
|
@@ -24,65 +25,70 @@ Explicit Policy Enables clear expectations. | |
## Reference | ||
|
||
### Policy Publish | ||
|
||
Used to share current policy by policy holder. | ||
This can be sent unsolicited or in response to a `policy_share_request`. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/transferpolicy/1.0/policy", | ||
"queue_max_duration": 86400, | ||
"message_count_limit": 1000, | ||
"message_size_limit": 65536, | ||
"queue_size_limit": 65536000, | ||
"pickup_allowed": true, | ||
"delivery_retry_count_limit":5, | ||
"delivery_retry_count_seconds":86400, | ||
"delivery_retry_backoff": "exponential" | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/transferpolicy/1.0/policy", | ||
"queue_max_duration": 86400, | ||
"message_count_limit": 1000, | ||
"message_size_limit": 65536, | ||
"queue_size_limit": 65536000, | ||
"pickup_allowed": true, | ||
"delivery_retry_count_limit": 5, | ||
"delivery_retry_count_seconds": 86400, | ||
"delivery_retry_backoff": "exponential" | ||
} | ||
``` | ||
|
||
### Policy Share Request | ||
|
||
Used to ask for a `policy` message to be sent. | ||
```json= | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/transferpolicy/1.0/policy_share_request" | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/transferpolicy/1.0/policy_share_request" | ||
} | ||
``` | ||
|
||
### Policy Change Request | ||
Sent to request a policy change. The expected response is a `policy` message. | ||
|
||
```json= | ||
Sent to request a policy change. The expected response is a `policy` message. | ||
|
||
```json | ||
{ | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/transferpolicy/1.0/policy_change_request", | ||
"queue_max_duration": 86400, | ||
"message_count_limit": 1000, | ||
"message_size_limit": 65536, | ||
"queue_size_limit": 65536000, | ||
"pickup_allowed": true, | ||
"delivery_retry_count_limit":5, | ||
"delivery_retry_count_seconds":86400, | ||
"delivery_retry_backoff": "exponential" | ||
"@id": "123456781", | ||
"@type": "https://didcomm.org/transferpolicy/1.0/policy_change_request", | ||
"queue_max_duration": 86400, | ||
"message_count_limit": 1000, | ||
"message_size_limit": 65536, | ||
"queue_size_limit": 65536000, | ||
"pickup_allowed": true, | ||
"delivery_retry_count_limit": 5, | ||
"delivery_retry_count_seconds": 86400, | ||
"delivery_retry_backoff": "exponential" | ||
} | ||
``` | ||
Only attributes that you desire to change need to be included. | ||
|
||
Only attributes that you desire to change need to be included. | ||
|
||
## Prior art | ||
|
||
Concepts here borrow heavily from a [document](https://hackmd.io/@8VtAqKThQ6mKa9T7JgzIaw/SJw9Ead2N?type=view) written by Andrew Whitehead of BCGov. | ||
|
||
## Unresolved questions | ||
|
||
- Is the attribute list too extensive for a first pass? | ||
- Which policy attributes should be required? Which optional? | ||
|
||
## Implementations | ||
|
||
The following lists the implementations (if any) of this RFC. Please do a pull request to add your implementation. If the implementation is open source, include a link to the repo or to the implementation within the repo. Please be consistent in the "Name" field so that a mechanical processing of the RFCs can generate a list of all RFCs supported by an Aries implementation. | ||
|
||
Name / Link | Implementation Notes | ||
--- | --- | ||
| | | ||
| Name / Link | Implementation Notes | | ||
| ----------- | -------------------- | | ||
| | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.