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

Особенности работы с контактами при помощи lid#

WhatsApp постепенно отказывается от использования номеров телефонов в качестве идентификатора чата. Мы заранее создаем условия для работы с нашей API. Архитектура и логика взаимодействия с API осталась прежней, однако имеется ряд отличий ввиду особенностей работы мессенджера c контактами.

Бета-версия

Функциональность находится в режиме бета-версии. Функции могут быть изменены, а также могут работать нестабильно.

Изменения WhatsApp затронут всех пользователей, поэтому необходимо быть готовыми к грядущим переменам. В данной статье рассмотрим какие изменения произойдут в API и что нужно будет сделать, чтобы продолжать эффективно использовать WhatsApp API не теряя связи с вашими клиентами.

Содержание#

Как раньше отправлялись сообщения по номеру телефона#

Для отправки сообщений используйте идентификатор чата. В GREEN-API поддерживается два типа чатов - личный чат и групповой чат.

Ранее в теле запроса метода достаточно было указать номер получателя с префиксом @c.us, чтобы передать текстовое сообщение:

    {
    "chatId": "1111111111@c.us",
    "message": "Привет, Иван Царевич"
    }

Постепенный отказ от использования префикса @c.us#

Во всех методах отправки сообщений, идентификаторе чата, методах работы с журналами, а также в вебхуках префикс @c.us используется для обратной совместимости. Теперь вместо него вы будете получать идентификатор чата в виде @lid.

Работа с групповыми чатами

Для работы с групповыми чатами логика работы с API останется прежней. Подробнее о работе с идентификатором группового чата можно ознакомиться в нашей документации.

Мы настоятельно рекомендуем переходить на использование идентификатора личного чата @lid.

Отправка сообщений с помощью @lid#

В целом отправка сообщений по @lid отличается от отправки по номеру телефона тем, что идентификатор чата необходимо предварительно получать методом CheckWhatsapp или из переписки с пользователем.

Если идентификатор чата неизвестен, сначала используйте метод CheckWhatsapp, получите значение chatId для отправки сообщений методом SendMessage и другими методами.

Отправка сообщения с помощью @lid

    {
    "chatId": "120650379300963@lid",
    "message": "Привет, Иван Царевич"
    }

В настоящее время в журналах и вебхуках будет приходить номер телефона пользователя, даже если была отправка по @lid.

Получение журналов и вебхуков с @lid#

Бета-версия

Функциональность находится в режиме бета-версии. В данный момент получение @lid с помощью журналов и вебхуков не гарантируется.

В личном кабинете в настройках инстанса необходимо установить в поле Версия значение 5.44.36.00, затем нажать на кнопку Сохранить изменения. Либо с помощью метода SetSettings указав в поле version значение 5.44.36.00.

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

Проверьте методом GetSettings что настройки инстанса применились, для этого проверьте значение поля version не пустое.

Если всё настройки применились, то в журналах в полях chatId и senderId будет записан номер @lid, уникальный для каждого инстанса.

Пример журнала для последних входящих сообщений с @lid

{
        "type": "incoming",
        "idMessage": "ACB2EA51BD0573D8F64E480908C6017A",
        "timestamp": 1779704763,
        "typeMessage": "textMessage",
        "chatId": "155508384256027@lid",
        "textMessage": "Привет, я использую GREEN-API для отправки сообщения в WhatsApp!",
        "senderId": "155508384256027@lid",
        "senderName": "Иван Царевич",
        "senderContactName": "",
        "deletedMessageId": "",
        "editedMessageId": "",
        "isEdited": false,
        "isDeleted": false
    },
    {
        "type": "incoming",
        "idMessage": "AC710B072D589F5583ADF9E4C904330E",
        "timestamp": 1779703495,
        "typeMessage": "textMessage",
        "chatId": "155508384256027@lid",
        "textMessage": "Привет! Я использую GREEN-API!",
        "senderId": "155508384256027@lid",
        "senderName": "Иван Царевич",
        "senderContactName": "",
        "deletedMessageId": "",
        "editedMessageId": "",
        "isEdited": false,
        "isDeleted": false
    }

Пример вебхука входящих сообщений с @lid

{
  "typeWebhook": "incomingMessageReceived",
  "idMessage": "AC162054DB255E4CF2FBD5C559089191",
  "instanceData": {
    "idInstance": 1101111111,
    "wid": "79876543210@c.us",
    "typeInstance": "whatsapp"
  },
  "timestamp": 1588091580,
  "senderData": {
    "chatId": "155508384256027@lid",
    "sender": "155508384256027@lid",
    "senderName": "Иван",
    "senderContactName": "",
    "chatName": "Иван Царевич"
  },
  "messageData": {
    "typeMessage": "textMessage",
    "textMessageData": {
      "textMessage": "Привет, я использую GREEN-API для отправки сообщения в WhatsApp!"
    }
  }
}

Необходимость перехода на @lid#

WhatsApp уведомляет, что постепенный отказ от номеров телефонов продлится примерно до конца 2026 года, поэтому стоит быть готовым к переменам.

Из этой статьи вы узнали, что переход на @lid можно произвести без значительных изменений интеграции и в короткие сроки.

Именно поэтому уже сегодня стоит подготавливать вашу интеграцию или чат-бота к работе с @lid.