Project

Profile

Help

HostedRedmine.com has moved to the Planio platform. All logins and passwords remained the same. All users will be able to login and use Redmine just as before. Read more...

Спецификация к продукту (Alpha)

Technical documentation
2014-05-19

Продукт это разрабатываемое на Python приложение для мгновенного обмена сообщениями между пользователями, состоит из двух модулей:
Сервер - работает на удаленной машине и обрабатывает входящие запросы от пользователей.
Клинет - клиентская сторона приложения, отправляет запросы и сообщения, все коммуникации с абонентами, осуществялются посредством запросов, которые обрабатывает и перенаправляет сервер.
База данных - на раннем этапе это просто список с индексом, где будут храниться данные о зарегистрированных абонентов, для роутинга сообщений между ними.
Задачи для Серверной части:
Сервер работает на своем ip адресе и слушает свой порт.
В настройках сервера можно указать количество обрабатываемых подключений от клиентов. Сервер соединен с базой данных, откуда он берет ip адреса абонентов, а также авторизует их в системе.

adressDB=[]
sockInfo = sock.recv(16)
sockInfo in adressDB:
if True:
#creating connection
else:
adressDB.append(sockInfo)
#creating connection
Часть кода демонстрирующая работу базы данных(поиск пользователя в базе)

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

#При регистрации в программе, клиент отправляет данные о логине и пароле на сервер
#Сервер проверяет в базе данных наличие присланного логина. Если указанного логина нет, сервер отправляет запрос с предложением зарегистрироваться
#В окошке программы регистрируемся, отправляем данные на сервер, данные заносятся в базу даных.
#Если пользователь зарегистрирован в системе, сервер готовится принять второй пакет данных от клиента, в котором указаны данные с каким абонентом установить связь

Files