Open in
ThunderPhone को n8n के साथ उपयोग करें
n8n के लिए ThunderPhone नोड इंस्टॉल करें, सर्वर API key कनेक्ट करें, और ऐसा वर्कफ़्लो बनाएं जो हर कॉल समाप्त होने पर चले।
n8n एक वर्कफ़्लो ऑटोमेशन टूल है। n8n के लिए ThunderPhone पैकेज दो नोड जोड़ता है:
- ThunderPhone Trigger कॉल समाप्त होने पर (Call Completed) या कॉल ग्रेडिंग रन पूरा होने पर (Call Graded) वर्कफ़्लो शुरू करता है।
- ThunderPhone आउटबाउंड कॉल करता है, कैंपेन में कॉन्टैक्ट जोड़ता है और उन्हें शुरू करता है, ट्रांसक्रिप्ट और रिकॉर्डिंग के साथ कॉल प्राप्त करता है, और आपके एजेंट और फ़ोन नंबर सूचीबद्ध करता है।
यह एक सत्यापित कम्युनिटी नोड है, जो n8n पर ThunderPhone में सूचीबद्ध है।
नोड इंस्टॉल करें
n8n एडिटर में, नोड्स पैनल खोलने के लिए + पर क्लिक करें और ThunderPhone खोजें। अन्य उपयोगकर्ता इसे जोड़ सकें, इसके लिए इंस्टेंस ओनर को पहले सत्यापित नोड्स सेट अप करने पड़ सकते हैं।
सेल्फ-होस्टेड n8n पर, आप पैकेज नाम से भी इंस्टॉल कर सकते हैं:
Settings > Community Nodes खोलें और n8n-nodes-thunderphone इंस्टॉल करें। इंस्टॉल करने से
पहले कम्युनिटी-नोड जोखिमों और अपनी इंस्टेंस पॉलिसी की जाँच करें।
सर्वर API key बनाएँ
- Keys टैब खोलें
ThunderPhone में, Organization → Keys पर जाएँ और Create key पर क्लिक करें।
- इसका नाम रखें
ऐसा नाम इस्तेमाल करें जो बताए कि key कहाँ उपयोग होती है, जैसे "n8n"।
- इसे अभी कॉपी करें
पूरा
sk_live_...सीक्रेट केवल एक बार दिखाया जाता है। डायलॉग बंद करने से पहले इसे कॉपी करें।
केवल एडमिन या ओनर ही key बना सकता है, और ThunderPhone इसके साथ किए गए अनुरोधों को उस व्यक्ति की ओर से किया गया मानता है। ट्रिगर और कैंपेन ऑपरेशंस के लिए उस व्यक्ति का एडमिन या ओनर रोल बनाए रखना आवश्यक है। सर्वर API key बनाएँ में रोटेशन और रिवोकेशन की जानकारी है।
n8n में क्रेडेंशियल जोड़ें
- n8n में, ThunderPhone API प्रकार का क्रेडेंशियल बनाएँ।
- key को API Key में पेस्ट करें।
- इसे सेव करें और क्रेडेंशियल टेस्ट चलाएँ। टेस्ट आपके संगठन से एक कॉल पढ़ता है
GET /v1/calls?limit=1के साथ।
पहला वर्कफ़्लो बनाएं
यह वर्कफ़्लो हर बार कॉल समाप्त होने पर Google Sheets में एक पंक्ति जोड़ता है।
- ट्रिगर जोड़ें
ThunderPhone ट्रिगर जोड़ें, अपना ThunderPhone API क्रेडेंशियल चुनें, और इवेंट को कॉल पूर्ण हुई पर सेट करें।
- कॉल प्राप्त करें
एक ThunderPhone नोड जोड़ें। रिसोर्स को कॉल, ऑपरेशन को प्राप्त करें, और कॉल ID को एक्सप्रेशन
{{ $json.data.call_id }}पर सेट करें। आउटपुट में कॉल रिकॉर्ड के साथtranscriptsऔरrecording_urlशामिल होते हैं। यह एक अल्पकालिक लिंक है, जो कॉल की कोई रिकॉर्डिंग न होने परnullहोता है। - एक पंक्ति जोड़ें
एक Google Sheets नोड जोड़ें जो एक पंक्ति जोड़ता है, और जिन कॉलम की आपको आवश्यकता है उन्हें Get Call आउटपुट से मैप करें (नीचे दी गई तालिका देखें)।
- वर्कफ़्लो सक्रिय करें
सेव करें और सक्रिय करें। ट्रिगर आपके ThunderPhone संगठन में अपने प्रोडक्शन URL को वेबहुक एंडपॉइंट के रूप में रजिस्टर करता है। वर्कफ़्लो को निष्क्रिय करने पर वह एंडपॉइंट हट जाता है।
- इसका परीक्षण करें
बिल्डर में एक एजेंट खोलें, बात करें पर क्लिक करें, और कॉल समाप्त करें। बिल्डर टेस्ट कॉल
web.completeके रूप में डिलीवर होते हैं, जो कॉल पूर्ण हुई के पीछे मौजूद दो इवेंट में से एक है, इसलिए वर्कफ़्लो चलता है और एक पंक्ति दिखाई देती है।
उपयोगी कॉलम:
| कॉलम | एक्सप्रेशन |
|---|---|
| कॉल ID | {{ $json.call_id }} |
| दिशा | {{ $json.direction }} |
| से | {{ $json.from_number }} |
| तक | {{ $json.to_number }} |
| शुरू होने का समय | {{ $json.start_time }} |
| अवधि (सेकंड) | {{ $json.duration_seconds }} |
| स्टेटस | {{ $json.status }} |
| समाप्ति कारण | {{ $json.end_reason }} |
| कॉल लिंक | https://app.thunderphone.com/dashboard/call-history/{{ $json.call_id }} |
कॉल लिंक आपके संगठन के सदस्यों के लिए ThunderPhone डैशबोर्ड में कॉल को उसके ट्रांसक्रिप्ट और रिकॉर्डिंग के साथ खोलता है, इसलिए शीट में इनमें से किसी को रखने की आवश्यकता नहीं होती।
फिर भी ट्रांसक्रिप्ट जोड़ने के लिए,
{{ $json.transcripts.filter(t => typeof t.content === 'string').map(t => t.role + ': ' + t.content).join('\n') }} मैप करें।
रिकॉर्डिंग URL समाप्त हो जाता है, इसलिए कॉल ID स्टोर करें और नया लिंक चाहिए होने पर
Get Call फिर से चलाएं। कॉल ट्रांसक्रिप्ट, सारांश और रिकॉर्डिंग में व्यक्तिगत या
स्वास्थ्य संबंधी जानकारी हो सकती है। इन्हें केवल उन ऐप्स को भेजें जिन्हें आपका संगठन
उस डेटा के लिए उपयोग करने की अनुमति रखता है, स्वास्थ्य जानकारी शामिल होने पर BAA के
तहत, और केवल उन्हीं फ़ील्ड को रखें जिनकी आपको आवश्यकता है।
ट्रिगर पूरा इवेंट आउटपुट करता है: type, event_id और data। सभी फ़ील्ड के लिए
telephony.complete / web.complete और
call.graded देखें। डिलीवरी कम-से-कम एक बार होती है,
और एक इवेंट के रीट्राई में event_id समान रहता है, इसलिए ऐसे चरण से पहले इसकी जांच करें
जिसे दोहराया नहीं जाना चाहिए।
आउटबाउंड कॉल सुरक्षित रूप से करें
आउटबाउंड कॉल करें (रिसोर्स आउटबाउंड कॉल, ऑपरेशन करें) के लिए आवश्यक हैं:
| फ़ील्ड | अर्थ |
|---|---|
| एजेंट नाम या ID | एक सेव किया हुआ एजेंट। ड्रॉपडाउन आपके एजेंट दिखाता है। |
| फ़ोन नंबर नाम या ID | जिससे कॉल की जाती है वह नंबर। ड्रॉपडाउन केवल आउटबाउंड कॉल के लिए सक्षम नंबर दिखाता है। |
| नंबर पर | E.164 फ़ॉर्मेट में डेस्टिनेशन, जैसे +14155552671। |
| वेरिएबल्स | एजेंट प्रॉम्प्ट में प्लेसहोल्डर्स के लिए वैल्यू का JSON ऑब्जेक्ट। |
| आइडेम्पोटेंसी की | अपस्ट्रीम रिकॉर्ड या इवेंट से एक स्थिर ID। आवश्यक। |
आइडेम्पोटेंसी की को उस ID से मैप करें जिससे रन शुरू हुआ है, जैसे
CRM रिकॉर्ड ID या ट्रिगर का event_id। नोड
n8n:<node ID>:<your value> भेजता है, इसलिए:
- ऑटोमैटिक रीट्राई या एग्जीक्यूशन रीट्राई करें वही की भेजता है, और
ThunderPhone दोबारा डायल करने के बजाय
idempotent_replay: trueके साथ मूल कॉल लौटाता है। - एक ही रिकॉर्ड से फीड किए गए दो ThunderPhone नोड अलग-अलग की भेजते हैं।
- कोई अनुरोध भेजने से पहले खाली वैल्यू विफल हो जाती है।
टाइमस्टैम्प, रैंडम वैल्यू और n8n एग्जीक्यूशन या वर्कफ़्लो ID से बचें। रीट्राई पर नई वैल्यू दूसरी वास्तविक कॉल करती है। पूरी की अधिकतम 128 कैरेक्टर की हो सकती है। किसी अलग एजेंट, नंबर या वेरिएबल्स के साथ की का पुन: उपयोग कॉन्फ्लिक्ट के साथ विफल होता है।
कैंपेन। कॉन्टैक्ट जोड़ें (रिसोर्स कैंपेन) ड्राफ़्ट कैंपेन में
कॉन्टैक्ट जोड़ता है। इसके लिए एक कैंपेन ID और कॉन्टैक्ट की JSON ऐरे चाहिए। हर
कॉन्टैक्ट में phone_number होना चाहिए; अन्य की कॉल वेरिएबल्स बनती हैं। जब हर
कॉन्टैक्ट अस्वीकार हो जाता है, तो नोड विफल होता है और केवल कुछ के होने पर
partial_success: true सेट करता है। शुरू करें के लिए उस चेकबॉक्स की पुष्टि
ज़रूरी है कि कैंपेन वास्तविक कॉल करता है और ThunderPhone क्रेडिट खर्च करता है।
आउटबाउंड कैंपेन देखें।
वर्कफ़्लो द्वारा कॉल शुरू करने से पहले:
- अगर ThunderPhone आपके संगठन से यह पुष्टि करने के लिए कहता है कि उसकी आउटबाउंड कॉल TCPA और अन्य कॉलिंग कानूनों का पालन करती हैं, तो एडमिन को पहले डैशबोर्ड में वह पुष्टि दर्ज करनी होगी।
- जिससे कॉल की जाती है वह नंबर आउटबाउंड कॉल के लिए सक्षम होना चाहिए। अपने कैरियर से लाए गए नंबर सत्यापित होने के बाद योग्य होते हैं। ThunderPhone नंबर इनबाउंड-ओनली से शुरू होते हैं और इन्हें आउटबाउंड उपयोग के लिए अनुमोदित किया जा सकता है: एडमिन फ़ोन नंबर पेज से इसका अनुरोध करता है। फ़ोन नंबर प्राप्त करें देखें।
- आपके संगठन की ज़िम्मेदारी है कि उसके पास हर नंबर पर कॉल करने की सहमति हो और लागू कॉलिंग कानूनों का पालन किया जाए। आउटबाउंड कॉलिंग कानून देखें।
उदाहरण वर्कफ़्लो
- CRM कॉन्टैक्ट को कैंपेन में जोड़ें। CRM कॉन्टैक्ट को ड्राफ़्ट ThunderPhone कैंपेन में जोड़ें, फिर किसी के सूची को मंज़ूरी देने पर कैंपेन शुरू करें।
- पूर्ण कॉल को ग्राहक रिकॉर्ड में जोड़ें। कॉल पूर्ण होने पर, कॉल प्राप्त करें चलाएँ और ट्रांसक्रिप्ट तथा रिकॉर्डिंग लिंक को मिलते-जुलते ग्राहक रिकॉर्ड में सेव करें।
- कम ग्रेड को रिव्यू में भेजें। कॉल ग्रेड होने पर,
{{ $json.data.grade.score }}पर फ़िल्टर करें और कम स्कोर वाली कॉल को कॉल ID और ग्रेड विवरण के साथ रिव्यू क्यू में रूट करें। एक कॉल को एक से अधिक बार ग्रेड किया जा सकता है, और हर पूर्ण ग्रेडिंग रन ट्रिगर चलाता है, इसलिए हर कॉल ID के लिए केवल नवीनतमgraded_atरखें।
कॉल ट्रांसक्रिप्ट, सारांश और रिकॉर्डिंग में व्यक्तिगत या स्वास्थ्य जानकारी हो सकती है। इन्हें केवल उन ऐप्स पर भेजें जिनका उपयोग आपका संगठन उस डेटा के लिए कर सकता है, जहाँ स्वास्थ्य जानकारी शामिल हो वहाँ BAA के अंतर्गत भेजें, और केवल वे फ़ील्ड रखें जिनकी आपको आवश्यकता है।