Publier un message sur Google Hangouts Chat avec un fil de discussion (Python)

Aperçu

Nous avons résumé comment publier un message sur Google Hangouts Chat en spécifiant un fil de discussion.

procédure

  1. Créez une salle de chat
  2. Configurer un webhook
  3. Publier un message à l'aide de l'URL du webhook
  4. Obtenez l'identificateur de fil de la réponse lors de la publication d'un message
  5. Publiez un message à l'aide de l'URL du webhook et de l'identifiant du fil de discussion

1. Créez une nouvelle salle de chat

Je vais l'omettre. (Je peux l'ajouter plus tard

2. Configurer un webhook

Je vais l'omettre. (Je peux l'ajouter plus tard

3. Publier un message à l'aide de l'URL du webhook

Publiez un message à l'aide de l'URL du webhook.

import requests

webhook_url = 'https://chat.googleapis.com/*******'

response = requests.post(
  webhook_url,
  json={"text": "Test de transmission\n"}
)

Le résultat ressemble à ceci. aaaaa.png

Si vous publiez plusieurs fois de cette façon, chaque message sera publié dans un fil de discussion distinct. スクリーンショット 2020-02-19 0.42.45.png

4. Obtenez l'identificateur de thread à partir de la réponse

Imprimez la réponse lorsque vous publiez un message. Le contenu de la réponse décodée est décrit dans l'attribut text.

print(response.text)

Copiez l'identificateur de thread répertorié dans "thread".

{
  "name": "spaces/***********/messages/***********************",
  "sender": {
    "name": "users/*********************",
    "displayName": "test_webhook",
    "avatarUrl": "",
    "email": "",
    "domainId": "",
    "type": "BOT"
  },
  "text": "Test de transmission\n",
  "cards": [],
  "previewText": "",
  "annotations": [],
  "thread": {
    "name": "spaces/***********/threads/***********"← ici
  },
  "space": {
    "name": "spaces/***********",
    "type": "ROOM",
    "displayName": "test"
  },
  "fallbackText": "",
  "argumentText": "Test de transmission\n",
  "createTime": "2020-02-18T14:33:38.083263Z"
}

5. Publier un message en utilisant l'identifiant du fil

Utilisez l'identificateur de thread obtenu à l'étape 4 pour spécifier le thread et publier le message.

import requests

webhook_url = 'https://chat.googleapis.com/*******'
thread = "spaces/***********/threads/***********"

response = requests.post(
  webhook_url,
  json = {
      "text": "Test de transmission\n",
      "thread": {
          "name": thread
      }
  }
)

Ensuite, le message sera publié dans le fil de discussion qui a publié le message dans 3. スクリーンショット 2020-02-19 0.48.45.png

Résumé

J'ai pu publier un message sur Google Hangouts Chat en spécifiant un fil de discussion.

Postscript

Si vous le souhaitez, veuillez commenter.

Recommended Posts

Publier un message sur Google Hangouts Chat avec un fil de discussion (Python)
Envoyer un message à LINE avec Python (LINE Notify)
Publiez sur Slack avec Python 3
Comment installer NPI + envoyer un message à la ligne avec python
Créer un message correspondant à la localisation avec la chaîne de traduction python
Publiez facilement sur Twitter avec Python 3
Publier un message d'IBM Cloud Functions sur Slack en Python
J'ai essayé de créer une application de notification de publication à 2 canaux avec Python
Télécharger des images sur Google Drive avec Python
Envoyer un message de Slack à un serveur Python
Comment lire un fichier CSV avec Python 2/3
Comment envoyer un message à LINE avec curl
Essayez de dessiner une courbe de vie avec python
Je veux faire un jeu avec Python
Publiez le titre en plein essor de YouTube sur Twitter avec python3
Décidez d'une mission de laboratoire avec Python (fiction)
Étapes pour créer un bot Twitter avec Python
Essayez de créer un groupe de dièdre avec Python
Télécharger des fichiers sur Google Drive avec Lambda (Python)
Je veux écrire dans un fichier avec Python
[Python] Lancer un message sur le canal Slack
Zubu amateur veut démarrer Python
Comment convertir / restaurer une chaîne avec [] en python
Mémo connecté à HiveServer2 d'EMR avec python
[Python] Comment dessiner un graphique linéaire avec Matplotlib
Faisons un outil de veille de commande avec python
Python Ver. Présentation de WebPay avec un peu de code
Un moyen facile de gratter avec Python en utilisant Google Colab
De l'achat d'un ordinateur à l'exécution d'un programme sur python
[Python] Un mémo pour écrire du CSV verticalement avec Pandas
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
Transférer vers un Drive partagé avec l'API Google Drive V3
Je veux faire fonctionner un ordinateur quantique avec Python
[Python] Comment dessiner un diagramme de dispersion avec Matplotlib
[Python] Road to the Serpent (5) Jouez avec Matplotlib
Publier de Python vers Slack
publier sur vim → Python → Slack
Exécutez le programme sans créer d'environnement Python! !! (Comment démarrer avec Google Colaboratory)
Une route vers Python intermédiaire
Comment convertir un tableau en dictionnaire avec Python [Application]
Créez un bot Mastodon avec une fonction pour répondre automatiquement avec Python
J'ai créé un package pour filtrer les séries chronologiques avec python
Une collection de techniques professionnelles compétitives à résoudre avec Python
Connectez-vous à Wikipedia avec Python
Probablement le moyen le plus simple de créer un pdf avec Python 3
Expérimentez pour créer un PDF indépendant pour Kindle avec Python
Publier sur Twitter en utilisant Python
Essayez d'ouvrir une sous-fenêtre avec PyQt5 et Python
Faites une loterie avec Python
Obtenir l'ID de thread avec python
Je souhaite envoyer un message de Python à LINE Bot
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Basculer python vers 2.7 avec des alternatives
Écrire en csv avec Python
Accédez à Google Drive avec Python