אוטומציה של הודעות Push על הזמנות דרך טלגרם ב-1C-Bitrix

התראות הזמנה סטנדרטיות בדוא"ל לרוב הולכות לאיבוד בספאם, ומשאירות לקוחות ללא מידע חשוב. אנו מפתחים אינטגרציית בוט טלגרם עם 1C-Bitrix ששולחת הודעות push אוטומטיות בעת שינוי סטטוס הזמנה. הצוות שלנו מספק את הפרויקט במפתח מלא, ומבטיח אספקה אמינה ותמיכה מתמשכת.
השירותים שאנו מציעים
מציג 1 מתוך 1כל 1626 השירותים
אוטומציה של הודעות Push על הזמנות דרך טלגרם ב-1C-Bitrix
פשוט
~1 יום

הכישורים שלנו:

שאלות נפוצות

אוטומציה של התראות הזמנות דרך טלגרם ב-1C-Bitrix

כאשר סטטוס הזמנה משתנה ב-1C-Bitrix, התראות דוא"ל סטנדרטיות מגיעות לרוב לספאם—ושיעור הפתיחה rarely עולה על 20%. טלגרם מספקת הודעות באופן מיידי עם שיעור קריאה של 90%. הטמעת בוט טלגרם מפחיתה פניות לתמיכה ב-30–40% ומקצצת משמעותית בעלויות SMS, כפי שאושר במחקר של RetailCRM. בנוסף, עלויות התפעול יורדות: התראות push מקצרות תגובות ידניות של נציגים ב-50%, וחוסכות כסף רב על זרימת הזמנות ממוצעת. אנו מעריכים את הפרויקט שלך ביום אחד—צור קשר לדיון בפרטים.

טלגרם מהירה פי 4 מדוא"ל במשלוח וזולה פי 2 מ-SMS. ב-9 מתוך 10 מקרים, משתמשים קוראים התראת push בטלגרם בתוך הדקות הראשונות. זה מפחית את עומס התמיכה ומאיץ את התקשורת עם הלקוחות. עבור חנויות מקוונות על 1C-Bitrix, האינטגרציה מיושמת דרך מטפל האירועים OnSaleOrderStatusChange ואינה דורשת החלפת מערכת ההתראות הקיימת.

בעיות שבוט טלגרם פותר

  • דוא"ל בספאם: עד 30% מההודעות לא מגיעות ללקוח. טלגרם מבטיחה משלוח של 99%.
  • עיכובים בהתראות: דוא"ל יכול לקחת עד 5 דקות. טלגרם—1–2 שניות.
  • קריאות נמוכה: 80% מההודעות לא נקראות. הודעות טלגרם נפתחות תוך דקות.
  • תמיכה ידנית: נציגים מבזבזים זמן במענה לשאלות על סטטוס. הבוט משתלט על כך.

מדוע התראות טלגרם יעילות יותר מדוא"ל?

השוואה לפי מדדים מרכזיים:

פרמטר דוא"ל טלגרם
משלוח עד 5 דקות, לעיתים קרובות ספאם מיידי, 99% משלוח
קריאות 20% שיעור פתיחה 90% שיעור קריאה
התקנה מובנה ב-Bitrix דורש בוט + מטפל
עלות כלול באחסון חינם דרך Bot API

כיצד עובדת האינטגרציה עם Bitrix

כאשר סטטוס הזמנה משתנה, Bitrix מפעיל את אירוע OnSaleOrderStatusChange. מנגנון ההתראות הסטנדרטי (/bitrix/admin/posting_list.php) שולח דוא"ל. טלגרם מחוברת כערוץ נוסף דרך מטפל אירועים. לפרטים נוספים על אירועים, ראה את התיעוד הרשמי של Bitrix.

אילו סטטוסי הזמנה נתמכים?

סטטוס קוד טקסט ההתראה
הזמנה חדשה N ההזמנה #%d התקבלה וממתינה לעיבוד.
נשלחה למשלוח P ההזמנה #%d נשלחה למשלוח.
הושלמה F ההזמנה #%d הושלמה. תודה על הרכישה!
בוטלה X ההזמנה #%d בוטלה.

יצירת מטפל לשינוי סטטוס הזמנה

יצירת בוט טלגרם להתראות

הבוט להתראות הזמנות הוא push-only: הוא רק שולח, לא מקבל פקודות. נוצר דרך @BotFather:

/newbot Название: Уведомления MyShop Username: myshop_orders_bot 

