Требуется разработать функцию, которая будет ежедневно собирать данные из нескольких рекламных кампаний Google Ads и отправлять сводный отчет в Telegram-бот. Функция должна запускаться каждый день в 8:00 по московскому времени (UTC+3), быть размещена в Google Cloud Functions, и автоматически отправлять отчеты с нужными метриками в Telegram.
#### Функциональные требования
1. **Сбор данных из Google Ads API**:
Подключиться к Google Ads API с использованием `service_account` с JSON-учетными данными.
Получать данные по следующим метрикам для **нескольких рекламных кампаний**:
Название кампании
Дата (предыдущий день)
Расходы (в долларах)
Количество показов
Количество кликов
Конверсии
Остаток средств на аккаунте
2. **Обработка и форматирование отчета**:
Формировать данные в отчете в виде текстового сообщения с разбивкой по каждой кампании.
Включить суммарные расходы и остаток средств по всем кампаниям (баланс).
3. **Отправка отчета в Telegram**:
Отправить отчетное сообщение в Telegram-бот, используя Bot API и токен Telegram-бота.
Использовать переданный `chat_id` для отправки сообщения в личный чат.
Важно: убедиться, что сообщения корректно обрабатывают Unicode-символы.
4. **Автоматизация запуска**:
Настроить функцию для запуска ежедневно в 8:00 по московскому времени с помощью Google Cloud Scheduler.
#### Данные для работы (предоставляется заказчиком)
- **Google Ads JSON Credentials**: JSON-файл с учетными данными `service_account` для подключения к Google Ads.
- **Telegram Token**: Токен бота для отправки сообщений в Telegram.
- **Telegram Chat ID**: ID чата, в который будут отправляться отчеты.
#### Пример формата отчета
Сообщение, отправляемое в Telegram, должно выглядеть следующим образом:
```
Кампания: Кампания 1
Дата: YYYY-MM-DD
Расходы: $XX.XX
Показы: XXX
Клики: XXX
Конверсии: XX
Остаток средств: $YY.YY
Кампания: Кампания 2
Дата: YYYY-MM-DD
Расходы: $XX.XX
Показы: XXX
Клики: XXX
Конверсии: XX
Остаток средств: $YY.YY
Общий остаток: $ZZ.ZZ
```
#### Ожидаемые результаты
- Полностью работающий код в одном файле Go, размещенный в Google Cloud Functions.
- Настроенный триггер для автоматического запуска функции в 8:00 по московскому времени ежедневно.
- Тестовый отчет, отправленный в Telegram для подтверждения корректности работы.
#### Критерии приемки
1. Функция успешно собирает данные из Google Ads API и отправляет отчет в Telegram.
2. Отчет содержит данные по всем активным кампаниям, включая общие итоги.
3. Функция запускается ежедневно в указанное время.
4. Код соответствует требованиям и работает стабильно без ошибок.
Разделы:
Опубликован:
07.11.2024 | 14:43 [поднят: 07.11.2024 | 14:43]
Заказ находится в архиве