Разработка бота для Instagram с интеграцией Битрикс24

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Разработка бота для Instagram с интеграцией Битрикс24
Средняя
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1173
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    745
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Разработка бота для Instagram с интеграцией Битрикс24

Instagram Direct — основной канал коммуникации для e-commerce, beauty, fashion и других B2C-сегментов. Бот обрабатывает входящие сообщения в Direct, отвечает по сценарию и создаёт лид в Битрикс24. Менеджер продолжает диалог из CRM, не выходя в Instagram.

Технические условия: Instagram Messaging API

Instagram Messaging API работает через платформу Meta. Требования:

  • Аккаунт Instagram Business или Creator, привязанный к Facebook-странице.
  • Facebook Developer App с продуктами Messenger + Instagram.
  • Разрешения: instagram_basic, instagram_manage_messages, pages_manage_metadata.
  • HTTPS-сервер для webhook.

Instagram Messaging API — это тот же Messenger Platform, но входящие сообщения имеют тип instagram_id отправителя, а не Facebook PSID. Webhook подписывается на instagram объект в настройках приложения.

Что умеет бот в Instagram

Instagram Direct поддерживает:

  • Текстовые сообщения — основной поток.
  • Быстрые ответы (quick replies) — кнопки-подсказки.
  • Story mentions — пользователь упомянул бизнес-аккаунт в Stories. Бот получает событие и может ответить автоматически.
  • Ice breakers — вопросы-стартеры, которые пользователь видит при первом открытии диалога.

Чего нет: карусели Generic Template в Instagram ограничены — поддерживается только media_share и простые кнопки с ссылками.

Приём сообщений через webhook

{
  "entry": [{
    "id": "IG_ACCOUNT_ID",
    "messaging": [{
      "sender": { "id": "IG_USER_IGSID" },
      "recipient": { "id": "IG_ACCOUNT_ID" },
      "timestamp": 1710000000000,
      "message": {
        "mid": "aWdfZAG9...",
        "text": "Сколько стоит доставка?"
      }
    }]
  }]
}

IGSID (Instagram-Scoped ID) — уникальный ID пользователя для вашего приложения. Это не публичный Instagram ID.

Получение профиля пользователя Instagram

$profile = json_decode(file_get_contents(
    "https://graph.instagram.com/{$igsid}?fields=name,username&access_token=" . IG_ACCESS_TOKEN
), true);
// Возвращает: name (display name), username (@handle)

Автоответ на упоминания в Stories

Когда пользователь упоминает ваш аккаунт в Stories, приходит webhook-событие messaging_referral с type=STORY_MENTION. Бот может автоматически поблагодарить:

if ($event['type'] === 'STORY_MENTION') {
    sendIgMessage($igsid, "Спасибо, что отметили нас в Stories! 🙌 Хотите узнать об актуальных акциях?");
    logLeadSource($igsid, 'story_mention');
}

Story mentions — тёплые лиды: человек уже взаимодействовал с брендом.

Сценарий квалификации лида

Входящее сообщение
    ↓
Состояние = null → приветствие + быстрые ответы
    ↓
Выбор: "Хочу заказать"
    ↓
Запрос телефона / email
    ↓
Создание лида в Б24 + уведомление менеджера
    ↓
Сообщение: "Менеджер свяжется с вами в течение часа"

Состояния диалога хранятся в Redis по ключу ig_dialog:{igsid}. TTL — 24 часа (окно активности в Instagram).

Интеграция с Битрикс24

function createInstagramLead(string $igsid, string $username, array $data): int {
    return $b24->callMethod('crm.lead.add', [
        'fields' => [
            'TITLE'              => "Instagram: @{$username}",
            'SOURCE_ID'          => 'WEBFORM',
            'SOURCE_DESCRIPTION' => 'Instagram Direct',
            'PHONE'              => !empty($data['phone']) ? [['VALUE' => $data['phone'], 'VALUE_TYPE' => 'WORK']] : [],
            'EMAIL'              => !empty($data['email']) ? [['VALUE' => $data['email'], 'VALUE_TYPE' => 'WORK']] : [],
            'COMMENTS'           => "Instagram: @{$username}\nIGSID: {$igsid}",
            'UF_CRM_IG_IGSID'   => $igsid,
        ],
    ])['result'];
}

// История переписки — в активность
$b24->callMethod('crm.activity.add', [
    'fields' => [
        'OWNER_TYPE_ID' => 1,
        'OWNER_ID'      => $leadId,
        'TYPE_ID'       => 4,
        'SUBJECT'       => "Instagram Direct: @{$username}",
        'DESCRIPTION'   => implode("\n", $dialogMessages),
    ],
]);

Ice breakers: вопросы при первом открытии диалога

Через API приложения настраиваются подсказки, которые пользователь видит при первом открытии диалога с бизнес-аккаунтом:

callMetaApi('me/messenger_profile', 'POST', [
    'platform'     => 'instagram',
    'ice_breakers' => [
        ['call_to_actions' => [
            ['type' => 'postback', 'title' => 'Узнать о доставке',     'payload' => 'DELIVERY_INFO'],
            ['type' => 'postback', 'title' => 'Оставить заявку',        'payload' => 'LEAVE_REQUEST'],
            ['type' => 'postback', 'title' => 'Посмотреть каталог',     'payload' => 'CATALOG'],
        ]],
    ],
]);

Ограничения платформы Meta для Instagram

  • Сообщения от бота принимаются только в течение 24 часов после последнего сообщения пользователя.
  • Нельзя инициировать диалог самостоятельно (бот не может написать первым).
  • Приложение проходит ревью Meta: instagram_manage_messages — расширенное разрешение, требует проверки.
  • Массовые рассылки запрещены условиями платформы.

Сроки

Этап Срок
Настройка Meta App, IG Business, webhook 1–2 дня
Сценарий бота, состояния, ice breakers 3–4 дня
Интеграция с Б24: лиды, активности, уведомления 2–3 дня
Story mention автоответ 1 день
Ревью Meta (instagram_manage_messages) 3–7 рабочих дней
Тестирование 1–2 дня

Итого: 2–3 недели с учётом ревью Meta. Если приложение уже прошло ревью для Messenger-бота, Instagram-разрешения добавляются быстрее.