Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Microsoft.AspNet.SignalR;
- using Microsoft.Owin;
- using Owin;
- [assembly: OwinStartupAttribute(typeof(MyTrainer.Startup))]
- namespace MyTrainer
- {
- public partial class Startup
- {
- public void Configuration(IAppBuilder app)
- {
- ConfigureAuth(app);
- var config = new HubConfiguration();
- config.EnableDetailedErrors = true;
- config.EnableJavaScriptProxies = true;
- app.MapSignalR("/signalr", config);
- }
- }
- }
- @{
- ViewBag.Title = "ChatRoom";
- }
- <!DOCTYPE html>
- <html>
- <head>
- <title>SignalR Simple Chat</title>
- <style type="text/css">
- .container {
- background-color: #99CCFF;
- border: thick solid #808080;
- padding: 20px;
- margin: 20px;
- }
- </style>
- </head>
- <body>
- <div class="container">
- <input type="text" id="message" />
- <input type="button" id="sendmessage" value="Send" />
- <input type="hidden" id="displayname" />
- <ul id="discussion"></ul>
- </div>
- <!--Script references. -->
- <!--Reference the jQuery library. -->
- <script src="../Scripts/jquery-1.11.3.min.js"></script>
- <!--Reference the SignalR library. -->
- <script src="../Scripts/jquery.signalR-2.2.1.min.js"></script>
- <!--Reference the autogenerated SignalR hub script. -->
- <script src="../signalr/hubs"></script>
- <!--Add script to update the page and send messages.-->
- <script type="text/javascript">
- $(function () {
- // Declare a proxy to reference the hub.
- var chat = $.connection.chatHub;
- // Create a function that the hub can call to broadcast messages.
- chat.client.broadcastMessage = function (name, message) {
- // Html encode display name and message.
- var encodedName = $('<div />').text(name).html();
- var encodedMsg = $('<div />').text(message).html();
- // Add the message to the page.
- $('#discussion').append('<li><strong>' + encodedName
- + '</strong>: ' + encodedMsg + '</li>');
- };
- // Get the user name and store it to prepend to messages.
- $('#displayname').val(prompt('Enter your name:', ''));
- // Set initial focus to message input box.
- $('#message').focus();
- // Start the connection.
- $.connection.hub.start().done(function () {
- $('#sendmessage').click(function () {
- // Call the Send method on the hub.
- chat.server.send($('#displayname').val(), $('#message').val());
- // Clear text box and reset focus for next comment.
- $('#message').val('').focus();
- });
- });
- });
- </script>
- </body>
- </html>
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using Microsoft.AspNet.SignalR;
- namespace MyTrainer
- {
- public class ChatHub : Hub
- {
- public void Send(string name, string message)
- {
- Clients.All.broadcastMessage(name, message);
- }
- }
- }
- public ActionResult ChatRoom()
- {
- return View();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement