Skip to content
This repository has been archived by the owner on Oct 14, 2018. It is now read-only.

Установка бота

Yaroslav edited this page Sep 19, 2016 · 9 revisions

Создание нового пользователя

Если Вы подключаетесь через SSH к VPS серверу, то для начала Вам необходимо зайти под root пользователем. tg (клиент телеграма) не будет работать, если попробовать запустить его через root, поэтому нам необходимо создать нового пользователя.

Для старых версий:

adduser [любое название] # Указывать имя, фамилию, номер и т.д. совершенно не обязательно!
adduser [выбранное имя пользователя] sudo

Для новых версий:

useradd [любое название] # Указывать имя, фамилию, номер и т.д. совершенно не обязательно!
useradd [выбранное имя пользователя] sudo

Команды adduser, так же как и useradd имеют один функционал, но рассчитаны под разные версии ОС.

Установка

Теперь нам нужно установить необходимые пакеты для полноценного функционирования бота. Ниже будут представлены команды под определенную операционную систему.

Обратите внимание, что пакет libpython-dev может не устанавливаться на старых версиях, поэтому просто замените его на python-dev.

Debian

apt-get update
apt-get upgrade
apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make unzip git redis-server g++

Gentoo

emerge -av sys-libs/readline dev-libs/libconfig dev-libs/openssl dev-lang/lua dev-libs/libevent dev-libs/jansson

Fedora

yum install lua-devel openssl-devel libconfig-devel readline-devel libevent-devel

FreeBSD

pkg install libconfig libexecinfo lua52

OpenBSD

pkg_add libconfig libexecinfo lua

Mac OS X

Первоисточник: vysheng/tg/README.md: Mac OS X.

Требуемые пакеты

Если Вы используете другой менеджер пакетов, то для Вас будет актуален следующий список:

libreadline-dev (readline)
libconfig-dev (libconfig)
libssl-dev (openssl)
lua5.2
liblua5.2-dev (liblua)
libevent-dev
libjansson-dev (libjansson)
libpython-dev
make
unzip
git
redis-server (redis)
g++

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

Установка дистрибутива бота

cd $HOME
git clone https://github.com/yagop/telegram-bot.git
cd telegram-bot
./launch.sh install
./launch.sh # После этой команды будет запрошен номер телефона и код подтверждения.

Одной строкой

Чтобы установить всё на данной странице (кроме нового пользователя) используя одну команду на дистрибутиве, основанном на Debian, используйте следующую строку: (Полезно для развертывания бота на VPS).

sudo apt-get update; sudo apt-get upgrade -y --force-yes; sudo apt-get dist-upgrade -y --force-yes; sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson* libpython-dev make unzip git redis-server g++ -y --force-yes && git clone https://github.com/yagop/telegram-bot.git && cd telegram-bot && ./launch.sh install && ./launch.sh

После запуска этой команды, оставьте VPS на несколько минут (зависит от скорости VPS), чтобы загрузить и скомпилировать все файлы. Затем, после повторной авторизации, Вы должны будете просто ввести свой номер телефона и код подтверждения.

Работа в «фоне»

Если Вы пользуетесь VDS/VPS сервером и желаете, чтобы при закрытии консоли Ваш бот продолжал работать, то необходимо прописать по очереди следующие команды от root пользователя:

-i "s/yourusername/$(whoami)/g" etc/telegram.conf
-i "s_telegrambotpath_$(pwd)_g" etc/telegram.conf
cp etc/telegram.conf /etc/init/
start telegram # Запуск работы.
stop telegram # Остановка работы.
shutdown -r now # Перезагрузка.

Все доступные команды для своего бота Вы сможете найти здесь.