Данный проект реализует транспорт сообщений для мессенджера (клиент-клиент) описанный в 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 при "регистрации", затем передается любым доступным путем другим пользователям, которые впоследствии вводят данный ключ как один из аргументов вызываемой функции.
Для демонстрации работоспособности проекта мы записали видео с передачей сообщений -- ссылка.