Разделение канала для лучшего охвата целевой аудитории
Проанализировав работу канала решил, что количество сообщений за весь Краснодарский край избыточно для обычного пользователя. Как я вижу роль канала - узнавать на какой улице сейчас работают эвакуаторы. А бот уже сообщит, если вдруг твою машину эвакуировали.
Поэтому путем небольшого изменения кода, добавил рассылку сообщений в новые каналы уже конкретно по самым крупным городам (где чаще эвакуируют машины).
Код:
if ($creationDateTime->diffInDays(Carbon::now()) <= 1) {
$text = "🚩 <b>" . $entry[6] . "</b>\n\n";
$text .= "Эвакуирован - <b>" . $entry[3] . "</b>\n";
$text .= "Дата и время эвакуации: <b>" . $formattedDateTime . "</b>\n";
$text .= "Нарушение: <b>" . $entry[16] . " КОАП РФ</b>\n\n";
$text .= "📌 Адрес штрафстоянки: <b>" . $entry[9] . "</b>\n";
$text .= "☎ Номер телефона: <code>" . $entry[12] . "</code>\n\n";
$text .= 'Напиши номер своей машины <a href="https://t.me/EvaKubanBot">нашему боту</a>, чтобы получить уведомление об эвакуации!';
// ID чата общий
$generalChatId = "@EvacuatorKuban";
// ID остальных чатов
$specificChatIds = [
"г.Краснодар" => "@EvacuatorKrd",
"г.Сочи" => "@EvacuatorSochi",
"г.Анапа" => "@EvacuatorAnapa",
"г.Новороссийск" => "@EvacuatorNvrsk",
];
// Проверяем значение $entry[5] и отправляем сообщение в соответствующий чат, если оно совпадает
if (array_key_exists($entry[5], $specificChatIds)) {
$chanel = [
'chat_id' => $specificChatIds[$entry[5]],
'text' => $text,
'parse_mode' => 'HTML',
'disable_web_page_preview' => true,
];
Request::sendMessage($chanel);
sleep(1);
}
// Отправляем сообщение в общий чат
$chanel = [
'chat_id' => $generalChatId,
'text' => $text,
'parse_mode' => 'HTML',
'disable_web_page_preview' => true,
];
Request::sendMessage($chanel);
}
Подробнее о боте и канале в первом анонимном посте.
Ссылка на общий канал и на сам бот.
Новые каналы:
- Краснодар;
- Сочи;
- Новороссийск;
- Анапа.