Die Anrufung der Schrauben-Schnittstelle ermöglicht die Botsendung

Schriftsteller: , Erstellt: 2020-07-02 12:03:23, Aktualisiert: 2023-09-28 21:08:12

img

Erstens: Zusammenfassung

In der realen Transaktion müssen wir manchmal die Ergebnisse der Transaktionen, die der Roboter durchführt, an WeChat, E-Mail, SMS usw. senden, um den Status der quantitativen Roboter-Transaktionen der Erfinder rechtzeitig zu erfahren. Aber hunderte verschiedene Informationen pro Tag machen diese Informationen unempfindlich und führen dazu, dass wichtige Informationen nicht rechtzeitig abgerufen werden können.

Zweitens, Roboter mit Nagelgruppen.

Die Nailhook-Roboter sind eine erweiterte Funktion, die nur dann genutzt werden kann, wenn eine Nail-Konto-Nummer vorhanden ist. Sie können Informationen von Drittanbietern in die Nailhook-Gruppe zusammengefügt und automatisch synchronisiert werden. Sie unterstützen den benutzerdefinierten Zugriff des Webhook-Protokolls, die durch die Erfindung von Quantitative Bots Informationen wie Warnungen, Alarme und andere Informationen in die Nailhook-Gruppe zusammengefügt. Der offizielle Link:https://ding-doc.dingtalk.com/doc#/serverapi2/ye8tup

3. Erstellen von Robotern

Schritt 1: Gründung einer Nail- und Nailgruppe imgJedes Mal, wenn eine benutzerdefinierte Botschaft erstellt wird, erzeugt sie eine einzigartige Hook-Adresse, die wir WebHook-Adressen nennen. Die Botschaft wird von der Hook-Gruppe empfangen, indem eine Nachricht an diese WebHook-Adresse gesendet wird.

Schritt 2: Fügen Sie Roboter hinzuKlicken Sie auf die Bildobjekte, wählen Sie Botmanagement, wählen Sie dann Custom, klicken Sie auf Add.img

  • Definierte Schlüsselwörter: Nur Informationen mit diesem Schlüsselwort werden synchronisiert.
  • Das bedeutet, dass Sie ein Passwort setzen müssen.
  • IP-Adressen: IP-Adressen, in denen Informationen von Drittanbietern festgehalten werden.img imgWenn Sie nur eine Warnung oder Alarm verwenden, können Sie ein benutzerdefiniertes Schlüsselwort wählen. Hier definieren wir das Schlüsselwort "Webhook": "Webhook", d.h. wenn der Erfinder die Informationen, die ein Quantitativroboter sendet, mit "Webhook": "Webhook" kombiniert, werden diese Informationen in die Nägelgruppe geschoben. Dann klicken Sie auf Zustimmungsvertrag fertig.

Vier, die Code-Implementierung

Nachdem wir eine Webhook-Adresse erhalten haben, können wir eine HTTP-POST-Anfrage an diese Adresse in der Inventor-Quantifizierungs-Politik starten, um Informationen an diese Nackengruppe zu senden. Beachten Sie, dass die Charaktersatz-Code auf UTF-8 gesetzt werden muss, wenn Sie eine POST-Anfrage starten.

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)  # 休眠一分钟

Bei der Synchronisierung von Bots kann man die Telefonnummer von mehreren Gruppenmitgliedern mit @ synchronisieren. Ein @-Mitglied wird mit @-Meldungen alarmiert, wenn es diese Nachricht erhält.

# 向钉钉群输出信息
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)

Fünf: Testroboter

In diesem Code haben wir ein Beispiel geschrieben, in dem wir alle Minute den Preis einer Mainstream-Kryptowährung abrufen und diese Informationen in die Nail-Cluster schieben:img img


Verwandt

Mehr

Ich weiß.Das ist ein großes Problem, aber ich bin der Meinung, dass es nicht möglich ist, die Webhook-Funktionen zu verändern.

Die Wellen schwimmen.Kann man jetzt WeChat-Push-Verbindungen nutzen, wenn sie eingeschränkt sind?