WCF поддерживает HTTP Push?Довольно легко преобразовать произвольный обратный вызов в Rx Observable, вот как я это сделал (в Coffeescript):
this.createRxCallback = () ->
subj = new Rx.Subject()
subj.callback = (params...) -> subj.OnNext(params)
return subj
Затем вы можете взять любую функцию, которая требует обратного вызова, как этот пример из Socket.io:
socket = new io.Socket {node_server_url}
socket.connect()
myCoolObservable = createRxCallback()
socket.on 'message', myCoolObservable.callback
myCoolObservable.Subscribe (x) ->
console.log x
Или простой пример:
clickObservable = createRxCallback()
document.addEventListener 'myButton', clickObservable.callback, true
clickObservable.Subscribe (x) ->
console.log "Button was clicked!"