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

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

6cce53a19cbdea7dfb0c986af81936fa.jpg

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

  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

ae0fe9e7ad765f18be0b8d7059aa6234.jpg

А вот перед 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

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

aeb1deab1beb7a9f06af4c81df5dbe12.jpg

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

Команды

Общение

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

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

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

add_contact  — попытаться добавить контакт в список контактов по номеру телефона

rename_contact  — попытаться переименовать контакт. Если у вас есть несколько устройств, то будет битва

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

delete_msg  — удалить сообщение (но не полностью)

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

Мультимедия

send_photo  — отправить фото

send_video  — отправить видео

send_text  — отправить содержимое файла текстом

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

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

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

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

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

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

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

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

rename_chat

create_group_chat … — создать групповой чат с пользователями, используйте chat_add_user чтобы добавить больше пользователей

chat_set_photo  — поставить фото на чат. Обрезается до квадрата

Поиск

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Карточки

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

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

Остальное

quit — выйти

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

© Habrahabr.ru