Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/29: Рейтинг темы: голосов - 29, средняя оценка - 4.76
4 / 4 / 0
Регистрация: 10.11.2014
Сообщений: 27

Алгоритм создания онлайн-чата

02.01.2015, 19:36. Показов 6164. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.

Я решил создать подобие онлайн-чата на С#. Клиентская часть почти готова. Теперь передо мной встал вопрос: как реализовать серверную?
Например, когда пользователь входит в чат, это отправляется на сервер и оттуда всем его друзьям приходит уведомление, что он в сети. Или же у каждого пользователя есть аватарка, которая загружается в программу методом Image.Load(URL).
Так вот, вопрос: как это всё реализовать? Как сделать, чтобы сайт обрабатывал ТСР запросы, отвечал на них, и всё остальное? Какой ЯП для этого нужно (наверное) учить?

Жду ответов от знающих своё дело людей.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.01.2015, 19:36
Ответы с готовыми решениями:

Написание онлайн чата для сайта.
Приветствую! Не совсем уверен насчёт того, что попал в нужный раздел. В последнее время на сайтах очень часто есть окошко онлайн...

Сокеты на PHP. Создание онлайн чата
Доброго времени суток. Недавно наткнулся на вот это http://php.net/manual/ru/book.sockets.php И сразу стало интересно. Возможно ли на...

Создание и перенос онлайн-чата на сервер
создал простенький чат по примеру с сайта разработчиков http://socket.io/get-started/chat/ на компутере работает как локальный сервер...

13
4 / 4 / 2
Регистрация: 06.04.2014
Сообщений: 26
12.01.2015, 18:42
Про класс Socket почитай. На шарпе как и на остальных ЯП, это можно реализовать.
0
Эксперт .NET
 Аватар для Wolfdp
3789 / 1766 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
13.01.2015, 11:30
Snoopy131, это web-клиент. ;-)

По теме: как вариант, задействовать SignalR (есть куча уроков по этой технологии). Можно и самому на js гонять ajax-запросы по такой схеме:

- при первом заходе в hidden считываем индификатор последнего сообщения и весь текущий чат
- дальше отправляем этот индификатор (через ajax) и ждем ответа плана(да/нет)
- если ответ положительный, обновляем чат

На серверной части самый простой вариант -- держать все в Application. Чуть лучше: поднять сервис. Ещё вариант: работать исключительно с БД.

p.s. если будет очень скучно, возможно скину какой-нибудь пример.
0
4 / 4 / 0
Регистрация: 10.11.2014
Сообщений: 27
13.01.2015, 15:42  [ТС]
Объясню поподробней.

Есть клиент и сервер. НО для сервера невыгодно заказывать VPS. Вот мне и нужно реализовать это как-нибудь с помощью сайта (тот же самый хостингер), но не знаю, как именно сделать например сохранение картинок на хосте, как сделать ожидание ТСР пакета, именно на сайте.

Например тот же самый скайп, как работает, как аватарки сохраняются на сервере, как история диалогов сохраняется (и где), вот мне нужно примерно это (конечно гораздо проще).

Wolfdp, я почитал, это(SignalR) немного не то, что нужно. В БД (MySQL) сохраняется вся инфа об аккаунте, но там же нельзя сохранять картинки или все сообщения.

Жду помощи, вопрос актуален, заранее спасибо за помощь.



