Skip to content

Внешняя обработка для программы 1С:Предприятие, которая демонстрирует основные приемы работы с API мессенджера MAX и является АПИ оберткой.

License

Notifications You must be signed in to change notification settings

green-api/max-api-client-1c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Демо обработка для работы с MAX из 1С

Репозиторий представляет собой исходники конфигурации в формате выгрузки xml файлов с одной обработкой. Из обработки можно отправить сообщение в мессенджер MAX. Интеграция с MAX сделана через REST сервис green-api.com

Данная обработка создана на основе ранее разработанной обработки интеграции WhatsApp с GREEN-API.

В процессе разработки была сохранена общая архитектура, логика взаимодействия с API и структура интерфейса, что обеспечивает единый подход к работе с мессенджерами в 1С.

При этом обработка была адаптирована под особенности мессенджера MAX, включая авторизацтю по QR-коду.

Оглавление

Требования

  • Для запуска обработки нужна Платформа 1С не ниже версии 8.3.10.
  • Для загрузки исходников нужно Платформа 1С не ниже версии 8.3.16.1063

Важные отличия MAX от WhatsApp

При работе с мессенджером MAX через GREEN-API существуют принципиальные отличия от интеграции WhatsApp, которые важно учитывать при разработке и эксплуатации.

Основные отличия

  • Отсутствие привязки к телефону
    Инстанс MAX не зависит от постоянного подключения мобильного устройства к интернету, что повышает стабильность работы.

  • Более простое повторное подключение
    В большинстве случаев повторная авторизация не требуется, даже при перезапуске инстанса.

  • Работа с группами
    Групповые чаты идентифицируются ID, начинающимся со знака -, аналогично WhatsApp, но управление группами не требует подтверждений на телефоне.

  • Фокус на серверное использование
    API мессенджера MAX лучше подходит для серверных сценариев, ботов, CRM и интеграций с 1С без участия пользователя.

Детальное описание отличий доступно в официальной документации API мессенджера MAX.

Возможности обработки

  • Отправка текстовых сообщений
  • Отправка и получение файлов
  • Работа с групповыми чатами
  • Получение входящих сообщений
  • Журналы входящих и исходящих сообщений
  • Очереди сообщений
  • Отметка сообщений как прочитанных
  • Webhook-уведомления
  • Сервисные методы управления инстансом

Регистрация и подготовка

  1. Зарегистрируйтесь в личном кабинете GREEN-API
  2. Создайте инстанс MAX
  3. Получите ID Instance и API Token

Процесс авторизации инстанса MAX (через QR-код)

Авторизация выполняется на вкладке Настройки -> Подключение и завязана на кнопку Получить состояние инстанса.

Шаг 1. Запрос состояния инстанса

  1. Заполните параметры подключения (host, mediaHost, idInstance, apiTokenInstance).
  2. Нажмите Получить состояние инстанса.

qr-authorization

Шаг 2. Если текущий статус инстанса - «Неавторизован»

  1. Обработка автоматически покажет QR-код (в блоке под кнопкой).
  2. Отсканируте QR-код телефоном в приложении MAX.

Шаг 3. Подтверждение после сканирования

После того как QR-код отсканирован телефоном:

  1. Нажмите кнопку обновления (кнопка с круговой стрелкой / обновить);

status

  1. Повторно нажмите «Получить состояние инстанса».
    После обновления статус изменится на «Авторизован».

Что будет, если инстанс уже авторизован

sucsess

Если при нажатии «Получить состояние инстанса» инстанс уже в статусе «Авторизован», появится сообщение:

«Авторизация выполнена успешно.»
Примечание: QR-код отображается только когда инстанс не авторизован.

Подключение MAX в обработке

  1. Скачать обработку в формате epf
  2. Подключиться к сервису через встроенный в обработку помощник или самостоятельно через сайт green-api.com. Получить API Token и ID Instance
  3. В разделе «Настройки → Подключение» укажите:
  • host - api.green-api.com
  • hostMedia - media.green-api.com
  • idInstance - ID вашего инстанса
  • apiTokenInstance - API Token
  1. Сканировать QR-код с мобильного телефона MAX
  2. В форме обработки нажать кнопку Проверить подключение / Сканировать QR Код. Поле формы статус должно изменится на "Подключен"

Обработка работает либо с личным чатом, либо с группой - режим определяется автоматически на основании значения, указанного в поле «ID чата».

  • Если в поле «ID чата» указан идентификатор без знака -, сообщения отправляются в личный чат.
  • Если ID чата начинается со знака -, сообщения отправляются в групповой чат.
    Тип чата определяется автоматически, при этом переключатель «Тип чата» в интерфейсе обработки отображает текущий режим работы (личный чат или группа) и служит индикатором выбранного типа.

личный-чат

Изменение значения в поле «ID чата» приводит к автоматическому переключению типа чата без необходимости дополнительных настроек.

групповой-чат

Отправка сообщений

отправка-текста

Поддерживается отправка:

  • текста
  • файлов (локально и по URL)
  • геолокации
  • контактов
  • уведомлений о наборе текста

