Установка telegrtam-cli в Ubuntu и Debian

от автора

Для начала разберём «Зачем?» и надо ли это вам!

Начну с плюсов и полезных фишек:

  1. Самое главное на мой взгляд это легковесность, всего 10мб

  2. Меньше движений(всё легко, быстро и красиво)

  3. Больше степеней свободы(куча фишек которые не всегда есть в приложениях)

  4. Вы можете быть «Призраком»(вы в сети и видите сообщение, но в статусе вы не в сети)

  5. Клиент можно установить на самое разное железо, включая такое скромное, как Raspberry Pi или Orange PI(на котором и будут показаны примеры ниже)

Но не всё так легко, кроме плюсов всегда есть минусы:

  1. ВСЁ КОМАНДАМИ(это очень часто пугает, и многие могут подумать что это что-то выше их понимания)

  2. Всё на английском(хотя я уже держу в планах создание перевода)

  3. Надо разбираться, а на это нужно время

Из этого вы уже сами должны решить, есть ли смысл!

Установка

Видов установок куча, но бывают разные нестыковочки, так что сам я предпочитаю копировать и компилировать на своей стороне(проще говоря не скачиваю готовое, ведь не редко оно запускается с ошибками)

Обновляем пакеты, и ставим прочие нужные:

sudo apt update

sudo apt install git, libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make

Качаем репозиторий:

git clone --recursive https://github.com/vysheng/tg.git

Теперь можно перейти в каталог и приступить к сборке:

cd ./tg

./configure

А вот перед make мы рекомендуем открыть файл ./tgl/mtproto-utils.c и закомментировать или удалить там строки 101 и 115:

assert (0); // As long as nobody ever uses this code, assume it is broken.

В противном случае велик риск получить ошибку вот такого вида:

tgl/mtproto-utils.c:101: BN2ull: Assertion 0' failed. SIGNAL received

И теперь самое долгое, вызываем команду ниже и идём заваривать чай

make

Если всё удачно прошло(если нет, копируйте красную ошибку, вставляйте в гугл и читайте с чем это связано, в данном примере представлена Ubuntu и Debian), то запускаем:

tg/bin/telegram-cli -k tg/tg-server.pub -W

Вас попросят войти и ТАДАМ!

Поздравляем!!! Теперь вы можете использовать консольный клиент телеграмма, но перед этим ознакомьтесь с командами.

Команды

Общение

msg <peer> Text — отправить сообщение пиру

fwd <user> <msg-seqno> — переслать сообщение пользователю. Вы можете видеть номера сообщений, запуская клиент с опцией -N

chat_with_peer <peer> — начать переписку с этим пиром. /exit или /quit для завершения этого режима.

add_contact <phone-number> <first-name> <last-name> — попытаться добавить контакт в список контактов по номеру телефона

rename_contact <user> <first-name> <last-name> — попытаться переименовать контакт. Если у вас есть несколько устройств, то будет битва

mark_read <peer> — отметить прочитанными все сообщения от пира

delete_msg <msg-seqno> — удалить сообщение (но не полностью)

restore_msg <msg-seqno> — восстановить удалённое сообщение. Невозможно для серкретного чата. Возможно только некоторое время спустя (один час, я думаю) после удаления

Мультимедия

send_photo <peer> <photo-file-name> — отправить фото

send_video <peer> <video-file-name> — отправить видео

send_text <peer> <text-file-name> — отправить содержимое файла текстом

load_photo/load_video/load_video_thumb/load_audio/load_document/load_document_thumb <msg-seqno> — загрузить фото/видео/аудио/документ в директорию загрузок

view_photo/view_video/view_video_thumb/view_audio/view_document/view_document_thumb <msg-seqno> — загрузить фото/видео в папку загрузок и открыть стандартным просмоторщиком

fwd_media <msg-seqno> послать медиа файл в сообщении. Используйте это, чтобы скрыть информацию об авторе медиа файла (хотя всё ещё будет возможно найтиuser_id из самого медиа файла, но невозможно получить access_hash этого пользователя)

set_profile_photo <photo-file-name> — установить фотографию профиля. Обрезается до квадрата

Групповые чаты

chat_info <chat> — вывести информацию о чате

chat_add_user <chat> <user> — добавить пользователя в чат

chat_del_user <chat> <user> — удалить пользователя из чата

rename_chat <chat> <new-name>

create_group_chat <chat topic> <user1> <user2> <user3> … — создать групповой чат с пользователями, используйте chat_add_user чтобы добавить больше пользователей

chat_set_photo <chat> <photo-file-name> — поставить фото на чат. Обрезается до квадрата

Поиск

search <peer> pattern — поиск pattern в сообщениях с пиром

global_search pattern — поиск pattern во всех сообщениях

Секретный чат

create_secret_chat <user> — создать секретный чат с пользователем

visualize_key <secret_chat> — вывести визуализацию ключа шифрования. Вы должны сравнить его с ключем вашего собеседника

set_ttl <secret_chat> <ttl> — установить ttl в секретном чате. Не смотря на то, что клиент игнорирует это, вашему собеседнику это может быть полезно

accept_secret_chat <secret_chat> — вручную принять секретный чат (действенно только если клиент запущен с ключём -E)

Статистика и информация

user_info <user> — вывести информацию о пользователе

history <peer> [limit] — вывести историю (и пометить прочитаными). Лимит по умолчанию = 40

dialog_list — вывести информацию о диалогах

contact_list — вывести информацию о пользователях в вашем списке контактов

suggested_contacts — вывести информацию о пользователях с которыми у вас много общих друзей

show_license — показать лицензию(GPLv2)

get_self — получить инфорцию о своем пользователе

Карточки

export_card — вывести ваше ‘карточку’ которую каждый позже может импортировать себе в контакты

import_card <card> — получить пользователя по карточке. После этого вы сможете писать ему сообщения

Остальное

quit — выйти

safe_quit — подождать завершения всех запросов и выйти


ссылка на оригинал статьи https://habr.com/ru/articles/871984/