signalR

brijbhansingh
brijbha...
Member
54 Points
2 Posts

i have signalR chat code which is properly work in localhost but when i host on server it does't work

please help me...........

Views: 9819
Total Answered: 7
Total Marked As Answer: 0
Posted On: 14-Oct-2015 04:52

Share:   fb twitter linkedin
Answers
Rahul Maurya
Rahul M...
Teacher
4822 Points
23 Posts
         

hi brijbhan,

Is there any error occurred? If so please provide error code.

Posted On: 14-Oct-2015 06:36
brijbhansingh
brijbha...
Member
54 Points
2 Posts
         

This is code:

<!DOCTYPE html>
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
 
<title></title>
 
<link type="text/css" rel="stylesheet" href="Css/ChatStyle.css" />
 
<link rel="stylesheet" href="/Css/JQueryUI/themes/base/jquery.ui.all.css">
 
<!--Script references. -->
 
<!--Reference the jQuery library. -->
 
<script src="/Scripts/jquery-1.8.2.min.js"></script>
 
<script src="/Scripts/ui/jquery.ui.core.js"></script>
 
<script src="/Scripts/ui/jquery.ui.widget.js"></script>
 
<script src="/Scripts/ui/jquery.ui.mouse.js"></script>
 
<script src="/Scripts/ui/jquery.ui.draggable.js"></script>
 
<script src="/Scripts/ui/jquery.ui.resizable.js"></script>
 
<!--Reference the SignalR library. -->
 
<script src="/Scripts/jquery.signalR-1.0.0.js"></script>
 
 
<!--Reference the autogenerated SignalR hub script. -->
 
<script src="/signalr/hubs"></script>
 
<!-- <script src="<%= ResolveUrl("~/signalr/hubs") %>" type="text/javascript"></script>-->
 
<script type="text/javascript">
$(function () {
setScreen(false);
 
// Declare a proxy to reference the hub.
 
var chatHub = $.connection.chatHub;
registerClientMethods(chatHub);
 
// Start Hub
$.connection.hub.start().done(function () {
registerEvents(chatHub)
});
});
 
function setScreen(isLogin) {
 
if (!isLogin) {
$("#divChat").hide();
$("#divLogin").show();
}
 
else {
$("#divChat").show();
$("#divLogin").hide();
}
}
 
function registerEvents(chatHub) {
$("#btnStartChat").click(function () {
 
var name = $("#txtNickName").val();
 
if (name.length > 0) {
chatHub.server.connect(name);
}
 
else {
alert("Please enter name");
}
});
 
$('#btnSendMsg').click(function () {
 
var msg = $("#txtMessage").val();
 
if (msg.length > 0) {
 
var userName = $('#hdUserName').val();
chatHub.server.sendMessageToAll(userName, msg);
$("#txtMessage").val('');
}
});
 
$("#txtNickName").keypress(function (e) {
 
if (e.which == 13) {
$("#btnStartChat").click();
}
});
$("#txtMessage").keypress(function (e) {
 
if (e.which == 13) {
$('#btnSendMsg').click();
}
});
 
}
 
function registerClientMethods(chatHub) {
 
// Calls when user successfully logged in
chatHub.client.onConnected =
function (id, userName, allUsers, messages) {
setScreen(true);
$('#hdId').val(id);
$('#hdUserName').val(userName);
$('#spanUser').html(userName);
 
// Add All Users
 
for (i = 0; i < allUsers.length; i++) {
AddUser(chatHub, allUsers[i].ConnectionId, allUsers[i].UserName);
}
 
// Add Existing Messages
 
for (i = 0; i < messages.length; i++) {
AddMessage(messages[i].UserName, messages[i].Message);
 
}
 
}
 
// On New User Connected
chatHub.client.onNewUserConnected =
function (id, name) {
AddUser(chatHub, id, name);
}
 
 
// On User Disconnected
chatHub.client.onUserDisconnected =
function (id, userName) {
$('#' + id).remove();
 
var ctrId = 'private_' + id;
$('#' + ctrId).remove();
 
 
var disc = $('<div class="disconnect">"' + userName + '" logged off.</div>');
$(disc).hide();
$('#divusers').prepend(disc);
$(disc).fadeIn(200).delay(200).fadeOut(200);
}
chatHub.client.messageReceived =
function (userName, message) {
AddMessage(userName, message);
}
 
chatHub.client.sendPrivateMessage =
function (windowId, fromUserName, message) {
 
var ctrId = 'private_' + windowId;
 
 
if ($('#' + ctrId).length == 0) {
createPrivateChatWindow(chatHub, windowId, ctrId, fromUserName);
}
$('#' + ctrId).find('#divMessage').append('<div class="message"><span class="userName">' + fromUserName + '</span>: ' + message + '</div>');
 
// set scrollbar
 
var height = $('#' + ctrId).find('#divMessage')[0].scrollHeight;
$('#' + ctrId).find('#divMessage').scrollTop(height);
}
}
 
function AddUser(chatHub, id, name) {
 
var userId = $('#hdId').val();
 
var code = "";
 
if (userId == id) {
code = $('<div class="loginUser">' + name + "</div>");
}
 
else {
code = $('<a id="' + id + '" class="user" >' + name + '<a>');
$(code).dblclick(
function () {
 
var id = $(this).attr('id');
 
if (userId != id)
OpenPrivateChatWindow(chatHub, id, name);
});
}
$("#divusers").append(code);
}
 
