Skip to content

HegelPro/chatWidget

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChatWidget

Посмотреть приложение можно по ссылке:

Что представляет собой приложение?

Виджет часть

Написано на фреймворке Vue. Виджет связан с сервером посредством web-socket. При открытии виджет проверяет сохранён ли у него token в localstorage. Если сохранен, то клиенту выдается ранее созданный диалог сохраненный в базе данных. Если token не сохранен, то виджет просит пользователя представиться, чтобы менеджер знал, как обращаться к клиенту. После чего, можно вести диалог с менеджером.

Менеджерская часть

Написано на фреймворке Angular. Клиент связан с сервером посредством web-socket сервиса. Пользовательский интерфейс состоит из левой части в которой располагается список всех диалогов. И правой части в которой располагается диалог с конкретным клиентом. При открытии менеджерская часть запрашивает список переписок у сервера, после чего располагает массив клиентов в левой части приложения. При нажатии на пользователя из списка, открывается диалог с этим пользователем. После чего, можно вести диалог с клиентом.

Серверная часть

Написано на Node.js. Представляет собой web-socket сервер с подключенным к нему firebase. Обеспечивает общение между виджетом и менеджером. Общается с web-страницами по REST API имитируя событийную модель. Все диалоги хранятся в базе данных. Сервер умеет добавлять новых пользователей по просьбе виджета, генерировать для них token и отсылать его обратно клиенту. Отдавать диалог пользователя, по предъявлению token. При получении сообщения раздавать их виджетам и менеджеру.

Как запустить приложение?

Виджет часть

cd client/vue

open index.html

Менеджерская часть

cd manager
ng serve

open http://localhost:4200/

Серверная часть

cd server
npm run start

Инструменты используемые в написании приложения:

Виджет часть

  • Vuejs
  • Vuex

Менеджерская часть

  • Angular
  • Bootstrap
  • Rxjs
  • Angular CLI
  • SASS

Серверная часть

  • Node.js
  • Web-socket server
  • Firebase

Автор

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published