Распределенное приложение для чата по локальной сети в терминале (без сервера!). Запустите приложение в своем терминале и напишите в локальную сеть!
Построен на основе tui-rs для создания пользовательского интерфейса терминала и message-io для установления сетевых подключений.
Для его установки вы можете использовать менеджер грузовых пакетов.
$ cargo install termchat --all-features
Если у вас есть ~/.cargo/bin
в вашем PATH (или что-то подобное в вашей ОС), вы сможете использовать termchat везде на своем компьютере!
Также вы можете скачать последнюю версию для своей машины из раздела Releases.
termchat
можно установить из доступных пакетов AUR с помощью помощника AUR. Например,
$ yay -S termchat
При желании вы можете клонировать пакеты AUR, а затем скомпилировать их с помощью makepkg. Например,
$ git clone https://aur.archlinux.org/termchat.git && cd termchat && makepkg -si
Чтобы не перегружать сеть, termchat использует только одно многоадресное сообщение при запуске, чтобы найти другие приложения termchat в сети. Как только новое приложение обнаружено посредством многоадресной рассылки, между ними создается TCP-соединение.
Просто напишите:
$ termchat
чтобы открыть приложение в вашем терминале.
По умолчанию используется имя пользователя вашего компьютера. Вы можете использовать другое имя пользователя с -u <name>
Вы можете изменить адрес многоадресного обнаружения с помощью -d <address>
Вы можете установить собственный порт TCP-сервера с помощью -t <port>
(дополнительную информацию см. в справке приложения --help
).
termchat особым образом обрабатывает сообщения, содержащие следующие команды:
?send <$path_to_file>
: отправляет указанный файл всем в сети, пример: ?send ./myfile
Примечание. Полученные файлы можно найти в /tmp/ termchat /< termchat -username>/<file_name>
в Linux или Mac или %USERPROFILE%AppdataLocalTemp termchat < termchat -username><file-name>
если вы используете Windows.
?startstream
/ ?stopstream
: запускает/останавливает видеопоток и отправляет его всем узлам. В настоящее время это поддерживается только в Linux, другие платформы могут получать только видео.
termchat хранит свою конфигурацию в простом файле, расположенном по адресу $ConfigDir/ termchat /config
в Mac или Linux или %USERPROFILE%AppDataRoaming termchat config
при использовании Windows.
Конфигурация по умолчанию:
discovery_addr = "238.255.0.1:5877"
tcp_server_port = 0
user_name = "my_awesome_user_name"
terminal_bell = true
[theme]
message_colors = ["Blue", "Yellow", "Cyan", "Magenta"]
my_user_color = "Green"
date_color = "DarkGray"
system_info_color = ["Cyan", "LightCyan"]
system_warning_color = ["Yellow", "LightYellow"]
system_error_color = ["Red", "LightRed"]
chat_panel_color = "White"
progress_bar_color = "LightGreen"
command_color = "LightYellow"
input_panel_color = "White"
Вопрос: Хосты невозможно отключить.
А:
Убедитесь, что ни один брандмауэр не запущен (пример: ufw), и в этом случае либо остановите его, либо добавьте порты termchat в белый список.
По умолчанию вам необходимо разрешить порт 5877/udp
и port X/tcp
, X
меняется при каждом запуске. Обратите внимание, что вы можете указать собственный TCP-порт, как указано выше, и добавить его в белый список брандмауэра.
Вопрос: Могу ли я отключить звонок терминала, когда получил сообщение?
А: Да! Вы можете запустить termchat
передав флаг --quiet-mode
или простой -q
.
В: Я ничего не вижу на своем рабочем столе со светлой темой!!!
О: Вы можете использовать termchat --theme light
, а также можете настроить цвета индивидуально через файл конфигурации.