function AddMessage(userName, message) {
$('#divChatWindow').append('<div class="message"><span class="userName">' + userName + '</span>: ' + message + '</div>');
 
var height = $('#divChatWindow')[0].scrollHeight;
$('#divChatWindow').scrollTop(height);
}
 
function OpenPrivateChatWindow(chatHub, id, userName) {
 
var ctrId = 'private_' + id;
 
if ($('#' + ctrId).length > 0) return;
createPrivateChatWindow(chatHub, id, ctrId, userName);
}
 
function createPrivateChatWindow(chatHub, userId, ctrId, userName) {
 
var div = '<div id="' + ctrId + '" class="ui-widget-content draggable" rel="0">' +
 
'<div class="header">' +
 
'<div style="float:right;">' +
 
'<img id="imgDelete" style="cursor:pointer;" src="/Images/delete.png"/>' +
 
'</div>' +
 
'<span class="selText" rel="0">' + userName + '</span>' +
 
'</div>' +
 
'<div id="divMessage" class="messageArea">' +
 
'</div>' +
 
'<div class="buttonBar">' +
 
'<input id="txtPrivateMessage" class="msgText" type="text" />' +
 
'<input id="btnSendMessage" class="submitButton button" type="button" value="Send" />' +
 
'</div>' +
 
'</div>';
 
var $div = $(div);
 
// DELETE BUTTON IMAGE
$div.find('#imgDelete').click(function () {
$('#' + ctrId).remove();
});
 
// Send Button event
$div.find("#btnSendMessage").click(function () {
$textBox = $div.find("#txtPrivateMessage");
 
var msg = $textBox.val();
 
if (msg.length > 0) {
chatHub.server.sendPrivateMessage(userId, msg);
$textBox.val(
'');
}
});
 
// Text Box event
$div.find("#txtPrivateMessage").keypress(function (e) {
 
if (e.which == 13) {
$div.find("#btnSendMessage").click();
}
});
AddDivToContainer($div);
}
 
function AddDivToContainer($div) {
$('#divContainer').prepend($div);
$div.draggable({
handle:".header",
stop:
function () {
}
});
 
////$div.resizable({
 
//// stop: function () {
 
//// }
 
////});
}
 
</script>
</head>
<body>
 
<div id="header">
SignalR Chat Room
 
</div>
 
<br />
 
<br />
 
<br />
 
<div id="divContainer">
 
<div id="divLogin" class="login">
 
<div>
Your Name:
<br />
 
<input id="txtNickName" type="text" class="textBox" />
 
</div>
 
<div id="divButton">
 
<input id="btnStartChat" type="button" class="submitButton" value="Start Chat" />
 
</div>
 
</div>
 
<div id="divChat" class="chatRoom">
 
<div class="title">
Welcome to Chat Room [
<span id='spanUser'></span>]
 
</div>
 
<div class="content">
 
<div id="divChatWindow" class="chatWindow">
 
</div>
 
<div id="divusers" class="users" style="display: none">
 
</div>
 
</div>
 
<div class="messageBar">
 
<input class="textbox" type="text" id="txtMessage" />
 
<input id="btnSendMsg" type="button" value="Send" class="submitButton" />
 
</div>
 
</div>
 
<input id="hdId" type="hidden" />
 
<input id="hdUserName" type="hidden" />
 
</div>
</body>
</html>

 

Posted On: 15-Oct-2015 00:29
brijbhansingh
brijbha...
Member
54 Points
2 Posts
         

no error message but only not working

sir please help me...................

 

Posted On: 15-Oct-2015 00:30
Rahul Maurya
Rahul M...
Teacher
4822 Points
23 Posts
         

Hi brijbhansingh,

Any javascript error?

You can check in JavaScript code:

 if (name.length > 0) {
                    chatHub.server.connect(name);
                }

Is it start the connect hub.

Post the hub server code.

Posted On: 15-Oct-2015 00:41
brijbhansingh
brijbha...
Member
54 Points
2 Posts
         

https://www.livechat99.com/signalr2/index.html

https://www.livechat99.com/signalr2/serverchat.html

Posted On: 15-Oct-2015 01:46
Rahul Maurya
Rahul M...
Teacher
4822 Points
23 Posts
         

Hi,

Script file not available. Put script folder to the root directory or remove first slash(/) from each of script path or put full path as:

<script src="https://www.livechat99.com/signalr2/Scripts/jquery-1.8.2.min.js"></script>
<script src="https://www.livechat99.com/signalr2/Scripts/ui/jquery.ui.core.js"></script>
<script src="https://www.livechat99.com/signalr2/Scripts/ui/jquery.ui.widget.js"></script>
<script src="https://www.livechat99.com/signalr2/Scripts/ui/jquery.ui.mouse.js"></script>
<script src="https://www.livechat99.com/signalr2/Scripts/ui/jquery.ui.draggable.js"></script>
<script src="https://www.livechat99.com/signalr2/Scripts/ui/jquery.ui.resizable.js"></script>
<!--Reference the SignalR library. -->
<script src="https://www.livechat99.com/signalr2/Scripts/jquery.signalR-1.0.0.js"></script>

Also check for other path.

Posted On: 15-Oct-2015 02:08
brijbhansingh
brijbha...
Member
54 Points
2 Posts
         
Posted On: 16-Oct-2015 03:42
 Log In to Chat