• Как словить данные с вебхука из Elementor Pro Form?

    @parzif4l Автор вопроса
    Решение:

    Webhook = http://scripts/webhookformtg.php

    if ($_SERVER['REQUEST_METHOD'] === 'POST') {
        $encodedData = file_get_contents('php://input');
    }


    А если кому интересно отправка лидов из формы Elementor Pro Form в телеграм:

    <?php
    // Юзал библиотеку "irazasyed/telegram-bot-sdk": "dev-master"
    include('vendor/autoload.php'); 
    use Telegram\Bot\Api;
    
     // Токен бота
    $telegram = new Api('5063232304:AAFtmlcBuRQpYUtzd3biba5ZUwzRy0ZoYws');
    // id чата, getupdates в помощь вам
    $chat_id = -955466225; 
    $result = $telegram->getWebhookUpdates();
    $result = json_decode($result, true);
    
    $callback_data = $result['callback_query']['data'];
    $callback_id = $result['callback_query']['message']['chat']['id'];
    $callback_message_text = $result['callback_query']['message']['text'];
    $callback_message_id = $result['callback_query']['message']['message_id'];
    $callback_from = $result['callback_query']['from']['first_name'];
    $text_message = $result['message']['text'];
    
    // Перехват инфы из webhook-a
    if ($_SERVER['REQUEST_METHOD'] === 'POST') { 
        $encodedData = file_get_contents('php://input');
    } 
    
    // Функция расшифровки данных полученных из webhook
    function decodeData($encodedData) { 
        $decodedData = [];
        parse_str(urldecode($encodedData), $decodedData);
        return $decodedData;
    }
    
    // Расшифровка данных полученных из webhook
    $decodedData = decodeData($encodedData);
    //Пустой массив для хранения данных
    $dataArray = []; 
    
    //Перебор данных в массив с ключами
    foreach ($decodedData as $key => $value) {
        $dataArray[$key] = $value; 
    }
    
    // Тект/заголовки
    $form       = "<strong>Форма:</strong>   ";
    $comment    = "<strong>Комментарий:</strong>   ";
    $name       = "\n<strong>Имя:</strong>   ";
    $number      = "<strong>Номер телефона:</strong>   ";
    
    // Массив с данными из webhook
    $arr = array(
        $form => "Eagleway",
        $comment => $dataArray["Дополнительные_вопросы"],
        $name => $dataArray["Ваше_имя"],
        $number =>  $dataArray["Ваш_номер_телефона:"]. "\n",
    );
    
    // Сбор текста 
    foreach ($arr as $key => $value) {
        if ($key == " ") {
            $txt .= " " . $key . " <em>" . $value . "</em>" . "\n";
        } else {
            $txt .= "" . $key . " <em>" . $value . "</em>" . "\n";
        }
    };
    
    // Отправка сообщении
    $telegram->sendMessage([
        'chat_id' => $chat_id,
        'text' => $txt,
        'parse_mode' => 'html']);
    Ответ написан
    Комментировать