P.S. Наткнулся на урок, но я не знаю, как например отрегулировать месторасположение кнопок, и т.д.(визуальное оформление) + как сохранять историю, картинки.
0
4 / 4 / 0
Регистрация: 10.11.2014
Сообщений: 27
17.01.2015, 19:48  [ТС]
Подниму, актуально.
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.01.2015, 20:00
Без офигенного опыта в разработке программ именно того самого класса, позволяющего писать их с закрытыми глазами в центре базара при температуре за сорок две штуки одновременно одну правой, а другую левой рукой и одновременно ещё обсуждать по телефону покупку автозапчастей, написав только одну из двух парных программ, быть уверенным, что действительно её написал. Может это поделие вообще не имеет с чатом ничего общего? От того, что ты накидал на форму компонентов, которые должны пригодиться в чате, чат клиентом она не станет. А опыту в разработке клиентов неоткуда взяться, пока действительно не напишешь кучу клиентов, причём, точно зная, что написал. Получается, что если ты уверен в том, что клиент у тебя есть, то ты или параллельно должен был написать сервер, или ты раньше уже написал столько серверов, что можешь учить этому других. Однако ты спрашиваешь, как его писать. Значит не известно, есть ли у тебя клиент.
0
Фрилансер
735 / 352 / 96
Регистрация: 05.05.2014
Сообщений: 2,621
17.01.2015, 20:03
книгу сначала по MVC любую прочитай. ты можешь и по примеру для нубов сделать - http://metanit.com/sharp/mvc5/16.1.php. а если за 2 недели не понял как, то читай ASP.NET для самых маленьких.
2
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.01.2015, 20:04
Цитата Сообщение от Just_Neshta Посмотреть сообщение
Например тот же самый скайп, как работает, как аватарки сохраняются на сервере, как история диалогов сохраняется (и где), вот мне нужно примерно это (конечно гораздо проще).
На сервере скайпа не сохраняется ничего. Он только запоминает IP при входе каждого клиента и когда этому клиенту звонят, на сервер скайпа идёт запрос от вызывающего клиента, он выдаёт ему нужный IP и дальше он соединяется уже с клиентом по этому айпи. В локалке это приводит к тому, что как только соединение установлено, можно оборвать связь с интернетом и продолжать болтать по скайпу, так как весь трафик идёт только в ней.
0
Фрилансер
735 / 352 / 96
Регистрация: 05.05.2014
Сообщений: 2,621
17.01.2015, 20:08
taras atavin, сразу видно ты ни разу не юзал бутстрапа и джиквери и кучи плагинов на нем

Добавлено через 2 минуты
taras atavin, ты не туда зашел. сегодня абстракция несколько выше айпи адресов.

Добавлено через 1 минуту
taras atavin, опять же для самых маленьких - http://metanit.com/sharp/mvc5/16.1.php. в 21 веке
2
4 / 4 / 0
Регистрация: 10.11.2014
Сообщений: 27
17.01.2015, 20:15  [ТС]
Спасибо, грам.
0
Фрилансер
735 / 352 / 96
Регистрация: 05.05.2014
Сообщений: 2,621
17.01.2015, 20:17
Just_Neshta, http://metanit.com/sharp/mvc.php считаю хорошей отправной точкой, сам с него начинал.
2
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.01.2015, 06:42
Цитата Сообщение от pro_100_gram Посмотреть сообщение
taras atavin, опять же для самых маленьких - http://metanit.com/sharp/mvc5/16.1.php. в 21 веке
ну после
Цитата Сообщение от pro_100_gram Посмотреть сообщение
taras atavin, ты не туда зашел. сегодня абстракция несколько выше айпи адресов.
можно уже не искать, кто здесь маленький.

Добавлено через 37 секунд
Цитата Сообщение от pro_100_gram Посмотреть сообщение
taras atavin, сразу видно ты ни разу не юзал бутстрапа и джиквери и кучи плагинов на нем
Инструмент не отменяет парности клиента и сервера.
0
Фрилансер
735 / 352 / 96
Регистрация: 05.05.2014
Сообщений: 2,621
18.01.2015, 09:26
taras atavin, почитай что такое вебсокеты.
протокол полнодуплексной связи поверх TCP-соединения, предназначенный для обмена сообщениями между браузером и веб-сервером в режиме реального времени.
Добавлено через 4 минуты
taras atavin, соединение по скайпу называется p2p
2
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.01.2015, 15:27
Цитата Сообщение от pro_100_gram Посмотреть сообщение
taras atavin, соединение по скайпу называется p2p
Ну а я о чём?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.01.2015, 15:27
Помогаю со студенческими работами здесь

Стили для создания чата
Добрый день все. Я пытаюсь создать чат на андройд для своего сайта. Вся суть передачи и получения данных мне известна, но так как я совсем...

Выбор технологии для создания чата
Всем привет! В сети очень много информации на тему выбора той или иной технологии для создания приложения. И нет однозначных ответов. Я...

Работа с Socet для создания чата на с++
Здравствуйте форумчане, совсем недавно я загорелся желанием создать чат на с++, но столкнулся с проблемой что в сети нету нормального...

PhP для создания мини чата
Здравствуйте, оч хорошо знаю Html и C++, вообще возникла идея создать что то типо сервер - клиент, в нете вычитал что такое возможно только...

Скрипт для создания чата консультанта на сайт
Кто может знает скрипт для создания чата консультанта на сайт? Хранить данные можно как-угодно, в том числе и SQL базы данных


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru