Example #1
0
    private HttpResponseMessage SensorStream(IOnAlertStreamAvailable onAlertStreamAvailable, string teamName)
    {
        var mediaType = "text/event-stream";
        var response  = new HttpResponseMessage(HttpStatusCode.OK)
        {
            Content = new PushStreamContent((stream, content, context) =>
            {
                var client = new TeamEventClient(teamName, stream);
                onAlertStreamAvailable.Execute(client);
            }, mediaType)
        };

        response.Content.Headers.ContentType = new MediaTypeHeaderValue(mediaType);

        return(response);
    }
Example #2
0
 public void Execute(TeamEventClient client)
 {
     _alertStreamService.TryAddClient(client);
 }
Example #3
0
    public void Execute(TeamEventClient client)
    {
        var cachedItems = _alertStreamService.GetCachedEvents(_teamName, _start.ToUniversalTime());

        client.SendCachedData(cachedItems).ContinueWith(x => { _alertStreamService.TryAddClient(client); });
    }