Page MenuHomePhabricator

Enable notification server (real-time pop-up notifications) in Phabricator
Closed, ResolvedPublic

Tokens
"Mountain of Wealth" token, awarded by Aklapper."Mountain of Wealth" token, awarded by Qgil."Mountain of Wealth" token, awarded by Niharika."Love" token, awarded by Sjoerddebruin."Love" token, awarded by TerraCodes."Pterodactyl" token, awarded by Dzahn."Like" token, awarded by Unicornisaurous."Love" token, awarded by Luke081515."Like" token, awarded by Quiddity."Like" token, awarded by Jdforrester-WMF.
Assigned To
Authored By
Qgil, Oct 21 2014

Description

Phabricator has pop-up notifications that appear when the page you are looking at is updated. It will be useful after the Bugzilla migration, when the number of concurrent users increases.

Technical documentation: https://secure.phabricator.com/book/phabricator/article/notifications
Related task upstream: Change notification system implementation not to require Flash

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
In T765#22220, @Qgil wrote:

Meh, true. Flash. This doesn't help, but I guess we can still discuss?

In T765#22204, @mmodell wrote:

The problem is that the notification system uses an embedded flash plugin to communicate with the server, and it requires opening the flash security policy port on the server. So there are security implications as well as non-free-software implications.

@csteipp, is this a blocker?

@mmodell, can you elaborate on / link to what flash policy stuff needs to happen? I can't imagine it would be talking cross domain, so should just be us hosting the flash file, but I'm probably missing something.

In T765#22302, @Qgil wrote:

Thanks Quim, that will get me started. I'd like to review Aphlict in general before we enable it. I'm assuming deploying node on that server and allowing the inbound ports won't be an issue for ops?

@csteipp: the aphlict server handles serving the flash policy file by listening for http requests on port 843. So it's not a separate server process but it is an additional port that needs to be open and must be forwarded from the front-end proxy. (It's mentioned in the docs that @Qgil linked above)

Filed the Flash issue upstream at https://secure.phabricator.com/T6559 ("Change notification system implementation not to require Flash").

Qgil updated the task description. (Show Details)Nov 15 2014, 1:02 AM
Qgil renamed this task from Enable pop-up notifications in Phabricator to Enable notification server (real-time pop-up notifications) in Phabricator.Nov 27 2014, 7:10 AM
Qgil moved this task from To Triage to Need discussion on the Phabricator board.
Qgil added a subscriber: Rfarrand.Dec 1 2014, 8:23 AM
Qgil changed the task status from Open to Stalled.Dec 8 2014, 9:53 AM
Qgil moved this task from Need discussion to To Triage on the Phabricator board.

This task is waiting for T1286: Aphlict security review.

Assuming T1286 do we want to do this since it requires flash?

I personally get the meh-ness but also having had the real time popups before they really do help useability, especially as we start to discover differential.

Seems worth having to me, user who have flash disabled I assume will just not get real time notification?

Qgil added a comment.Dec 29 2014, 9:25 AM

The fact that we are waiting on T1286 assumes that yes, we want to have this feature regardless of the Flash dependency.

csteipp changed the status of subtask T1286: Aphlict security review from Open to Stalled.Jan 7 2015, 6:22 PM

https://secure.phabricator.com/T6559 is now resolved – does this change anything?

Qgil added a comment.Jan 8 2015, 9:21 PM

fwiw I have asked in T1286: Aphlict security review

We might want to wait a bit before deploying this new version in our instance? Like some weeks after deployment upstream, or something.

Qgil added a comment.Jan 8 2015, 9:24 PM

Ah, this is the task to follow upstream now: Notifications now use WebSockets

Mattflaschen-WMF added a comment.EditedJan 9 2015, 5:41 AM

https://secure.phabricator.com/T6559 is now resolved – does this change anything?

Quim's link mentions some technical info (though it's mainly for people upgrading from the old Aphlict server, which doesn't apply to us) about the WebSocket version.

They did float the idea of dropping node.js and using PHP for WebSocket, but there's no movement on that task so far, so it's unclear either way. They've already done release notes for the node.js WebSocket version, so it doesn't seem like an imminent thing.

Mattflaschen-WMF changed the task status from Stalled to Open.Jan 9 2015, 5:41 AM

