Перейти к содержанию

Настройка Python Webhook Server на Ubuntu#

После создания машины для сервера нужно настроить на ней брандмауэр, установить необходимые компоненты и запустить сервер.

Ubuntu 20.04 и выше поставляются с предустановленным Python 3. Обновим систему:

sudo apt update
sudo apt -y upgrade

Нужно настроить правила брандмауэра. В Ubuntu брандмауэр UFW установлен по умолчанию, но если по какой-то причине он не установлен, установим:

sudo apt install ufw

Разрешим соединение по SSH:

sudo ufw allow ssh

Добавим правила брандмауэра по-умолчанию:

sudo ufw default deny incoming
sudo ufw default allow outgoing

Разрешаем соединения по HTTP и HTTPS:

sudo ufw allow http
sudo ufw allow https

Если на вашем сервере имеется публичный сетевой интерфейс под названием eth0, вы можете разрешить трафик HTTP (порт 80) для этого интерфейса с помощью следующей команды:

sudo ufw allow in on eth0 to any port 80

Название сетевого интерфейса можно узнать с помощью команды:

ip addr

Активируем брандмауэр:

sudo ufw enable

Теперь наш сервер может принимать входящие запросы на указанный нами порт.

Установим систему управления пакетами pip, если он не содержится в дистрибутиве ОС:

sudo apt install python3-pip

Теперь можно устанавливать нашу библиотеку.

Установка библиотеки:

python3 -m pip install whatsapp-api-webhook-server-python-v2

Можно в качестве примера запустить на сервере наш скрипт receive_all_with_counter.py, он будет выводить в консоль информацию о полученных уведомлениях:

wget https://github.com/green-api/whatsapp-api-webhook-server-python-v2/blob/master/examples/receive_all_with_counter.py
python3 receive_all_with_counter.py