{"action":"created","comment":{"url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/comments/208642292","pull_request_review_id":144494251,"id":208642292,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwODY0MjI5Mg==","diff_hunk":"@@ -73,16 +73,35 @@ paths:\n                   \"type\": \"m.room.message\",\n                   \"user_id\": \"@bob:localhost\"\n                 }\n+              ],\n+              \"edus\": [\n+                {\n+                  \"type\": \"m.typing\",\n+                  \"room_id\": \"!TmaZBKYIFrIPVGoUYp:localhost\",\n+                  \"content\": {\n+                    \"user_ids\": [\"@alice:localhost\"]\n+                  }\n+                }\n               ]\n             }\n             description: \"Transaction informations\"\n             properties:\n               events:\n                 type: array\n-                description: A list of events\n+                description: A list of events. May be empty.\n                 items:\n                   type: object\n                   title: Event\n+              edus:\n+                  type: array\n+                  description: |-\n+                    A list of ephemeral events the application service may be\n+                    interested in. These have the same format as the EDUs defined\n+                    in the Client-Server API.\n+                  items:\n+                    type: object\n+                    title: Ephemeral Event\n+                    # TODO: Reference client schema for EDUs","path":"api/application-service/application_service.yaml","position":33,"original_position":33,"commit_id":"c8764161c57ab5abfe90af522a68901385a50c58","original_commit_id":"c8764161c57ab5abfe90af522a68901385a50c58","user":{"login":"turt2live","id":1190097,"node_id":"MDQ6VXNlcjExOTAwOTc=","avatar_url":"https://avatars2.githubusercontent.com/u/1190097?v=4","gravatar_id":"","url":"https://api.github.com/users/turt2live","html_url":"https://github.com/turt2live","followers_url":"https://api.github.com/users/turt2live/followers","following_url":"https://api.github.com/users/turt2live/following{/other_user}","gists_url":"https://api.github.com/users/turt2live/gists{/gist_id}","starred_url":"https://api.github.com/users/turt2live/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/turt2live/subscriptions","organizations_url":"https://api.github.com/users/turt2live/orgs","repos_url":"https://api.github.com/users/turt2live/repos","events_url":"https://api.github.com/users/turt2live/events{/privacy}","received_events_url":"https://api.github.com/users/turt2live/received_events","type":"User","site_admin":false},"body":"I think this is something we haven't yet defined in the client-server spec, but would be nice to do. I'd like to fork that off to the \"improve client-server spec\" pile though.","created_at":"2018-08-08T16:08:55Z","updated_at":"2018-08-08T16:08:56Z","html_url":"https://github.com/matrix-org/matrix-doc/pull/1496#discussion_r208642292","pull_request_url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/comments/208642292"},"html":{"href":"https://github.com/matrix-org/matrix-doc/pull/1496#discussion_r208642292"},"pull_request":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496"}}},"pull_request":{"url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496","id":207060210,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA3MDYwMjEw","html_url":"https://github.com/matrix-org/matrix-doc/pull/1496","diff_url":"https://github.com/matrix-org/matrix-doc/pull/1496.diff","patch_url":"https://github.com/matrix-org/matrix-doc/pull/1496.patch","issue_url":"https://api.github.com/repos/matrix-org/matrix-doc/issues/1496","number":1496,"state":"open","locked":false,"title":"Add EDUs to appservice transactions","user":{"login":"turt2live","id":1190097,"node_id":"MDQ6VXNlcjExOTAwOTc=","avatar_url":"https://avatars2.githubusercontent.com/u/1190097?v=4","gravatar_id":"","url":"https://api.github.com/users/turt2live","html_url":"https://github.com/turt2live","followers_url":"https://api.github.com/users/turt2live/followers","following_url":"https://api.github.com/users/turt2live/following{/other_user}","gists_url":"https://api.github.com/users/turt2live/gists{/gist_id}","starred_url":"https://api.github.com/users/turt2live/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/turt2live/subscriptions","organizations_url":"https://api.github.com/users/turt2live/orgs","repos_url":"https://api.github.com/users/turt2live/repos","events_url":"https://api.github.com/users/turt2live/events{/privacy}","received_events_url":"https://api.github.com/users/turt2live/received_events","type":"User","site_admin":false},"body":"Rendered: see 'docs' commit status\r\nSynapse PR: coming soon\r\n\r\n----\r\n\r\nMany bridges are interested in this information, and considering they can no longer sync themselves they need a way to get EDUs. Servers should send EDUs as per the rules for \"interested events\" defined elsewhere.\r\n\r\nEDUs are a new top level key for backwards compatibility and sanity. Having EDUs in the events array would likely break appservices which are not EDU-aware due to missing fields and unknown event types. \r\n\r\nThe events array is still required for backwards compatibility. The added condition of it may be empty has been added so that appservices which are not aware of EDUs don't break with a missing field. Appservices should be iterating over the list, so a zero-element list should be fine.\r\n\r\nFixes #1145 ","created_at":"2018-08-08T16:08:03Z","updated_at":"2018-08-08T16:08:56Z","closed_at":null,"merged_at":null,"merge_commit_sha":"21b23914d866eff89fa52ec21037913a43457869","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[{"name":"Spec Core Team","id":2820676,"node_id":"MDQ6VGVhbTI4MjA2NzY=","slug":"spec-core-team","description":"Core team members tasked with reviewing Matrix Spec Proposals","privacy":"closed","url":"https://api.github.com/teams/2820676","members_url":"https://api.github.com/teams/2820676/members{/member}","repositories_url":"https://api.github.com/teams/2820676/repos","permission":"pull"}],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496/commits","review_comments_url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496/comments","review_comment_url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/comments{/number}","comments_url":"https://api.github.com/repos/matrix-org/matrix-doc/issues/1496/comments","statuses_url":"https://api.github.com/repos/matrix-org/matrix-doc/statuses/c8764161c57ab5abfe90af522a68901385a50c58","head":{"label":"turt2live:travis/as/edus","ref":"travis/as/edus","sha":"c8764161c57ab5abfe90af522a68901385a50c58","user":{"login":"turt2live","id":1190097,"node_id":"MDQ6VXNlcjExOTAwOTc=","avatar_url":"https://avatars2.githubusercontent.com/u/1190097?v=4","gravatar_id":"","url":"https://api.github.com/users/turt2live","html_url":"https://github.com/turt2live","followers_url":"https://api.github.com/users/turt2live/followers","following_url":"https://api.github.com/users/turt2live/following{/other_user}","gists_url":"https://api.github.com/users/turt2live/gists{/gist_id}","starred_url":"https://api.github.com/users/turt2live/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/turt2live/subscriptions","organizations_url":"https://api.github.com/users/turt2live/orgs","repos_url":"https://api.github.com/users/turt2live/repos","events_url":"https://api.github.com/users/turt2live/events{/privacy}","received_events_url":"https://api.github.com/users/turt2live/received_events","type":"User","site_admin":false},"repo":{"id":81121581,"node_id":"MDEwOlJlcG9zaXRvcnk4MTEyMTU4MQ==","name":"matrix-doc","full_name":"turt2live/matrix-doc","owner":{"login":"turt2live","id":1190097,"node_id":"MDQ6VXNlcjExOTAwOTc=","avatar_url":"https://avatars2.githubusercontent.com/u/1190097?v=4","gravatar_id":"","url":"https://api.github.com/users/turt2live","html_url":"https://github.com/turt2live","followers_url":"https://api.github.com/users/turt2live/followers","following_url":"https://api.github.com/users/turt2live/following{/other_user}","gists_url":"https://api.github.com/users/turt2live/gists{/gist_id}","starred_url":"https://api.github.com/users/turt2live/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/turt2live/subscriptions","organizations_url":"https://api.github.com/users/turt2live/orgs","repos_url":"https://api.github.com/users/turt2live/repos","events_url":"https://api.github.com/users/turt2live/events{/privacy}","received_events_url":"https://api.github.com/users/turt2live/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/turt2live/matrix-doc","description":"Matrix Documentation (including The Spec)","fork":true,"url":"https://api.github.com/repos/turt2live/matrix-doc","forks_url":"https://api.github.com/repos/turt2live/matrix-doc/forks","keys_url":"https://api.github.com/repos/turt2live/matrix-doc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/turt2live/matrix-doc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/turt2live/matrix-doc/teams","hooks_url":"https://api.github.com/repos/turt2live/matrix-doc/hooks","issue_events_url":"https://api.github.com/repos/turt2live/matrix-doc/issues/events{/number}","events_url":"https://api.github.com/repos/turt2live/matrix-doc/events","assignees_url":"https://api.github.com/repos/turt2live/matrix-doc/assignees{/user}","branches_url":"https://api.github.com/repos/turt2live/matrix-doc/branches{/branch}","tags_url":"https://api.github.com/repos/turt2live/matrix-doc/tags","blobs_url":"https://api.github.com/repos/turt2live/matrix-doc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/turt2live/matrix-doc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/turt2live/matrix-doc/git/refs{/sha}","trees_url":"https://api.github.com/repos/turt2live/matrix-doc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/turt2live/matrix-doc/statuses/{sha}","languages_url":"https://api.github.com/repos/turt2live/matrix-doc/languages","stargazers_url":"https://api.github.com/repos/turt2live/matrix-doc/stargazers","contributors_url":"https://api.github.com/repos/turt2live/matrix-doc/contributors","subscribers_url":"https://api.github.com/repos/turt2live/matrix-doc/subscribers","subscription_url":"https://api.github.com/repos/turt2live/matrix-doc/subscription","commits_url":"https://api.github.com/repos/turt2live/matrix-doc/commits{/sha}","git_commits_url":"https://api.github.com/repos/turt2live/matrix-doc/git/commits{/sha}","comments_url":"https://api.github.com/repos/turt2live/matrix-doc/comments{/number}","issue_comment_url":"https://api.github.com/repos/turt2live/matrix-doc/issues/comments{/number}","contents_url":"https://api.github.com/repos/turt2live/matrix-doc/contents/{+path}","compare_url":"https://api.github.com/repos/turt2live/matrix-doc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/turt2live/matrix-doc/merges","archive_url":"https://api.github.com/repos/turt2live/matrix-doc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/turt2live/matrix-doc/downloads","issues_url":"https://api.github.com/repos/turt2live/matrix-doc/issues{/number}","pulls_url":"https://api.github.com/repos/turt2live/matrix-doc/pulls{/number}","milestones_url":"https://api.github.com/repos/turt2live/matrix-doc/milestones{/number}","notifications_url":"https://api.github.com/repos/turt2live/matrix-doc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/turt2live/matrix-doc/labels{/name}","releases_url":"https://api.github.com/repos/turt2live/matrix-doc/releases{/id}","deployments_url":"https://api.github.com/repos/turt2live/matrix-doc/deployments","created_at":"2017-02-06T19:08:40Z","updated_at":"2018-06-05T21:56:48Z","pushed_at":"2018-08-08T16:07:10Z","git_url":"git://github.com/turt2live/matrix-doc.git","ssh_url":"git@github.com:turt2live/matrix-doc.git","clone_url":"https://github.com/turt2live/matrix-doc.git","svn_url":"https://github.com/turt2live/matrix-doc","homepage":null,"size":7539,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"matrix-org:master","ref":"master","sha":"c8a8fdfa8deda9b8fc1e0be0585e9eb58acbd4a5","user":{"login":"matrix-org","id":8418310,"node_id":"MDEyOk9yZ2FuaXphdGlvbjg0MTgzMTA=","avatar_url":"https://avatars2.githubusercontent.com/u/8418310?v=4","gravatar_id":"","url":"https://api.github.com/users/matrix-org","html_url":"https://github.com/matrix-org","followers_url":"https://api.github.com/users/matrix-org/followers","following_url":"https://api.github.com/users/matrix-org/following{/other_user}","gists_url":"https://api.github.com/users/matrix-org/gists{/gist_id}","starred_url":"https://api.github.com/users/matrix-org/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matrix-org/subscriptions","organizations_url":"https://api.github.com/users/matrix-org/orgs","repos_url":"https://api.github.com/users/matrix-org/repos","events_url":"https://api.github.com/users/matrix-org/events{/privacy}","received_events_url":"https://api.github.com/users/matrix-org/received_events","type":"Organization","site_admin":false},"repo":{"id":24998719,"node_id":"MDEwOlJlcG9zaXRvcnkyNDk5ODcxOQ==","name":"matrix-doc","full_name":"matrix-org/matrix-doc","owner":{"login":"matrix-org","id":8418310,"node_id":"MDEyOk9yZ2FuaXphdGlvbjg0MTgzMTA=","avatar_url":"https://avatars2.githubusercontent.com/u/8418310?v=4","gravatar_id":"","url":"https://api.github.com/users/matrix-org","html_url":"https://github.com/matrix-org","followers_url":"https://api.github.com/users/matrix-org/followers","following_url":"https://api.github.com/users/matrix-org/following{/other_user}","gists_url":"https://api.github.com/users/matrix-org/gists{/gist_id}","starred_url":"https://api.github.com/users/matrix-org/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matrix-org/subscriptions","organizations_url":"https://api.github.com/users/matrix-org/orgs","repos_url":"https://api.github.com/users/matrix-org/repos","events_url":"https://api.github.com/users/matrix-org/events{/privacy}","received_events_url":"https://api.github.com/users/matrix-org/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/matrix-org/matrix-doc","description":"Matrix Documentation (including The Spec)","fork":false,"url":"https://api.github.com/repos/matrix-org/matrix-doc","forks_url":"https://api.github.com/repos/matrix-org/matrix-doc/forks","keys_url":"https://api.github.com/repos/matrix-org/matrix-doc/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matrix-org/matrix-doc/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matrix-org/matrix-doc/teams","hooks_url":"https://api.github.com/repos/matrix-org/matrix-doc/hooks","issue_events_url":"https://api.github.com/repos/matrix-org/matrix-doc/issues/events{/number}","events_url":"https://api.github.com/repos/matrix-org/matrix-doc/events","assignees_url":"https://api.github.com/repos/matrix-org/matrix-doc/assignees{/user}","branches_url":"https://api.github.com/repos/matrix-org/matrix-doc/branches{/branch}","tags_url":"https://api.github.com/repos/matrix-org/matrix-doc/tags","blobs_url":"https://api.github.com/repos/matrix-org/matrix-doc/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matrix-org/matrix-doc/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matrix-org/matrix-doc/git/refs{/sha}","trees_url":"https://api.github.com/repos/matrix-org/matrix-doc/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matrix-org/matrix-doc/statuses/{sha}","languages_url":"https://api.github.com/repos/matrix-org/matrix-doc/languages","stargazers_url":"https://api.github.com/repos/matrix-org/matrix-doc/stargazers","contributors_url":"https://api.github.com/repos/matrix-org/matrix-doc/contributors","subscribers_url":"https://api.github.com/repos/matrix-org/matrix-doc/subscribers","subscription_url":"https://api.github.com/repos/matrix-org/matrix-doc/subscription","commits_url":"https://api.github.com/repos/matrix-org/matrix-doc/commits{/sha}","git_commits_url":"https://api.github.com/repos/matrix-org/matrix-doc/git/commits{/sha}","comments_url":"https://api.github.com/repos/matrix-org/matrix-doc/comments{/number}","issue_comment_url":"https://api.github.com/repos/matrix-org/matrix-doc/issues/comments{/number}","contents_url":"https://api.github.com/repos/matrix-org/matrix-doc/contents/{+path}","compare_url":"https://api.github.com/repos/matrix-org/matrix-doc/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matrix-org/matrix-doc/merges","archive_url":"https://api.github.com/repos/matrix-org/matrix-doc/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matrix-org/matrix-doc/downloads","issues_url":"https://api.github.com/repos/matrix-org/matrix-doc/issues{/number}","pulls_url":"https://api.github.com/repos/matrix-org/matrix-doc/pulls{/number}","milestones_url":"https://api.github.com/repos/matrix-org/matrix-doc/milestones{/number}","notifications_url":"https://api.github.com/repos/matrix-org/matrix-doc/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matrix-org/matrix-doc/labels{/name}","releases_url":"https://api.github.com/repos/matrix-org/matrix-doc/releases{/id}","deployments_url":"https://api.github.com/repos/matrix-org/matrix-doc/deployments","created_at":"2014-10-09T16:41:02Z","updated_at":"2018-08-08T14:30:14Z","pushed_at":"2018-08-08T16:08:03Z","git_url":"git://github.com/matrix-org/matrix-doc.git","ssh_url":"git@github.com:matrix-org/matrix-doc.git","clone_url":"https://github.com/matrix-org/matrix-doc.git","svn_url":"https://github.com/matrix-org/matrix-doc","homepage":null,"size":7587,"stargazers_count":156,"watchers_count":156,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":85,"mirror_url":null,"archived":false,"open_issues_count":549,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":85,"open_issues":549,"watchers":156,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496"},"html":{"href":"https://github.com/matrix-org/matrix-doc/pull/1496"},"issue":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/issues/1496"},"comments":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/issues/1496/comments"},"review_comments":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496/comments"},"review_comment":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/pulls/1496/commits"},"statuses":{"href":"https://api.github.com/repos/matrix-org/matrix-doc/statuses/c8764161c57ab5abfe90af522a68901385a50c58"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"turt2live"}}