HomePhabricator

Publish additional context to the Aphlict server.

Description

Publish additional context to the Aphlict server.

Summary:
Ref T4324. As well as sending the key for the notification, also publish the notification type and a list of subscribers to the Aphlict server.

The idea here is that the Aphlict server passes anything within the data key to the clients, whereas other keys (such as subscribers) will be used by the server to determine where the notifications should be routed.

Note that these changes don't do anything useful, but are a prerequisite for further work on T4324.

Test Plan:
Sent myself test notifications at /notification/status/. Also inspected the Aphlict server debug output:

> sudo ./bin/aphlict --foreground
Starting server in foreground, ignoring pidfile...
Launching server:

    $ node '/usr/src/phabricator/support/aphlict/server/aphlict_server.js' --port='22280' --admin='22281' --host='localhost' --user='aphlict' --log='/var/log/aphlict.log'

[Thu Jun 05 2014 18:38:14 GMT+0000 (UTC)] Started Server (PID 15437)
[Thu Jun 05 2014 18:38:16 GMT+0000 (UTC)] <FlashPolicy> Policy Request From ::ffff:10.0.0.1
[Thu Jun 05 2014 18:38:16 GMT+0000 (UTC)] <Listener/1> Connected from ::ffff:10.0.0.1
[Thu Jun 05 2014 18:38:19 GMT+0000 (UTC)] notification: {"data":{"key":"6021516228036848559","type":"notification"},"subscribers":["PHID-USER-cb5af6p4oepy5tlgqypi"]}
[Thu Jun 05 2014 18:38:19 GMT+0000 (UTC)] <Listener/1> Wrote Message

Reviewers: epriestley, Blessed Reviewers

Reviewed By: epriestley, Blessed Reviewers

Subscribers: epriestley, Korvin

Maniphest Tasks: T4324

Differential Revision: https://secure.phabricator.com/D9396

Details

Provenance
joshuaspenceAuthored on
epriestleyCommitted on Jun 5 2014, 7:09 PM
epriestleyPushed on Jun 5 2014, 7:09 PM
Reviewer
Blessed Reviewers
Differential Revision
D9396: Publish additional context to the Aphlict server.
Parents
rPac2b91711fad: Update Maniphest "Reports" to base UI
Branches
Unknown
Tags
Unknown
Tasks
T4324: Change notification server so it only alerts appropriate clients

Event Timeline