XOps द्वि-दिशात्मक समकालिकता का समर्थन करता है XOps कहानियों और एक बाहरी सेवा प्रबंधन प्लेटफ़ॉर्म के बीच। यह एकीकरण प्लेटफार्मों के बीच जांच गतिविधि को समन्वित रखने में मदद करता है, इसलिए एक प्लेटरफ़ॉर्म में किए गए अपडेट दूसरों में भी प्रदर्शित होते हैं।
अधिक जानकारी के लिए, देखें सेवा प्रबंधन प्लेटफार्मों के साथ द्वि-दिशात्मक एकीकरण बनाना.
सर्विकेनाउ एकीकरण को विन्यस्त करने के लिए, इन पांच चरणों को पूरा करें।
जब Cato प्रबंधन अनुप्रयोग (CMA) में टिकट किया जाता है, तो भरी जाने के लिए क्षेत्र बनाएं।
कस्टम फील्ड्स बनाने के लिए:
- सर्विसनाउ प्लेटफ़ॉर्म में लॉग इन करें।
- कोई भी घटना खोलें।
- शीर्ष बैनर से, राइट-क्लिक करें और विन्यस्त करें > फॉर्म बिल्डर पर जाएं।
- यदि आवश्यक हो, फॉर्म बिल्डर को आजमाने के लिए सहमति दें और डिफ़ॉल्ट दृश्य का चयन करें।
- घटना तालिका में नया फील्ड जोड़ें पर क्लिक करें।
-
इन फील्ड्स को जोड़ें:
-
CMA खाता आईडी
- प्रकार: पूर्णांक
- प्रॉपर्टीज: केवल पढ़ने योग्य, अनिवार्य, सक्रिय
-
CMA कहानी आईडी
- प्रकार: स्ट्रिंग
- प्रॉपर्टीज: केवल पढ़ने योग्य, अनिवार्य, सक्रिय
-
सेवा API कुंजियाँ बाहरी उपकरणों और सेवाओं के साथ स्थिर एकीकरण सक्षम करती हैं और इस प्रारूप में बनाई जाती हैं: R=<...>|K=<...>। सेवा API कुंजी बनाने के तरीके के बारे में अधिक विवरण और जानकारी के लिए, देखें Cato API के लिए API कुंजियाँ उत्पन्न करना.
एक बार जब आप सेवा API कुंजी बना लेते हैं, तो उसे कॉपी और सहेजें ताकि उसे सर्विसनाउ प्लेटफ़ॉर्म में दर्ज किया जा सके।
सर्विसनाउ प्लेटफ़ॉर्म में, API कुंजी को संग्रहीत करने के लिए एक सुरक्षित प्रणाली प्रॉपर्टी बनाएं।
एक सुरक्षित प्रणाली प्रॉपर्टी बनाने के लिए:
- https://<आपका इंस्टांस>.service-now.com/sys_properties_list.do पर जाएं
- नया पर क्लिक करें।
-
प्रणाली गुणों के नए रिकॉर्ड फॉर्म में, इन विवरणों को जोड़ें:
- नाम: cma_prod_api_key
- प्रकार: पासवर्ड2
- मान: सेवा API कुंजी जिसे आपने चरण 2 में बनाया
- जमा करें पर क्लिक करें।
सर्विसनाउ घटनाओं से Cato तक विवरण भेजने के लिए एक REST संदेश बनाएं:
REST संदेश बनाने के लिए:
- अपने सर्विसनाउ प्लेटफ़ॉर्म में जाकर सभी > सिस्टम वेब सेवाएं > आउटबाउंड > REST संदेश चुनें।
- नया पर क्लिक करें।
-
REST संदेश फॉर्म में, इन विवरणों को जोड़ें:
- नाम: REST संदेश के लिए एक नाम जोड़ें
- एंडपॉइंट: https://<आपका Cato खाता नाम>.cc.catonetworks.com/api/v1/graphql2
- प्रमाणीकरण प्रकार: कोई प्रमाणीकरण नहीं
-
HTTP विधियाँ: नया पर क्लिक करें और इन विवरणों को जोड़ें:
- नाम: एक नाम जोड़ें
- HTTP विधि: POST
- एंडपॉइंट: https://<आपका Cato खाता नाम>.cc.catonetworks.com/api/v1/graphql2
- जमा करें पर क्लिक करें।
REST संदेश को सक्रिय करने के लिए एक व्यवसायिक नियम बनाएं।
एक व्यवसायिक नियम बनाने के लिए:
- अपने सर्विसनाउ प्लेटफ़ॉर्म में जाकर सभी > सिस्टम परिभाषाएँ > व्यवसाय नियम चुनें।
- नया पर क्लिक करें।
-
व्यवसाय नियम के नए रिकॉर्ड फॉर्म में, इन विवरणों को जोड़ें:
- नाम: व्यवसाय नियम के लिए एक नाम जोड़ें
- तालिका: घटना
- कब: बाद में
- अपडेट: सही (चेकबॉक्स को चेक करें)
- फ़िल्टर की स्थिति: टिप्पणियाँ परिवर्तन
-
उन्नत टैब पर, इस स्क्रिप्ट को जोड़ें:
(function executeRule(current, previous) { try { var lastComment = current.comments.getJournalEntry(1) || ''; lastComment = stripJournalHeader(lastComment); if (!lastComment) { gs.info("GraphQL webhook: Empty comment, skipping " + current.number); return; } var accountId = current.u_cma_account_id; var storyId = current.u_cma_story_id; gs.info("GraphQL webhook: accountId " + accountId + " story " + storyId); if (!accountId || !storyId) { gs.error("GraphQL webhook: Missing accountId/storyId for " + current.number); return; } var gqlQuery = "mutation CreateStoryComment($accountId: ID!, $input: AddStoryCommentInput!) {" + " xdr(accountId: $accountId) {" + " addStoryComment(input: $input) {" + " comment { id type __typename }" + " __typename" + " }" + " __typename" + " }" + "}"; var body = { query: gqlQuery, variables: { accountId: accountId.toString(), input: { type: "USER", storyId: storyId.toString(), text: lastComment } } }; var apiKey = gs.getProperty('cma_prod_api_key'); var r = new sn_ws.RESTMessageV2('Update XDR story comments CMA Prod', 'post'); r.setRequestHeader('Content-Type', 'application/json'); r.setRequestHeader('Accept', 'application/json'); r.setRequestHeader('x-api-key', apiKey); r.setRequestBody(JSON.stringify(body)); //var response = r.execute(); // can be changed to Async - only for debug purposes var eccSysId = r.executeAsync(); gs.info("GraphQL webhook queued, ECC sys_id=" + eccSysId); var status = response.getStatusCode(); var responseBody = response.getBody(); // Safe logging (see next section for masking) gs.info("GraphQL webhook: status=" + status); gs.info("GraphQL webhook: responseBody=" + responseBody); } catch (ex) { gs.info("GraphQL webhook: Failed: " + ex.message); } function stripJournalHeader(text) { text = text || ''; if (text.indexOf('\n') > -1) { return text.split('\n').slice(1).join('\n').trim(); } return text.trim(); } })(current, previous); - जमा करें पर क्लिक करें।
आप किसी भी स्थान पर समस्याएं और त्रुटियां पहचान सकते हैं:
- सिस्टम लॉग्स: सिस्टम लॉग्स > सभी पर जाएं और संदेशों के लिए खोजें जिसमें
GraphQL वेबहुकशामिल हों। - ECC रिकॉर्ड: https://<instance>.service-now.com/sys_ecc_queue_list.do पर जाएं और लॉग किए गए
ECC sys_idके साथ ECC रिकॉर्ड ढूंढें।
0 टिप्पणियां
कृपया टिप्पणी करने के लिए साइन इन करें करें.