4
ध्यान केंद्रित करना
1271
समर्थक

रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें

में बनाया: 2020-07-02 12:03:23, को अपडेट: 2023-09-28 21:08:12
comments   4
hits   4730

रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें

I. सारांश

वास्तविक दुनिया के लेन-देन में इन्वेंटर क्वांट रोबोट की ट्रेडिंग स्थिति से अवगत रहने के लिए, हमें कभी-कभी रोबोट द्वारा निष्पादित ट्रेडिंग परिणामों को वीचैट, ईमेल, टेक्स्ट संदेश आदि पर भेजने की आवश्यकता होती है। हालाँकि, हर दिन सैकड़ों तरह के संदेशों के साथ, लोग अब इन संदेशों के प्रति संवेदनशील नहीं हैं, जिसके परिणामस्वरूप महत्वपूर्ण संदेशों को समय पर जाँचने में असमर्थता होती है। इसलिए, यह लेख डिंगटॉक समूह इंटरफ़ेस को कॉल करके रोबोट संदेश पुश को लागू करता है।

2. डिंगटॉक ग्रुप रोबोट

डिंगटॉक ग्रुप रोबोट एक उन्नत विस्तारित फ़ंक्शन है। जब तक आपके पास डिंगटॉक खाता है, आप इसका उपयोग कर सकते हैं। यह तीसरे पक्ष की जानकारी को डिंगटॉक समूह में एकत्रित कर सकता है और जानकारी के स्वचालित सिंक्रनाइज़ेशन को साकार कर सकता है। यह वेबहुक प्रोटोकॉल के कस्टम एक्सेस का समर्थन करता है, और इन्वेंटर क्वांटिटेटिव रोबोट के माध्यम से रिमाइंडर, अलार्म और अन्य जानकारी को डिंगटॉक समूह में एकत्रित करता है। तीन संदेश प्रारूपों का समर्थन करता है: पाठ, लिंक, और मार्कडाउन, और पांच संदेश प्रकार। एक ही संदेश को एक ही समय में कई डिंगटॉक समूहों में भी भेजा जा सकता है। आधिकारिक लिंक देखें: https://ding-doc.dingtalk.com/doc#/serverapi2/ye8tup

3. एक रोबोट बनाएं

चरण 1: डिंगटॉक समूह बनाएं रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें जब भी डिंगटॉक समूह में कोई कस्टम रोबोट बनाया जाता है, तो एक अद्वितीय हुक पता उत्पन्न होता है, जिसे हम वेबहुक पता कहते हैं। वेबहुक पते पर संदेश भेजने से, डिंगटॉक समूह संदेश प्राप्त करेगा। आइए पीसी पर डिंगटॉक को एक उदाहरण के रूप में लें। सबसे पहले, समूह चैट शुरू करने के लिए ऊपरी बाएँ कोने में “+” चिह्न पर क्लिक करें। यदि आप केवल स्वयं संदेश प्राप्त करना चाहते हैं, तो आप यादृच्छिक रूप से दो लोगों को जोड़ सकते हैं और फिर उन्हें बाहर निकाल सकते हैं। भरें समूह नाम में: “FMZ रोबोट”, और समूह प्रकार के रूप में सामान्य का चयन करें। बस समूह।

चरण 2: डिंगटॉक समूह रोबोट जोड़ें अपने अवतार पर क्लिक करें, रोबोट प्रबंधन चुनें, फिर अनुकूलित करें चुनें, और जोड़ें पर क्लिक करें। रोबोट का नाम अनुकूलित करें: “FMZ” और इसे आपके द्वारा अभी बनाए गए डिंगटॉक समूह में जोड़ें। रोबोट तीन सुरक्षा सेटिंग्स का समर्थन करता है: रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें

  • कस्टम कीवर्ड: जानकारी केवल तभी सिंक्रनाइज़ की जाएगी जब उसमें यह कीवर्ड शामिल होगा.
  • हस्ताक्षर जोड़ें: पासवर्ड सेट करने के बराबर।
  • आईपी ​​पता: निश्चित तृतीय-पक्ष जानकारी का आईपी पता खंड। रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें यदि इसका उपयोग केवल अनुस्मारक या अलार्म के लिए किया जाता है, तो बस कस्टम कीवर्ड चुनें। यहां हम जो कीवर्ड परिभाषित करते हैं वह है “:”, जिसका अर्थ है कि जब इन्वेंटर क्वांट रोबोट द्वारा भेजी गई जानकारी में “:” शामिल होता है, तो यह जानकारी डिंगटॉक समूह में भेज दी जाएगी। फिर समझौते को पूरा करने के लिए सहमत पर क्लिक करें। अंत में, बाद में उपयोग के लिए Webhook पते की प्रतिलिपि बनाएँ.

4. कोड कार्यान्वयन

वेबहुक पता प्राप्त करने के बाद, हम इस डिंगटॉक समूह को जानकारी भेजने के लिए इन्वेंटर क्वांटिटेटिव स्ट्रैटेजी में इस पते पर एक 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)

5. रोबोट का परीक्षण

उपरोक्त कोड में, हमने हर मिनट मुख्यधारा की डिजिटल मुद्राओं की कीमतें प्राप्त करने और इस जानकारी को डिंगटॉक समूह तक पहुंचाने के लिए एक मामला लिखा है: रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें रोबोट पुश संदेशों को क्रियान्वित करने के लिए डिंगटॉक एपीआई को कॉल करें