आप अपने एजेंट को एक कस्टम ऐप से कनेक्ट कर सकते हैं ताकि ऐप के उपयोगकर्ता सीधे आपके ऐप के भीतर से एजेंट के साथ बातचीत कर सकें।
अधिकांश मामलों में, आपका कस्टम ऐप एक मोबाइल-डिवाइस ऐप होता है जो या तो वेब-आधारित ऐप होता है या आपके व्यवसाय के लिए आवश्यक अन्य सेवाओं के लिए एक मूल ऐप या एडेप्टर होता है।
आपके मोबाइल अनुप्रयोग से जुड़ने के लिए अलग-अलग प्रक्रियाएँ हैं, जो इस बात पर निर्भर करती है कि आपका अनुप्रयोग वेब-आधारित अनुप्रयोग है या नेटिव अनुप्रयोग.
अपने एजेंट को वेब-आधारित ऐप से कनेक्ट करना अपेक्षाकृत सरल है क्योंकि इसमें आपके ऐप में कोड स्निपेट को कॉपी करना शामिल है। हालाँकि, वेब-आधारित ऐप्स और मूल या कस्टम ऐप्स दोनों को आपके ऐप में एजेंट को पूरी तरह से एकीकृत करने के लिए अभी भी काफी डेवलपर विशेषज्ञता की आवश्यकता होती है। इस लेख में दोनों प्रक्रियाओं का वर्णन किया गया है.
एक एजेंट बनाया गया है जिसे आप अपने ऐप से कनेक्ट करना चाहते हैं। Copilot Studio
अपने एजेंट को वेब-आधारित ऐप से कनेक्ट करें
Copilot Studioमें, नेविगेशन मेनू में, चैनल चुनें।
कॉन्फ़िगरेशन विंडो खोलने के लिए मोबाइल ऐप टाइल का चयन करें.
वेब-आधारित ऐप्स अनुभाग के अंतर्गत कोड को कॉपी करें और इसे अपने ऐप डेवलपर्स को अपने वेब-आधारित ऐप में जोड़ने के लिए प्रदान करें।
अपने एजेंट को किसी मूल या कस्टम ऐप से कनेक्ट करें
युक्ति
जबकि यह अनुभाग बताता है कि मोबाइल अनुप्रयोग से कैसे कनेक्ट किया जाए, उसी प्रक्रिया को कस्टम या देशी अनुप्रयोग के लिए लागू किया जा सकता है, जैसे कि IoT (इंटरनेट ऑफ़ थिंग्स) अनुप्रयोग.
यदि आपका लक्ष्य Azure बॉट सेवा चैनलों से कनेक्ट करना है, तो यहां दिए गए निर्देशों का पालन करने के अलावा, आपके डेवलपर्स अधिक जानकारी के लिए Azure बॉट सेवा चैनलों पर एजेंट प्रकाशित करें पर जा सकते हैं।
महत्वपूर्ण
इस खंड में दिये गए निर्देशों को आपके या आपके डेवलपर्स से सॉफ़्टवेयर विकसन की आवश्यकता होती है. यह अनुभवी IT पेशेवरों के लिए है, जैसे कि IT व्यवस्थापक या डेवलपर जिनके पास डेवलपर टूल, उपयोगिता और IDEs की ठोस समझ है.
कोड के नमूने
इस दस्तावेज़ में उपयोग किए गए कोड स्निपेट निम्न हैं:
अपने Copilot Studio एजेंट पैरामीटर पुनः प्राप्त करें
आपके द्वारा निर्मित एजेंट से कनेक्ट करने के लिए, आपको इसे पहचानने के लिए अपने एजेंट का नाम और टोकन एंडपॉइंट प्राप्त करना होगा।
Copilot Studioमें, अपने एजेंट के अवलोकन पृष्ठ पर जाएँ, और अपने एजेंट का नाम कॉपी करें।
चैनल>मोबाइल ऐप चुनें.
मोबाइल ऐप पृष्ठ पर, टोकन एंडपॉइंट के आगे, कॉपी करें चुनें. आपको Get Direct Line token चरण के लिए इस एंडपॉइंट की आवश्यकता है।
Direct Line टोकन प्राप्त करें
अपने एजेंट के साथ बातचीत शुरू करने के लिए, आपको एक Direct Line टोकन की आवश्यकता है। यह टोकन Copilot Studio स्क्रीन में दर्शाए गए एंडपॉइंट पर GET अनुरोध करके प्राप्त किया जा सकता है। इस टोकन का उपयोग डायरेक्टलाइन API के आगामी कॉल के लिए हेडर के रूप में किया जाना चाहिए।
उदाहरण:
rest-api
GET <BOT TOKEN ENDPOINT>
यदि अनुरोध सफल होता है, तो अनुरोधित एजेंट के लिए एक टोकन, समाप्ति समय और एक वार्तालाप आईडी लौटा दी जाएगी। Direct Line
उदाहरण:
निम्न उदाहरण वार्तालाप आरंभ करने और एजेंट से संदेश भेजने और प्राप्त करने के लिए कनेक्टर नमूना कोड से नमूनों का उपयोग करता है। Copilot Studio
Direct Line टोकन के साथ DirectLineClient इंस्टैंस आरंभ करें और वार्तालाप प्रारंभ करें:
C#
// Use the retrieved token to create a DirectLineClient instanceusing (var directLineClient = new DirectLineClient(token))
{
var conversation = await directLineClient.Conversations.StartConversationAsync();
string conversationtId = conversation.ConversationId;
}
एक बार शुरू होने के बाद, प्रत्येक वार्तालाप को token और conversationtId के संयोजन का उपयोग करके पहचाना और जोड़ा जा सकता है। मौजूदा वार्तालाप के लिए उपयोगकर्ता संदेश भेजें:
C#
// Use the retrieved token to create a DirectLineClient instance// Use the conversationId from above step// endConversationMessage is your predefined message indicating that user wants to quit the chatwhile (!string.Equals(inputMessage = /*Get_User_Input()*/, endConversationMessage, StringComparison.OrdinalIgnoreCase))
{
using (var directLineClient = new DirectLineClient(token))
{
// Send user message using directlineClient// Payload is a Microsoft.Bot.Connector.DirectLine.Activityawait directLineClient.Conversations.PostActivityAsync(conversationtId, new Activity()
{
Type = ActivityTypes.Message,
From = new ChannelAccount { Id = "userId", Name = "userName" },
Text = inputMessage,
TextFormat = "plain",
Locale = "en-Us",
});
}
}
समान token और conversationId का उपयोग करके एजेंट's प्रत्युत्तर को पुनः प्राप्त करें। प्राप्त Direct Line प्रत्युत्तर गतिविधियों में उपयोगकर्ता और एजेंट दोनों के संदेश शामिल हैं। आप केवल एजेंट's प्रत्युत्तर संदेश प्राप्त करने के लिए अपने एजेंट के नाम से प्रत्युत्तर गतिविधियों को फ़िल्टर कर सकते हैं।
C#
// Use the same token to create a directLineClientusing (var directLineClient = new DirectLineClient(token))
{
// To get the first response set string watermark = null// More information about watermark is available at// https://learn.microsoft.com/azure/bot-service/rest-api/bot-framework-rest-direct-line-1-1-receive-messages?view=azure-bot-service-4.0// response from bot is of type Microsoft.Bot.Connector.DirectLine.ActivitySet
ActivitySet response = await directLineClient.Conversations.GetActivitiesAsync(conversationtId, watermark);
// update watermark from response
watermark = response?.Watermark;
// response contains set of Activity from both user and bot// To display bot response only, filter Activity.From.Name equals to your bot name
List<Activity> botResponses = response?.Activities?.Where(x =>
x.Type == ActivityTypes.Message &&
string.Equals(x.From.Name, /*Bot_Name*/, StringComparison.Ordinal)).ToList();
// Display botResponses
}
Direct Line टोकन रीफ़्रेश करें
यदि आपके एप्लिकेशन में एजेंट के साथ लंबी बातचीत है, तो आपको टोकन को रीफ्रेश करने के लिए कोड जोड़ने की आवश्यकता हो सकती है। Direct Line टोकन की समयसीमा समाप्त हो जाती है, लेकिन इसे समाप्त होने से पहले ताज़ा किया जा सकता है; अधिक जानकारी के लिए Direct Line प्रमाणीकरण पर जाएँ।
निम्न उदाहरण मौजूदा वार्तालाप के लिए टोकन को ताज़ा करने के लिए कनेक्टर नमूना कोड से नमूने का उपयोग करता है: Copilot Studio
C#
// DirectLine provides a token refresh method// Requires the currentToken valid when refreshingstring refreshToken = new DirectLineClient(currentToken).Tokens.RefreshToken().Token;
// create a new directline client with refreshToken
directLineClient = new DirectLineClient(refreshToken);
// use new directLineClient to communicate to your bot
एजेंट से वार्तालाप पेलोड पार्स करें
जब आप एजेंट के साथ वार्तालाप प्रारंभ करते हैं, तो वार्तालाप JSON पेलोड मानक Microsoft Bot Framework Direct Line गतिविधि का उपयोग करता है। आप Bot Framework Direct Line API पर अधिक जानकारी प्राप्त कर सकते हैं।
हैंडऑफ़ गतिविधि संभालें
यदि आपके एप्लिकेशन को लाइव एजेंट प्रदाता को सौंपने की आवश्यकता है, तो आपको हैंडऑफ़ गतिविधि को संभालना होगा। हैंडऑफ़ गतिविधि तब भेजी जाती है जब "एजेंट को ट्रांसफ़र करें" नोड हिट होता है। आप हैंडऑफ़ गतिविधि के पेलोड पर अधिक जान सकते हैं।
ट्रिगर एक स्वागत योग्य संदेश है
यदि आप चाहते हैं कि जब कोई उपयोगकर्ता बातचीत शुरू करे तो आपका एजेंट स्वचालित रूप से ग्रीटिंग सिस्टम विषय भेजे, तो आप Type=event और Name=startConversation के साथ एक गतिविधि भेज सकते हैं।
आप अपने एजेंट को आज़माने के लिए पहले से निर्मित डेमो वेबसाइट का उपयोग कर सकते हैं, या आप इसे iframe कोड स्निपेट का उपयोग करके सीधे अपने वेबपेज पर प्रकाशित कर सकते हैं।
आप अपने एजेंट को आज़माने के लिए पहले से निर्मित डेमो वेबसाइट का उपयोग कर सकते हैं, या आप इसे iframe कोड स्निपेट का उपयोग करके सीधे अपने वेबपेज पर प्रकाशित कर सकते हैं।