Получение сообщений

Получение сообщений выполняется в разделе Получение и работает в режиме ожидания входящих уведомлений.

Режим ожидания сообщений

При нажатии на кнопку «Ожидать сообщения» обработка переходит в режим ожидания входящих сообщений.

ожидание-сообщений

В этом режиме:

  • обработка регулярно обращается к API GREEN-API;
  • входящие сообщения получаются по одному;
  • каждое полученное сообщение выводится в поле «Ответ»;
  • кнопка «Ожидать сообщения» меняет название на «Прекратить ожидать сообщения», что означает активный режим ожидания.

Обработка продолжает получать сообщения до тех пор, пока во входящей очереди есть данные.

Завершение получения сообщений

Когда все входящие сообщения обработаны и новых сообщений во входящей очереди нет, обработка автоматически завершает получение и выводит сообщение: «Нет сообщений».

конец-ожидания

После этого режим ожидания считается завершённым.

Прерывание ожидания вручную

В любой момент пользователь может нажать кнопку «Прекратить ожидать сообщения».

В этом случае:

  • процесс ожидания немедленно останавливается;
  • дальнейшее получение сообщений прекращается;
  • обработка возвращается в обычный режим работы.

Рекомендации по использованию

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

  • в фоновом задании;
  • с небольшим интервалом (например, 10 секунд).

Такой подход позволяет стабильно обрабатывать входящие сообщения без перегрузки API.

Журналы и очереди

Доступны журналы сообщений и управление очередями отправки и получения.

получить-журнал

Группы

  • Создание и управление группами
  • Добавление и удаление участников
  • Назначение администраторов
  • Изменение имени и аватара

группы

Работа с контактами и сообщениями

В разделе Сервисные методы доступны операции для работы с контактами, сообщениями и чатами.

получить-контакты

Проверка наличия получателя в MAX

Кнопка «Проверить наличие MAX» позволяет проверить, зарегистрирован ли указанный номер телефона в мессенджере MAX.

В результате выполнения:

  • в поле «Ответ» отображается результат проверки;
  • если аккаунт уже авторизован, может быть возвращено сообщение вида: instance account already authorized.

Получение информации о контактах

В разделе доступны следующие операции:

  • Получить аватар контакта - получение изображения профиля контакта;
  • Получить контакты - получение списка контактов аккаунта;
  • Получить информацию о контакте - получение детальной информации по указанному номеру телефона.

Для выполнения операций необходимо указать ID чата в соответствующих полях.

Работа с сообщениями

Также доступны операции:

  • Удалить сообщение - удаление сообщения по ID;
  • Изменить сообщение - редактирование ранее отправленного сообщения;
  • Получить список чатов - получение списка доступных чатов;
  • Отправить уведомление о наборе текста - отображение статуса «набор сообщения» у получателя.

Партнёрский режим GREEN-API

Раздел Партнёр предназначен для работы по партнёрской схеме GREEN-API и управления несколькими инстансами.

Возможности партнёрского режима

Партнёрская схема работы позволяет:

  • управлять большим количеством инстансов;
  • получать список созданных инстансов;
  • создавать новые инстансы;
  • удалять существующие инстансы;
  • использовать расширенные условия обслуживания и поддержки.

Работа с инстансами

Для работы необходимо указать Partner token.

партнёры

Доступные операции:

  • Получить список инстансов - выводит список всех инстансов, доступных партнёру;
  • Создать инстанс - создание нового инстанса;
  • Удалить инстанс - удаление инстанса по его ID.

Результаты выполнения операций отображаются в поле «Ответ».

Использование обработки в собственных конфигурациях

Обработка имеет программный интерфейс, оформленный в соответствии со стандартами разработки 1С. Вы можете встроить ее в свою конфигурацию и вызывать АПИ на сервере через создание объекта. Пример использования:

Отправка сообщения в чат

АПИ = Обработки.GreenAPI.Создать();
АПИ.IdInstance = "ВАШ_ИНСТАНС";
АПИ.ApiToken = "ВАШ_ТОКЕН";
Ответ = АПИ.ОтправитьТекст("10000000", "Я использую GREEN-API для отправки этого сообщения!"); 

Отправка сообщения в группу

АПИ = Обработки.GreenAPI.Создать();
АПИ.IdInstance = "ВАШ_ИНСТАНС";
АПИ.ApiToken = "ВАШ_ТОКЕН";
Ответ = АПИ.ОтправитьТекст("-10000000000000", "Я использую GREEN-API для отправки этого сообщения!"); 

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

Исходники в репозитории - это xml выгрузка из конфигуратора 1С версии 8.3.16 в режиме совместимости с 8.3.10. Скачайте исходники с репозитория и загрузите в конфигуратор с помощью команды Конфигурация -> Загрузить конфигурацию из файлов

About

Внешняя обработка для программы 1С:Предприятие, которая демонстрирует основные приемы работы с API мессенджера MAX и является АПИ оберткой.

Resources

License

Stars

Watchers

Forks

Packages

No packages published