קבל טוקן כמו /newbot Название: Уведомления MyShop Username: myshop_orders_bot . שמור את הטוקן בהגדרות המודול או ב-1234567890:AAHb-xxxxxx, לא בקוד התבנית.

המשתמש חייב לפתוח שיחה עם הבוט (/bitrix/.settings.php) כדי שהבוט יקבל את /start שלו. לשם כך, הוסף כפתור בחשבון האישי שפותח את הקישור chat_id.

שמירת ה-chat_id של המשתמש

// Webhook бота принимает /start с параметром
$update = json_decode(file_get_contents('php://input'), true);
$text = $update['message']['text'] ?? '';
$chatId = $update['message']['chat']['id'];

if (preg_match('/^\/start uid_(\d+)$/', $text, $matches)) {
    $userId = (int)$matches[1];

    // Сохраняем chat_id в пользовательское поле UF_TELEGRAM_CHAT_ID
    \Bitrix\Main\UserTable::update($userId, [
        'UF_TELEGRAM_CHAT_ID' => $chatId,
    ]);

    // Подтверждение пользователю
    TelegramApi::sendMessage($chatId, 'Telegram-уведомления о заказах подключены.');
}

מטפל לשינוי סטטוס הזמנה

// /local/php_interface/init.php
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
    'sale',
    'OnSaleOrderStatusChange',
    function (\Bitrix\Main\Event $event) {
        $order = $event->getParameter('ENTITY');
        $statusId = $order->getField('STATUS_ID');
        $userId = $order->getUserId();

        // Читаем chat_id пользователя
        $user = \Bitrix\Main\UserTable::getById($userId)->fetch();
        $chatId = $user['UF_TELEGRAM_CHAT_ID'] ?? null;
        if (!$chatId) {
            return; // Пользователь не подключил Telegram
        }

        // Формируем текст по статусу
        $messages = [
            'N' => 'Заказ #%d принят и ожидает обработки.',
            'P' => 'Заказ #%d передан в доставку.',
            'F' => 'Заказ #%d выполнен. Спасибо за покупку!',
            'X' => 'Заказ #%d отменён.',
        ];
        $template = $messages[$statusId] ?? null;
        if (!$template) {
            return;
        }

        $text = sprintf($template, $order->getId());
        $text .= "\n\nПодробнее: " . SITE_SERVER_NAME . '/personal/orders/' . $order->getId() . '/';

        // Отправляем через Telegram Bot API
        TelegramBotService::send($chatId, $text);
    }
);

מחלקת שליחה של Telegram Bot API

class TelegramBotService {
    private static string $token = '1234567890:AAHb-xxxxxx';

    public static function send(string $chatId, string $text, array $options = []): bool {
        $params = array_merge([
            'chat_id' => $chatId,
            'text' => $text,
            'parse_mode' => 'HTML',
        ], $options);

        $ch = curl_init('https://api.telegram.org/bot' . self::$token . '/sendMessage');
        curl_setopt_array($ch, [
            CURLOPT_POST => true,
            CURLOPT_POSTFIELDS => json_encode($params),
            CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_TIMEOUT => 5,
        ]);

        $response = curl_exec($ch);
        curl_close($ch);

        return json_decode($response, true)['ok'] ?? false;
    }
}

שמור את הטוקן לא בקוד אלא בקונפיג:

// /bitrix/.settings.php 'custom' => [ 'value' => [ 'telegram_bot_token' => '1234567890:AAHb-xxxxxx', ], ], 
טיפול בשגיאות בשליחה הוסף למחלקת TelegramBotService בדיקה של התשובה ורישום שגיאות. אם curl מחזיר שגיאה או שה-API מחזיר `ok: false`, כתוב לוג לקובץ או ללוג המערכת של Bitrix. זה עוזר לאבחן בעיות במהירות.

