Как пометить людей в чате Google с помощью веб-крюка Python?
Я написал веб-крючок, который общается из Bitbucket в Google Chat. Это работает, но я хочу добавить к нему, чтобы он мог помечать людей автоматически в посте, который он делает.
Я знаю, что могу отправить запрос, который выглядит следующим образом, используя что-то вроде Postman:
{
"text": "<users/userID> Test?",
"thread": {
"name": "spaces/spaceID/threads/threadID"
}
}
И это работает и теги пользователя правильно.
Но когда я пытаюсь отправить сообщение типа карты https://developers.google.com/hangouts/chat/reference/message-formats/cards, отправленное с Python, оно не может пометить кого-либо.
Вот как выглядит фрагмент кода для моего сообщения:
"cards": [
{
"header": {
"title": f"New PR from {author}",
"subtitle": repo,
"imageUrl": avatar
},
"sections": [
{
"widgets": [
{
"keyValue": {
"topLabel": "Reviewers:",
"content": "<users/all>",
"bottomLabel": "Status: Open"
}
}
]
}
]
}
]
И код для фактической отправки запроса:
headers = { "Content-Type": "application/json; charset=utf-8" }
http_object = Http()
response = http_object.request(
uri=google_url,
method="POST",
headers=headers,
body=dumps(message),
)
Запрос отправляется с использованием httplib2
,
Что я вижу в выводе, где содержимое должно быть для виджета, все, что я вижу, это ---
, когда я ожидаю увидеть тег для всех на канале. Я замечаю в запросе, содержание выглядит "\\u003cusers/all\\u003e"
, Я не уверен, что эта кодировка нарушает ее или нет, я не смог обойти это.