At the moment I experimenting with different Shiny like techniques in different environments: python - Tornado, Pharo - Teapot and also SignalR - c#.
As far as I know, SignalR uses Websockets including a fall-back mechanism and a so called „hub“, which calls JS in the client or do some RPC like call of a c# method at the server. But I’m still learning the details for myself
It might be possible to call it from Pharo, but my (long) experience with Microsoft stuff is that they are a little bit in their own world which makes the things tricky. Although, the Microsoft today has a far more open style.