Skip to content

Простой чат с использованием Kivy (мобильный интерфейс) и RabbitMQ (брокер сообщений)

Notifications You must be signed in to change notification settings

erikrause/Kivy-RabbitMQ_Chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kivy-RabbitMQ_Chat

Для создания пользовательского интерфейса использована библиотека Kivy.

main.py - точка входа.

Вход в приложение

  • Server -- IP адрес сервера с брокером RabbitMQ (почтовый ящик)
  • Nickname -- имя почтового ящика/отправителя

alt text

Окно группового чата

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

alt text

Message Routings:

Каждый тип сообщения закрашивается в определенный цвет в зависимости от routing_key.

  • Сервисные сообщения:
    • Публичные (красные):
      • @who_are_here? - получить список пользователей онлайн;
      • @зашел_в_чат - генерируется при входе в чат.
    • Приватные (оранжевые):
      • @i_am_here! - автоматический ответ на @who_are_here?.
  • Приватные сообщения (фиолетовые) - адресуются конкретным потребителям через обменник amq.direct;
  • Публичные сообщения (синие) - рассылаются всем через обменник amq.famout.

Сервисные сообщения удаляются из очереди сразу после доставки потребителю. Остальные сообщения удаляются из очереди через 24 часа.

About

Простой чат с использованием Kivy (мобильный интерфейс) и RabbitMQ (брокер сообщений)

Topics

Resources

Stars

Watchers

Forks

Languages