【Python】Yahoo天気予報をスクレイピングしてデータを入手する
ISHI
ISHITECH
pymsteamsを利用して、Microsoft Teamsにメンションを送る方法について解説します。
上記記事を参考にインストール等の作業をおこなってください。
from pymsteams import connectorcard
class MsTeams:
def __init__(self, webhook):
self.teams = connectorcard(webhook)
def create_mention_payload(self, user_id, user_display_name):
mention_entity = {
"type": "mention",
"text": f"<at>{user_display_name}</at>",
"mentioned": {
"id": user_id,
"name": user_display_name
}
}
adaptive_card_content = {
"type": "AdaptiveCard",
"body": [{"type": "TextBlock", "text": f"Hello {mention_entity['text']}"}],
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.0",
"msteams": {"entities": [mention_entity]}
}
self.teams.payload = {
"type": "message",
"attachments": [{
"contentType": "application/vnd.microsoft.card.adaptive",
"content": adaptive_card_content
}]
}
def send(self):
self.teams.send()
teams = MsTeams("<Microsoft Teams Webhook URL>")
teams.create_mention_payload("user_id", "user_display_name")
teams.send()
上記サンプルコードは以下の処理を行なっています
connectorcard
オブジェクトを初期化します。connectorcard
のsend
メソッドを呼び出し、Teamsにメッセージを送信します。