"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > प्रलेखन जो रिएक्ट देशी में एक्सियोस के साथ डायरेक्ट लाइन एपीआई को कॉल करता है

प्रलेखन जो रिएक्ट देशी में एक्सियोस के साथ डायरेक्ट लाइन एपीआई को कॉल करता है

2025-04-14 को पोस्ट किया गया
ब्राउज़ करें:765

]

Documentation: Using Direct Line API in a React Native Application with Axios आवश्यक शर्तें

आगे बढ़ने से पहले, सुनिश्चित करें कि निम्नलिखित जगह में हैं:


1। डायरेक्ट लाइन सीक्रेट:

Coilot Chat Bot से प्रत्यक्ष लाइन गुप्त प्राप्त करें।

२। रिएक्ट नेटिव डेवलपमेंट वातावरण: एक वर्किंग रिएक्ट नेटिव प्रोजेक्ट सेट करें।

३। Axios लाइब्रेरी स्थापित: NPM का उपयोग करके अपनी परियोजना निर्भरता में Axios जोड़ें Axios या yarn And Axios।

४। Websocket समर्थन: सुनिश्चित करें कि Websocket API आपके आवेदन वातावरण के साथ संगत है।

५। बुनियादी ज्ञान: जावास्क्रिप्ट के साथ परिचित, रिएक्ट देशी, और रेस्टफुल एपिस।

विषयसूची


प्रमाणीकरण

]
  1. टोकन को ताज़ा करना

    बातचीत शुरू करना
  2. ]

    बॉट को गतिविधि भेजना
  3. बॉट से गतिविधि प्राप्त करना

  4. बातचीत समाप्त करना
  5. ]

    संदर्भ
  6. 1। प्रमाणीकरण
  7. प्रत्यक्ष लाइन एपीआई को प्रमाणित करने के लिए एक रहस्य की आवश्यकता होती है। Azure Bot सेवा पोर्टल से रहस्य प्राप्त करें।

  8. 2। टोकन उत्पन्न करना

    टोकन सुरक्षित संचार शुरू करने के लिए रहस्य का उपयोग करके उत्पन्न होते हैं।
  9. कोड उदाहरण:

  10. ] const generatetoken = async (गुप्त) => { const url = 'https://directline.botframework.com/v3/directline/tokens/generate'; कोशिश { const प्रतिक्रिया = axios.post (url, {}, { हेडर: { प्राधिकरण: `बियरर $ {गुप्त}`, }, }); रिटर्न रिस्पांस.डैटा.टोकन; } पकड़ (त्रुटि) { Console.Error ('त्रुटि उत्पन्न करने वाले टोकन:', त्रुटि); त्रुटि फेंक; } };
  11. 3। टोकन को ताज़ा करना
  12. टोकन का एक सीमित जीवनकाल है। समाप्त होने से पहले उन्हें ताज़ा करें।

  13. कोड उदाहरण:

] const url = 'https://directline.botframework.com/v3/directline/tokens/refresh'; कोशिश { const प्रतिक्रिया = axios.post (url, {}, { हेडर: { प्राधिकरण: `बियरर $ {टोकन}`, }, }); रिटर्न रिस्पांस.डैटा.टोकन; } पकड़ (त्रुटि) { Console.Error ('त्रुटि ताज़ा टोकन:', त्रुटि); त्रुटि फेंक; } };

4। बातचीत शुरू करना

टोकन का उपयोग करके बॉट के साथ एक वार्तालाप शुरू करें।

कोड उदाहरण:

] const url = 'https://directline.botframework.com/v3/directline/conversations'; कोशिश { const प्रतिक्रिया = axios.post (url, {}, { हेडर: { प्राधिकरण: `बियरर $ {टोकन}`, }, }); वापसी प्रतिक्रिया। } पकड़ (त्रुटि) { Console.Error ('त्रुटि शुरू वार्तालाप:', त्रुटि); त्रुटि फेंक; } };

import axios from 'axios';

const generateToken = async (secret) => {
    const url = 'https://directline.botframework.com/v3/directline/tokens/generate';
    try {
        const response = await axios.post(url, {}, {
            headers: {
                Authorization: `Bearer ${secret}`,
            },
        });
        return response.data.token;
    } catch (error) {
        console.error('Error generating token:', error);
        throw error;
    }
};

यदि कनेक्शन खो गया है,

कोड उदाहरण:

] const url = `https://directline.botframework.com/v3/directline/conversations/ $ {वार्तालाप}; वॉटरमार्क = 0`; कोशिश { const Response = ataite axios.get (url, { हेडर: { प्राधिकरण: `बियरर $ {टोकन}`, }, }); वापसी प्रतिक्रिया। } पकड़ (त्रुटि) { Console.Error ('त्रुटि को फिर से जोड़ने वाली बातचीत:', त्रुटि); त्रुटि फेंक; } };
6। बॉट को गतिविधि भेजना