I've already tagged a release that should be getting deployed next week, however, I might be able to sneak this in.

Qgil added a comment.Jan 9 2015, 9:54 PM

@mmodell T1286: Aphlict security review is still a blocker. I would not rush.

brion added a subscriber: brion.Feb 24 2015, 6:35 PM

@Qgil: I don't think security is as much of an issue as it now uses websockets, however, getting websockets to work with out proxy setup is a different story.

jayvdb added a subscriber: jayvdb.Jun 11 2015, 6:44 AM
Restricted Application added a subscriber: scfc. · View Herald TranscriptJun 12 2015, 9:03 PM

What's the status?

Dzahn awarded a token.Jan 4 2016, 9:43 PM
Dzahn added a comment.Jan 4 2016, 9:46 PM

What's the status?

It's blocked by T112765

Qgil removed a subscriber: Qgil.Feb 11 2016, 12:12 PM
TerraCodes added a subscriber: TerraCodes.
Paladox moved this task from To Triage to Misc on the Phabricator board.Jul 16 2016, 12:17 PM
Tgr added a subscriber: Tgr.Sep 17 2017, 10:22 PM

Looks like this fell off the priority list some time ago. Is it possible to reconsider that? Notifications for tasks is nice to have; notifications for Conpherence chatrooms is must have. A chat session where you have to refresh the browser is utter ridiculousness. A chat system where someone pings you and you don't get any notification whatsoever is completely broken. (The email notification is not granular enough to user without being very disruptive.)

Right now we don't have any system for communicating with newcomers. IRC is dysfunctional without a bouncer and setting up bouncers is hard; Conpherence is broken. At this point, if there is no commitment to fixing it soonish, I think using Slack or some other third-party irclike is the only realistic solution :(

@Tgr: this is ready to go from the phabricator side, however, I still need help from network ops to get the websocket tunneled through our proxy & cache layer. That work is T112765: Phabricator needs to expose notification daemon (websocket)

Change 379005 had a related patch set uploaded (by 20after4; owner: 20after4):
[operations/puppet@production] Phabricator: configure notification server

https://gerrit.wikimedia.org/r/379005

Change 379005 merged by Dzahn:
[operations/puppet@production] Phabricator: configure notification server

https://gerrit.wikimedia.org/r/379005

Change 379422 had a related patch set uploaded (by Dzahn; owner: Dzahn):
[operations/puppet@production] phab/aphlict: use groups instead of gid, remove require

https://gerrit.wikimedia.org/r/379422

Change 379422 merged by Dzahn:
[operations/puppet@production] phab/aphlict: remove require for group by user

https://gerrit.wikimedia.org/r/379422

Change 379439 had a related patch set uploaded (by Dzahn; owner: Dzahn):
[operations/puppet@production] phab/aphlict: ensure aphlict group always exists

https://gerrit.wikimedia.org/r/379439

Change 379439 merged by Dzahn:
[operations/puppet@production] phab/aphlict: ensure aphlict group always exists

https://gerrit.wikimedia.org/r/379439

on phab1001 (prod active) server:

Notice: /Stage[main]/Phabricator::Aphlict/Base::Service_unit[aphlict]/Service[aphlict]/ensure: ensure changed 'stopped' to 'running'
Info: /Stage[main]/Phabricator::Aphlict/Base::Service_unit[aphlict]/Service[aphlict]: Unscheduling refresh on Service[aphlict]

service starts now :)

Qgil awarded a token.Sep 26 2017, 8:37 PM
mmodell closed this task as Resolved.Nov 7 2017, 9:10 PM
mmodell claimed this task.
Qgil added a comment.Nov 10 2017, 9:22 PM

Today I saw the first pop-up. Cool! Thank you very much for chasing this one till the end.

Ye, thanks for getting this to work (now to wait for upstream to do https://secure.phabricator.com/T8924)

In T765#3751924, @Qgil wrote:

Today I saw the first pop-up. Cool! Thank you very much for chasing this one till the end.

Please, can you help with the necessary steps to add this improvement in my local phabricator. So far, right now I only have sound notifications, however I'm so interested in pop-up notifications. Thanks

Hi @AlDiabolik, please refer to https://discourse.phabricator-community.org/ for any general Phabricator support questions. Thanks.