Skip to content

sk4rp/messanger-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Мессенджер

В рамках этого проекта вы научитесь создавать приложение, которое работает в асинхронном режиме, используя современные методы коммуникации между Frontend и Backend.

Цель

Разработать удобный браузерный клиент, позволяющий пользователям оперативно вступать в диалог с зарегистрированными пользователями.

Задачи

Задача 1. Базовый функционал

  1. Аутентификация пользователей:

    • Пользователь может зарегистрироваться в системе.
    • Пользователь может выполнить вход в систему по своему логину и паролю. В качестве логина используется email пользователя. При регистрации ему на почту должно прийти письмо с подтверждением регистрации.
    • В качестве email сервера можно использовать, например, сервисы Яндекс или Google, либо развернуть свой почтовый сервер и отправлять письма встроенным функционалом.
  2. Интерфейс пользователя:

    • После входа пользователь должен увидеть список своих чатов. В первой версии мессенджера это будут личные сообщения тем, кого пользователь добавил в список своих контактов.
    • Пользователь может характеризоваться:
      • Email-ом, при помощи которого осуществляется логин.
      • Ником в сети. Если задан nickname, email можно скрыть в поиске.
    • Пользователь может создавать свой аватар в профиле.
    • Общение между пользователями производится в окне чата. Обмен сообщениями производится в реальном времени, используя асинхронные методы, такие как WebSocket, LongPolling requests и другие.
  3. Настройки профиля:

    • Задать или изменить свой nickname (уникален).
    • Задать или изменить свой аватар. При отсутствии показывается стандартная картинка.
    • Скрыть или показать свой email.

Задача 2. Групповые чаты и улучшения

  1. Групповые чаты:

    • Создание групповых чатов через popup-меню, используя функционал поиска пользователей.
    • В чат можно добавлять только пользователей из своих контактов.
  2. Функционал сообщений:

    • Редактирование и удаление сообщений: При клике правой кнопкой мыши по сообщению система предлагает опции «Отредактировать сообщение» и «Удалить сообщение». При редактировании текст сообщения подгружается в поле ввода, а после изменения обновляется как в интерфейсе, так и в БД.
    • Пересылка сообщений: При клике правой кнопкой мыши по сообщению система предлагает опцию «Переслать сообщение». Сообщение можно переслать внутри списка контактов.
  3. Уведомления и оповещения:

    • При поступлении нового сообщения должен срабатывать короткий звуковой сигнал.
    • Чат имеет возможность отключения оповещений. При нажатии правой кнопкой мыши по чату система показывает выпадающее меню с опцией «Включить/Отключить оповещения». Чат с отключенными оповещениями должен отличаться в списке от чатов с включенными оповещениями.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published