Вызов интерфейса кнопок для отправки сообщений роботам

Автор: , Создано: 2020-07-02 12:03:23, Обновлено: 2023-09-28 21:08:12

img

Первое: резюме

Для того, чтобы вовремя получить информацию о состоянии торговли изобретателями, иногда нам нужно отправлять результаты торговли, выполненные роботом, в WeChat, электронную почту, смс и т. д. Но каждый день сотни различных сообщений делают эту информацию нечувствительной, что приводит к тому, что важная информация не может быть вовремя получена, поэтому эта статья позволяет роботам отправлять сообщения с помощью интерфейса нажатия.

Во-вторых, робот-накопитель.

Робот-накопитель - это высокотехнологичное расширение, которое можно использовать, если у вас есть накопительный номер. Он может объединять информацию третьих лиц в накопитель, чтобы автоматически синхронизировать информацию. Он поддерживает пользовательский доступ к протоколу Webhook, который объединяет информацию о предупреждениях, тревогах и т. д. в накопитель. Ссылка на официальную ссылку:https://ding-doc.dingtalk.com/doc#/serverapi2/ye8tup

Третье: создание роботов.

Первый шаг: создание группы. imgПри создании персонализированного бота, создается уникальный Hook-адрес, который мы называем WebHook-адрес, и сообщение получается от бота, отправляемого в этот WebHook-адрес. Например, мы используем PC-настройки, нажав на кнопку + кнопка в верхнем левом углу, чтобы начать разговор.

Шаг 2: Добавить робот-накопительНажмите на заголовок, выберите управление ботом, затем выберите настройки, нажмите добавление. Название настройки бота: ФМЗ ФМЗ, добавленный к недавно созданному набору гвоздей.img

  • Ключевое слово: только сообщения, содержащие это ключевое слово, будут синхронизированы.
  • Примечание: это равносильно установке пароля.
  • IP-адрес: IP-адрес, на котором фиксируется сторонняя информация.img imgЕсли вы используете только напоминание или тревогу, вы можете выбрать пользовательское ключевое слово. Здесь мы определяем ключевое слово как: : , то есть, когда изобретатель количественно определяет, что сообщение, отправленное роботом, содержит : , это сообщение будет отправлено в гвоздь.

Четвертое, реализация кода

После получения адреса Webhook мы можем запустить HTTP POST-запрос на этот адрес в политике количественного определения изобретателя, чтобы отправить сообщение этому гну. Обратите внимание, что при запуске запроса POST необходимо настроить код на UTF-8.

import requests
import json
from datetime import datetime, timedelta, timezone


# 向钉钉群输出信息
def msg(text):
    token ="0303627a118e739e628bcde104e19cf5463f61a4a127e4f2376e6a8aa1156ef1"
    headers = {'Content-Type': 'application/json;charset=utf-8'}  # 请求头
    api_url = f"https://oapi.dingtalk.com/robot/send?access_token={token}"
    json_text = {
        "msgtype": "text",  # 信息格式
        "text": {
            "content": text
        }
    }
    # 发送并打印信息
    Log(requests.post(api_url, json.dumps(json_text), headers=headers).content)

    
# 测试函数
def onTick():
    arr = ['BTC', 'ETH', 'XRP', 'BCH', 'LTC']  # 主流数字货币
    # 获取东八区时间
    bj_dt = str(datetime.now().astimezone(timezone(timedelta(hours=8))))
    bj_dt = bj_dt.split('.')[0]  # 处理时间
    text = f'{bj_dt}\n'  # 定义信息内容
    for i in arr:  # 循环主流数字货币数组
        exchange.IO("currency", f"{i}_USDT")  # 切换交易对
        ticker = exchange.GetTicker().Last  # 获取最新价格
        if i == 'LTC':
            full = ' :'
        else:
            full = ':'
        text = text + f"{i}/USDT{full}${ticker}\n"  # 处理信息内容
    msg(text)  # 调用msg函数,输出信息
    

# 策略入口
def main():
    while True:  # 进入无线循环
        onTick()  # 执行onTick函数
        Sleep(1000 * 60)  # 休眠一分钟

Например, бот может синхронизировать сообщения с другими членами группы, устанавливая номер телефона.

# 向钉钉群输出信息
def msg(text):
    token = "0303627a118e739e628bcde104e19cf5463f61a4a127e4f2376e6a8aa1156ef1"
    headers = {'Content-Type': 'application/json;charset=utf-8'}  # 请求头
    api_url = f"https://oapi.dingtalk.com/robot/send?access_token={token}"
    json_text = {
        "msgtype": "text",  # 信息格式
        "text": {
            "content": text
        },
        "at": {
            "atMobiles": [
                "16666666666",  # 被@的手机号码
                "18888888888"  # 被@的手机号码
            ],
            "isAtAll": False  # 不@所有人
        }
    }
    # 发送并打印信息
    Log(requests.post(api_url, json.dumps(json_text), headers=headers).content)

Пятое: тестирование роботов

Мы написали пример, в котором мы получаем цены на основные цифровые валюты каждую минуту и отправляем эту информацию в гвоздики:img img


Связанные

Больше

Аль-АльДам, а если кто-нибудь из вас сможет подтолкнуть корпоративный WeChat webhook?

Микрошаги.Спросите, теперь, когда мы ограничили продвижение в WeChat, можно ли продвигать наклейки?