community.general.discord 模块 – 发送 Discord 消息

注意

此模块是 community.general 集合(版本 10.1.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.general

要在 playbook 中使用它,请指定:community.general.discord

community.general 3.1.0 中的新功能

概要

  • 使用 Discord webhook API 向 Discord 频道发送消息。

参数

参数

注释

avatar_url

字符串

覆盖 webhook 的默认头像。

content

字符串

要发送到 Discord 频道的消息内容。

必须指定 contentembeds 中的至少一个。

embeds

列表 / 元素=字典

将消息作为嵌入发送到 Discord 频道。

嵌入可以具有彩色边框、嵌入的图像、文本字段等。

允许的参数在 Discord 文档中描述:https://discord.com/developers/docs/resources/channel#embed-object

必须指定 contentembeds 中的至少一个。

tts

布尔值

如果这是 TTS(文本到语音)消息,则将其设置为 true

选项

  • false ←(默认)

  • true

username

字符串

覆盖 webhook 的默认用户名。

webhook_id

字符串 / 必需

webhook ID。

来自 Discord webhook URL 的格式:/webhooks/{webhook.id}/{webhook.token}

webhook_token

字符串 / 必需

webhook 令牌。

来自 Discord webhook URL 的格式:/webhooks/{webhook.id}/{webhook.token}

属性

属性

支持

描述

check_mode

支持:完全

可以在 check_mode 中运行,并返回更改状态预测,而无需修改目标。

diff_mode

支持:

当处于 diff 模式时,将返回有关已更改(或可能需要在 check_mode 中更改)的详细信息。

另请参阅

另请参阅

API 文档

Discord API 的文档

示例

- name: Send a message to the Discord channel
  community.general.discord:
    webhook_id: "00000"
    webhook_token: "XXXYYY"
    content: "This is a message from ansible"

- name: Send a message to the Discord channel with specific username and avatar
  community.general.discord:
    webhook_id: "00000"
    webhook_token: "XXXYYY"
    content: "This is a message from ansible"
    username: Ansible
    avatar_url: "https://docs.ansible.org.cn/ansible/latest/_static/images/logo_invert.png"

- name: Send a embedded message to the Discord channel
  community.general.discord:
    webhook_id: "00000"
    webhook_token: "XXXYYY"
    embeds:
      - title: "Embedded message"
        description: "This is an embedded message"
        footer:
          text: "Author: Ansible"
        image:
          url: "https://docs.ansible.org.cn/ansible/latest/_static/images/logo_invert.png"

- name: Send two embedded messages
  community.general.discord:
    webhook_id: "00000"
    webhook_token: "XXXYYY"
    embeds:
      - title: "First message"
        description: "This is my first embedded message"
        footer:
          text: "Author: Ansible"
        image:
          url: "https://docs.ansible.org.cn/ansible/latest/_static/images/logo_invert.png"
      - title: "Second message"
        description: "This is my first second message"
        footer:
          text: "Author: Ansible"
          icon_url: "https://docs.ansible.org.cn/ansible/latest/_static/images/logo_invert.png"
        fields:
          - name: "Field 1"
            value: "Value of my first field"
          - name: "Field 2"
            value: "Value of my second field"
        timestamp: "{{ ansible_date_time.iso8601 }}"

返回值

常见返回值记录在 此处,以下是此模块独有的字段

描述

http_code

整数

Discord API 返回的响应代码。

返回:总是

示例: 204

作者

  • Christian Wollinger (@cwollinger)