Доброго дня!
Если вы не хотите подключать платные модули или хотите разработать своего бота для отправки уведомлений о новых сделках из AmoCRM в Telegram, то вы можете воспользоваться нашей разработкой.
$chatID = 'тут ваш чат ID'; - chat ID. Узнать его можно при помощи добавления в группу бота @username_to_id_bot
if ($customField['id'] == '222') { // ID поля который вы хотите передавать2
ID поля можно узнать в настройках сделки.
Если вы не хотите подключать платные модули или хотите разработать своего бота для отправки уведомлений о новых сделках из AmoCRM в Telegram, то вы можете воспользоваться нашей разработкой.
- Для начала вам нужно перейти в @BotFather и создать нового бота
- Далее создайте группу - если хотите получать уведомления в группу
- Перейдите на ваш сервер/хостинг и создайте любой файл в формате php
- Откройте редактор кода и внесите следющий код
PHP:
<?php
// Функция для отправки сообщения в Telegram
function sendTelegramMessage($message) {
$telegramToken = 'тут токен';
$chatID = 'тут ваш чат ID';
$url = "https://api.telegram.org/bot$telegramToken/sendMessage";
$postData = http_build_query([
'chat_id' => $chatID,
'text' => $message,
'parse_mode' => 'Markdown'
]);
$options = [
'http' => [
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => $postData
]
];
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
// Логирование для отладки
file_put_contents('debug_log.txt', "Сообщение отправлено: " . $message . "\n", FILE_APPEND);
file_put_contents('debug_log.txt', "Ответ Telegram API: " . $result . "\n", FILE_APPEND);
}
if ($_SERVER["REQUEST_METHOD"] == "POST") {
parse_str(file_get_contents('php://input'), $parsedData);
// Логирование разобранных данных
file_put_contents('debug_log.txt', "Parsed Data: " . print_r($parsedData, true) . "\n", FILE_APPEND);
// Проверка наличия данных о сделке
if (isset($parsedData['leads']['add'][0])) {
$lead = $parsedData['leads']['add'][0];
$offer = $comment = $dealUrl = "";
foreach ($lead['custom_fields'] as $customField) {
if ($customField['id'] == '111') { // ID поля который вы хотите передавать
$field_one = $customField['values'][0]['value'];
}
if ($customField['id'] == '222') { // ID поля который вы хотите передавать2
$field_two = $customField['values'][0]['value'];
}
}
// Создание URL сделки
$dealUrl = "https://alexbuylead.amocrm.ru/leads/detail/" . $lead['id'];
// Формирование сообщения
$message = "*📍Уведомление о сделке 📍*\n";
$message .= "Название поля1: " . $field_one . "\n";
$message .= "Название поля2: " . $field_two . "\n";
$message .= "Ссылка: " . $dealUrl;
sendTelegramMessage($message);
}
}
?>
- В этом коде необходимо заменить строчки:
$chatID = 'тут ваш чат ID'; - chat ID. Узнать его можно при помощи добавления в группу бота @username_to_id_bot
- Если вы хотите передавать доп.поля, то вы можете заменить значения в строчках:
if ($customField['id'] == '222') { // ID поля который вы хотите передавать2
ID поля можно узнать в настройках сделки.
- После этого необходимо перейти в AmoCRM и открыть вкладку AmoМаркет
- В нем нужно создать вебхук
- В ссылке - указываете путь до вашего php файла, к примеру https://site.ru/amo.php
- В реакции - Сделка добавлена