====== Success Story ====== я решил создать Telegram бота, который бы открывал ворота на въезд в коттеджный посёлок, чтобы друзья могли беспрепятственно въезжать и выезжать. Ворота открываются по звонку с номера, который внёсён у них в белый список. Была выбран следующая схема: 1. В качестве SIP провайдера был выбран Zadarma - он позволяет подставить свой номер. Подстановка происходит не всегда, о чем zadarma предупреждает (и отражает в статистике реальный номер, который высвечивается у принимающей звонок стороны). Среди всех членов семьи удалось найти номер, который zadarma успешно подставляет при звонке на номер ворот. 2. Telegram-бот написан на python с использованием pytelegrambotapi. 3. Asterisk запущен на одном хосте с телеграм-ботом (в моём случае - это роутер Keeneric Viva). Кратко процесс: 1. Регистрируемся на zadarma (подробно не пишу, я делал это давно). У меня осталось 0.5$ на счету - скорее всего дали при регистрации 2. Создаем УЗ бота в telegram - для этого используется бот @BotFather. Он-же отдаёт токен для доступа к боту, его храним как зеницу (в скрипте ниже я его немного изменил, но оставил для понимания что он из себя представляет). 3. Устанавливаем python (sudo apt install python3, pip3 install --upgrade pip, pip3 install pytelegrambotapi) 4. Пишем код бота (см вложение). Я вырезал части, отвечающие за логику бота (авторизацию, уведомления хозяевам дома и прочее, оставил только код слова для открытия и саму процедуру открытия (звонка). Бот пишет call-файл в /var/spool/asterisk/outgoing, чтобы asterisk звонил. 5. Конфигурация Asterisk - когда я учился про pjsip ещё ничего не было, поэтому у меня всё в sip.conf, два внутренних номера и один внешний канал через zadarma. 6. Из плюсов - всё "бесплатно", т.к непосредственно соединения не происходит - ворота сбрасывают звонок.