Настройка 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