const refreshToken = async (token) => {
    const url = 'https://directline.botframework.com/v3/directline/tokens/refresh';
    try {
        const response = await axios.post(url, {}, {
            headers: {
                Authorization: `Bearer ${token}`,
            },
        });
        return response.data.token;
    } catch (error) {
        console.error('Error refreshing token:', error);
        throw error;
    }
};

कोड उदाहरण:

] const url = `https://directline.botframework.com/v3/directline/conversations/ $ {CONTINTID}/गतिविधियों`; कोशिश { const प्रतिक्रिया = axios.post (url, गतिविधि, { हेडर: { प्राधिकरण: `बियरर $ {टोकन}`, }, }); वापसी प्रतिक्रिया। } पकड़ (त्रुटि) { Console.Error ('त्रुटि भेजने की गतिविधि:', त्रुटि); त्रुटि फेंक; } };

7। बॉट से गतिविधि प्राप्त करना

वास्तविक समय में बॉट प्रतिक्रियाओं के लिए सुनने के लिए WebSocket का उपयोग करें।
const startConversation = async (token) => {
    const url = 'https://directline.botframework.com/v3/directline/conversations';
    try {
        const response = await axios.post(url, {}, {
            headers: {
                Authorization: `Bearer ${token}`,
            },
        });
        return response.data;
    } catch (error) {
        console.error('Error starting conversation:', error);
        throw error;
    }
};
कोड उदाहरण:

] const सॉकेट = नया Websocket (स्ट्रीमुरल); socket.onopen = () => { कंसोल.लॉग ('वेबसॉकेट कनेक्शन स्थापित।'); }; socket.onmessage = (घटना) => { const data = json.parse (event.data); कंसोल.लॉग ('संदेश प्राप्त:', डेटा); onmessage (data.activities); }; socket.onerror = (त्रुटि) => { Console.Error ('Websocket Error:', Error); }; socket.onclose = (घटना) => { Console.warn ('websocket कनेक्शन बंद:', घटना); }; वापसी सॉकेट; };

8। बातचीत को समाप्त करना स्पष्ट रूप से संचार को बंद करके एक वार्तालाप समाप्त करें। ]

9। कनेक्शन स्थिति निगरानी और पुन: संयोजन
const reconnectConversation = async (conversationId, token) => {
    const url = `https://directline.botframework.com/v3/directline/conversations/${conversationId}?watermark=0`;
    try {
        const response = await axios.get(url, {
            headers: {
                Authorization: `Bearer ${token}`,
            },
        });
        return response.data;
    } catch (error) {
        console.error('Error reconnecting conversation:', error);
        throw error;
    }
};

कोड उदाहरण:

] socket.onclose = () => { Console.warn ('Websocket कनेक्शन बंद। पोलिंग में वापस गिर रहा है।'); फॉलबैकटोपोलिंग (); }; }; const pollforactivities = async (वार्तालाप, टोकन) => { const url = `https://directline.botframework.com/v3/directline/conversations/ $ {CONTINTID}/गतिविधियों`; कोशिश { const Response = ataite axios.get (url, { हेडर: { प्राधिकरण: `बियरर $ {टोकन}`, }, }); रिटर्न रिस्पांस। डाटा। एक्टिविटीज; } पकड़ (त्रुटि) { Console.Error ('गतिविधियों के लिए त्रुटि मतदान:', त्रुटि); त्रुटि फेंक; } };

10। संदर्भ
]

Websocket API
const sendActivity = async (conversationId, token, activity) => {
    const url = `https://directline.botframework.com/v3/directline/conversations/${conversationId}/activities`;
    try {
        const response = await axios.post(url, activity, {
            headers: {
                Authorization: `Bearer ${token}`,
            },
        });
        return response.data;
    } catch (error) {
        console.error('Error sending activity:', error);
        throw error;
    }
};
Axios प्रलेखन

प्रतिक्रिया देशी दस्तावेज

निष्कर्ष

] प्रमाणित करने, वार्तालापों का प्रबंधन करने और एक कोपिलॉट एजेंट बॉट के साथ मज़बूती से संचार को संभालने के लिए उल्लिखित चरणों का पालन करें।

विज्ञप्ति वक्तव्य इस लेख को पुन: प्रस्तुत किया गया है: https://dev.to/vivekyadav200988/technical-documentation-using-direct-line-api-ni-ni-n-a-heact-native-pplication-with-axios- k1o?1 यदि कोई उल्लंघन है, तो कृपया इसे हटा दें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3