Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
C# JavaScript
Branch: master
Failed to load latest commit information.
src updated js files and readme
.gitignore added new hub connection management
README.md added new hub connection management

README.md

SignalR.EventStream

SignalR.EventStream was born out of a desire to monitor my websites for activities that I was interested in. User signups, logins, errors, anything really. SignalR from David Fowler and Damian Edwards has made that nice and easy.

Page specific streams

If you'd like to update a specific page (for any connected client) such as adding new comments or updating a view count. This utilizes the path information from the url to determine the group this connection belongs to.

<script type="text/javascript">
    $(function () {
        var stream = new PageStream().connect();
        //this would be the same as calling
        // var stream = new EventStream(window.location.pathname).connect();

        stream.eventReceived = function (type, data) {
            var li = $("<li>");
            li.html(data.Message);
            li.appendTo("#messages");
        };
    });
</script>
<ul id="messages"></ul>

You can then send a message to anyone subscribed to this page via the route path.

new EventStream().SendTo("/home/index", "status-update", new { Message = "some message" });

Group specific streams

Similar to above however instead of using PageStream() you would use EventStream(groupName).

<script type="text/javascript">
    $(function () {
        var stream = new EventStream("messages").connect();
        //this would be the same as calling
        // var stream = new EventStream(window.location.pathname).connect();

        stream.eventReceived = function (type, data) {
            var li = $("<li>");
            li.html(data.Message);
            li.appendTo("#messages");
        };
    });
</script>
<ul id="messages"></ul>

You can then send a message to anyone subscribed to this page via the route path.

new EventStream().SendTo("messages", "status-update", new { Message = "some message" });
Something went wrong with that request. Please try again.