מה כלול בעבודה

  • יצירה והגדרה של בוט טלגרם דרך @BotFather
  • פיתוח דף חיבור בחשבון האישי של הקונה
  • יישום מטפל האירועים על https://t.me/myshop_orders_bot?start=uid_12345
  • שמירת // Webhook бота принимает /start с параметром $update = json_decode(file_get_contents('php://input'), true); $text = $update['message']['text'] ?? ''; $chatId = $update['message']['chat']['id']; if (preg_match('/^\/start uid_(\d+)$/', $text, $matches)) { $userId = (int)$matches[1]; // Сохраняем chat_id в пользовательское поле UF_TELEGRAM_CHAT_ID \Bitrix\Main\UserTable::update($userId, [ 'UF_TELEGRAM_CHAT_ID' => $chatId, ]); // Подтверждение пользователю TelegramApi::sendMessage($chatId, 'Telegram-уведомления о заказах подключены.'); } בשדה המשתמש // /local/php_interface/init.php \Bitrix\Main\EventManager::getInstance()->addEventHandler( 'sale', 'OnSaleOrderStatusChange', function (\Bitrix\Main\Event $event) { $order = $event->getParameter('ENTITY'); $statusId = $order->getField('STATUS_ID'); $userId = $order->getUserId(); // Читаем chat_id пользователя $user = \Bitrix\Main\UserTable::getById($userId)->fetch(); $chatId = $user['UF_TELEGRAM_CHAT_ID'] ?? null; if (!$chatId) { return; // Пользователь не подключил Telegram } // Формируем текст по статусу $messages = [ 'N' => 'Заказ #%d принят и ожидает обработки.', 'P' => 'Заказ #%d передан в доставку.', 'F' => 'Заказ #%d выполнен. Спасибо за покупку!', 'X' => 'Заказ #%d отменён.', ]; $template = $messages[$statusId] ?? null; if (!$template) { return; } $text = sprintf($template, $order->getId()); $text .= "\n\nПодробнее: " . SITE_SERVER_NAME . '/personal/orders/' . $order->getId() . '/'; // Отправляем через Telegram Bot API TelegramBotService::send($chatId, $text); } );
  • בדיקת כל סטטוסי ההזמנה (N, P, F, X ומותאמים אישית)
  • תיעוד לתפעול ותמיכה עתידית
  • הדרכת מנהלים לעבודה עם הבוט

לוחות זמנים להגדרה

יצירת הבוט, שדה המשתמש, דף החיבור, מטפל האירועים—6–10 שעות. במקרים מורכבים (סטטוסים רבים, לוגיקה לא סטנדרטית) לוח הזמנים מתארך ל-2–3 ימים. אנו מבטיחים פעילות יציבה של ההתראות לאחר ההגדרה. הצוות שלנו מוסמך 1C-Bitrix ויש לו ניסיון של למעלה מ-10 שנים בפיתוח על פלטפורמה זו. במהלך עבודתנו, יישמנו 50+ פרויקטים עם אינטגרציית התראות טלגרם. קבל ייעוץ על הגדרת בוט טלגרם לחנות שלך.

טעויות הגדרה נפוצות

  1. שמירת הטוקן בקובץ תבנית—הטוקן צריך להיות ב-class TelegramBotService { private static string $token = '1234567890:AAHb-xxxxxx'; public static function send(string $chatId, string $text, array $options = []): bool { $params = array_merge([ 'chat_id' => $chatId, 'text' => $text, 'parse_mode' => 'HTML', ], $options); $ch = curl_init('https://api.telegram.org/bot' . self::$token . '/sendMessage'); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_POSTFIELDS => json_encode($params), CURLOPT_HTTPHEADER => ['Content-Type: application/json'], CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 5, ]); $response = curl_exec($ch); curl_close($ch); return json_decode($response, true)['ok'] ?? false; } } או בהגדרות המודול.
  2. חוסר בדיקה לקיום // /bitrix/.settings.php 'custom' => [ 'value' => [ 'telegram_bot_token' => '1234567890:AAHb-xxxxxx', ], ], —אם המשתמש לא חיבר את הבוט, הקוד צריך לצאת בצורה חלקה ללא שגיאות.
  3. לא כל סטטוסי ההזמנה מטופלים—עבור כל סטטוס יש לספק תבנית הודעה, אחרת לא תישלח התראה.
  4. התעלמות מהתראות ביטול הזמנה—סטטוס זה מוחמץ לעיתים קרובות, אך הלקוח צריך לדעת על ביטול.

כיצד לאבחן בעיות משלוח?

אם ההתראות לא מגיעות, בדוק אם המשתמש פתח שיחה עם הבוט (פקודת /start). ודא שהטוקן פעיל ושה-chat_id נשמר ב-UF_TELEGRAM_CHAT_ID. עיין בלוג של המטפל—ייתכן שיש הגבלת קצב של טלגרם (30 הודעות/שנייה). במקרים מורכבים, הפעל רישום שלב-אחר-שלב.

הזמן הגדרת בוט טלגרם—קבל ייעוץ והערכת פרויקט תוך יום אחד ללא תשלום מראש. אנו משלבים את הבוט עם ה-CRM וה-1C שלך, ומבטיחים התראות יציבות בכל שלבי ההזמנה.