Push notification to users in running environments
Background
JupyterHub currently support a traitlet configurable announcement to show a banner on pages managed by JupyterHub's web server. But JupyterHub currently doesn't provide a way to notify running servers about something. This could be useful by jupyterhub-idle-culler for example but also more generally by custom services developed, for example to give quick feedback to users that starts 1000 workers
Implementation idea seed
I imagine a technical implementation to support this would be to let JupyterHub listen to a REST API that pre-registered services could make use of, and it would then push a notification to user servers using another well defined REST API to receive such notifications implemented by jupyter_server and/or notebook for example. As a final step, that this information is presented to the specific UI the user currently works in, such as Jupyter Lab.
To overview this, I think we have a few technical steps involved: a) For JupyterHub to listen to intent to push a notification, b) for JupyterHub to push a notification, c) for the user environment to listen for notifications, and d) for the user environment to present notifications.
Help
I'd love to input to evaluate developing a feature like this: what would a sensible scope and technical implementation strategy be? Ping @jupyterhub/jupyterhubteam and @fperez!
Source: jupyterhub/jupyterhub