Провайдер для звонков Telegram

Поддержка модуля приостановлена, проблема в базовой библиотеке, пока она не будет решена, модуль не будет корректно работать. Рекомендуем использовть сервис https://www.sip.tg/

Обратите внимание: Все данные авторизации / секретные коды / данные переписки Telegram используются исключительно ЛОКАЛЬНО на вашей АТС и НЕ передаются на сервера МИКО.

Модуль состоит из нескольких компонент:

  • Шлюз SIP ↔ Telegram - позволяет принимать звонки от telegram и совершать исходящие звонки через telegram. Шлюз не зависит от прочих компонент, они лишь его дополняют

  • Телеграм клиент - работает совместно с ботом, во время входящего звонка звонящему отправляется клавиатура для ввода добавочного номера.

  • Телеграм бот - служит для формирования клавиатуры и отправки тональных команд в текущий канал. Для работы необходимо предварительно получить токен через интерфейс бота «@BotFather»

При звонке в компанию клиенту будет отправлена с сообщением клавиатура для ввода добавочного номера:

После завершения звонка клавиатура будет скрыта.

После неудачного звонка из компании (клиент не ответил). Клиенту будет отправлена визитка:

Текст визитки и клавиатуры ввода добавочного можно исправить в настройках модуля:

Screenshot here!

Настройка Telegram

Аккаунт

Необходимо настроить видимость номера телефона в разделе "Конфиденциальность" , а так же разрешить Всем звонить на номер телефона в разделе "Звонки":

Telegram Bot

Создайте бота

  1. Откройте чат с @BotFather в любом удобном клиенте Телеграм

  1. Отправьте команду

/newbot
  1. Введите «name» нового бота, к примеру new_keyboard_bot, имя должно быть коротким и понятным, имя увидит клиент при получении клавиатуры

  2. Введите «username» для нового бота, к примеру newest_keyboard_bot

Включите Inline Mode

  1. Отправьте боту команду

    /setinline
  2. Выберите созданного ранее бота

Получите Token

  1. Отправьте команду

    /mybots
  2. Выберите созданного ранее бота

  3. Кликните по кнопке «API Token»

  4. Скопируйте значение «token»

Начните диалог с ботом

  1. Отправьте из аккаунта телеграмм вашему боту команду

    /start
  2. Напишите боту произвольное сообщение, к примеру «Привет

С ботом должен быть открытый диалог, если не отправить ему команду «/start», то часть функционала работать не будет.

Получение "App api_id" и "App api_hash"

«App api_id» и «App api_hash» - это секретные параметры, которые привязываются к вашему telegram аккаунту. Никому не сообщайте эти значения! Они необходимы для подключения к API Telegram. Подробнее можно почитать в документации.

  1. Перейдите по ссылке https://my.telegram.org/auth

  1. Укажите номер телефона, привязанный к telegram аккаунту

  2. Перейдите в раздел «API development tools»

  1. Опишите параметры нового приложения:

  • «App title» - заголовок приложения

  • «Short name» - уникальное короткое имя приложения

  • «URL»- произвольный адрес сайта

  • «Platform» - Other

  • «Description» - произвольное описание

Выполните действие «Create application»

  1. Скопируйте значения «App api_id» и «App api_hash»

Настройки модуля MikoPBX

При восстановлении из бекапа может потребоваться повторная авторизация в telegram.

  1. Установите дополнительный модуль «Провайдер Telegram», (см. инструкции по установке модулей в разделе Управление модулями)

  2. Ведите значения «App api_id» и «App api_hash», полученные на предыдущем этапе, а так же Token бота, который вы получили при создании бота.

Сохраните изменения

  1. Добавьте новый номер по кнопке «Добавить»

  2. Запустите процесс авторизации для Шлюза, Клиента Telegram, для Бота

  1. Авторизуйте все линии. После подключения отобразится "Линии подключены". Подключенные каналы отобразятся зеленым цветом.

Кнопки авторизации отображают статус подключения:

  • Красный - Необходима авторизация

  • Оранжевый - Ожидается запуск сервиса

  • Зеленый - Соединение установлено

В любом из состояний возможно запустить процесс авторизации заново.

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

  • /storage/usbdisk1/mikopbx/custom_modules/ModuleTelegramProvider/db/7906660000

  • /storage/usbdisk1/mikopbx/custom_modules/ModuleTelegramProvider/db/madeline/7906660000

где 7906660000 - номер телефона, логин телеграмм аккаунта

Настройка провайдера

  1. Скопируйте адрес и порт из активной линии. В нашем случае это 127.0.0.1:30001

  2. Перейдите в раздел "Провайдеры телефонии"

  1. Добавьте нового провайдера

  1. Введите «Название провайдера» - произвольное значение.

Укажите «Тип учетной записи» - «Аутентификация по IP адресу, без пароля».

Введите «Хост или IP адрес» - 127.0.0.1

«Расширенные настройки» - «Порт соединения SIP» - укажите порт линии, в текущем примере «30001»

  1. «Расширенные настройки» - «Отключить использование поля fromuser»

Сохраните изменения

  1. В разделе «Система» -> «Общие настройки» разрешите использование кодека Opus

Входящий маршрут

Для настройки входящих маршрутов ознакомьтесь с документацией «Входящие маршруты»

Порядок определения callerid: Telegram может передавать следующие идентификаторы:

  1. X-TG-Phone - номер телефона

  2. X-TG-Username - ник пользователя

  3. X-TG-ID - идентификатор пользователя

Некоторые идентификаторы могут быть скрыты клиентом в настройках приватности. Caller ID будет установлен исходя из этих полей, X-TG-Phone - имеет наивысший приоритет, X-TG-ID - низший.

Исходящий маршрут

Для настройки входящих маршрутов ознакомьтесь с документацией «Исходящие маршруты»

Обязательно добавить плюс при наборе номера! См. пример ниже.

Пример маршрута:

  • «Название правила» - siptg

  • «Номер начинается с» - 7

  • «Остальная часть номера состоит из указанного количества цифр» - 10

  • «Перед тем как начать звонок отсекаем» - 0

  • «цифр в начале номера, затем добавляем в начало » - символ плюс »+«

Last updated