Skip to content

Latest commit

 

History

History
34 lines (22 loc) · 3.23 KB

README.md

File metadata and controls

34 lines (22 loc) · 3.23 KB

Транспорт поверх HTTP [SendBin protocol]

Постановка задачи:

Данный проект реализует транспорт сообщений для мессенджера (клиент-клиент) описанный в ideas.md#C.

Реализация

Транспорт поверх HTTP будет реализован путем публикации паст в ленту заданного пользователя (для каждого пользователя – своя лента) на pastebin.com с помощью их API.

Для отправки сообщения используется функция sendMessages, для принятия сообщений используется функция listen.

Как запустить?

Проект может использоваться вызовом отдельных функций, указанных выше.

В случае демонстрации работоспособности без связки с мессенджером запустить проект можно с помощью UI среды разработки или командной строки.

Отправка сообщений:

/opt/intellij-idea-community/jbr/bin/java-javaagent:/opt/intellij-idea-community/lib/idea_rt.jar=36263:/opt/intellij-idea-community/bin -Dfile.encoding=UTF-8 -classpath /tmp/classpath1097058776.jar com.github.decentralized_hse.messenger_http_transport.sender.MainKt --dev-key <your_dev_key> --from <your_sender_name> --user-key <pastebin_user_key>

Прием сообщений:

/opt/intellij-idea-community/jbr/bin/java-javaagent:/opt/intellij-idea-community/lib/idea_rt.jar=36263:/opt/intellij-idea-community/bin -Dfile.encoding=UTF-8 -classpath /tmp/classpath1097058776.jar com.github.decentralized_hse.messenger_http_transport.listener.MainKt --dev-key <your_dev_key> --from <sender_name> --user-key <pastebin_user_key>

Ключи

dev-key – API ключ pastebin user-key – генерируется пользователем с помощью pastebin при "регистрации", затем передается любым доступным путем другим пользователям, которые впоследствии вводят данный ключ как один из аргументов вызываемой функции.

Демо

Для демонстрации работоспособности проекта мы записали видео с передачей сообщений -- ссылка.