Google Таблиц и отправляет форматированные сообщения в определенные
сообщества Viber на основе столбца с названием ветки. Сценарий работает круглосуточно
на локальном компьютере под управлением Windows.
Что я пытаюсь сделать
– Прочитать строки из Google Таблиц с помощью gspread.
– Для каждой строки, срок выполнения которой истек (3 дня с момента последней отправки), создать
форматированное сообщение.
– Отправить это сообщение нужному сообществу Viber на основе
название ветки, сопоставленное с идентификатором сообщества.
– Также отправьте вложенный файл (PDF или изображение), если ссылка присутствует.
Что я пробовал
На основании документации Viber REST API я использую конечную точку /pa/post
так как мне нужны упреждающие/исходящие отправки, а не ответ пользователю
сообщение. Вот моя текущая реализация:
Код: Выделить всё
import requests
def send_text(community_id: str, text: str, token: str, bot_name: str) -\> bool:
payload = {
"auth_token": token,
"to": community_id,
"type": "text",
"text": text,
"sender": {"name": bot_name}
}
r = requests.post(
"https://chatapi.viber.com/pa/post",
json=payload,
headers={"Content-Type": "application/json"},
timeout=10
)
result = r.json()
return result.get("status") == 0
1. Является ли /pa/post правильной конечной точкой для активной отправки в сообщество Viber
(без предварительного сообщения пользователем боту)?
2. Нужно ли назначать бота администратором сообщества или
достаточно быть постоянным участником?
3. Правильная ли
структура полезной нагрузки при отправке вложенного файла (PDF)?
Код: Выделить всё
file_payload = {
"auth_token": token,
"to": community_id,
"type": "file",
"media": "https://drive.google.com/file/...",
"file_name": "document.pdf",
"size": 0,
"sender": {"name": bot_name}
}
на Филиппинах?
Среда
– Python 3.11
– запросы 2.31
– Windows 11
– Viber Bot создан на сайте Partners.viber.com
Любая помощь приветствуется. Спасибо!
Мобильная версия