You might find https://github.com/saschatimme/elm-phoenix useful to look at, it's an effects manager phoenix channels built on top of the websocket effects manager.
On Tuesday, 16 May 2017 15:30:18 UTC+1, Christophe de Vienne wrote: > > Hi everyone, > > I am attempting to implement the pub/sub NATS (https://nats.io) protocol > on top of the WebSocket API as a TEA component. > > I have a hard time finding an API for subscriptions: for each > subscription some context must be kept, a unique subscription ID > generated and in some case a unique reply subject too, and I would like > each subscription to generate custom messages for the component which > made it. > > I suspect it would be a lot more natural with an effect module, with > which I could (hopefully) write, in any part of the application: > > subscriptions : Model -> Sub Msg > subscriptions model = > Nats.Subscribe model.endpoint "some.subject" MyMessage > > or, for req/rep (a pub + a short-living sub expecting a result): > > myrequest : Model -> Cmd Msg > myrequest model = > Nats.request model.endpoint "a.request.subject" MyReply > > > Another difficulty I have is that in some cases I need to send 2 or 3 > messages through the websocket, in the right order, but WebSocket.send > returns a Cmd. So I have to concat the 3 commands in 1 message, which > works but oblige > > Am I wrong being tempted by using an effect module for this kind of module > ? > If so how can I mimick such an API with a TEA approach ? > If not is there any documentation I can read to get familiar with them ? > > Is there any existing module that does this kind of thing for another > protocol ? > > Thanks! > > -- > Christophe de Vienne > -- You received this message because you are subscribed to the Google Groups "Elm Discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
