POST/api/global-chatbot/demo/voice-speak
पाठ को बोली में परिवर्तित करता है (टेक्स्ट-टू-स्पीच) डेमो पृष्ठ पर वॉयस आउटपुट के लिए, यदि सक्षम है।
`POST /api/global-chatbot/demo/voice-speak` टेक्स्ट को बोले गए ऑडियो में बदलता है, बशर्ते डेमो के लिए वॉइस फ़ंक्शन सक्रिय हो। यह एंडपॉइंट सार्वजनिक डेमो पेज द्वारा उपयोग किया जाता है और इसे सामान्य रूप से स्वतंत्र रूप से उपयोग की जा सकने वाली Text-to-Speech API के रूप में नहीं बनाया गया है। Dashboard ऑथेंटिकेशन आवश्यक नहीं है, लेकिन `https://zentor-app.de` और `https://www.zentor-app.de` के लिए निश्चित Origin जाँच लागू होती है। Request में बोले जाने वाला टेक्स्ट और दस्तावेज़ित schema में निर्धारित भाषा विकल्प होते हैं। Client को केवल वही टेक्स्ट भेजना चाहिए जिसे वास्तव में डेमो संवाद में बोलना है। खाली इनपुट, अमान्य फ़ॉर्मैट या निष्क्रिय वॉइस फ़ंक्शन को त्रुटि के रूप में संभालना चाहिए। Origin को स्थानीय रूप से बदलना या किसी दूसरी domain से कॉल करना server-side जाँच को बायपास नहीं करता। यह operation ऑडियो बनाता है, इसलिए इसे केवल पढ़ने वाली idempotent operation नहीं माना जाना चाहिए। एक ही टेक्स्ट को कई बार भेजने से कई processing operations शुरू हो सकते हैं। डेमो UI को processing के दौरान output बटन निष्क्रिय रखना चाहिए और नया playback शुरू करने से पहले चल रही playback को साफ़ तरीके से समाप्त करना चाहिए। एक वास्तविक workflow डेमो में bot के उत्तर से शुरू होता है। उपयोगकर्ता voice output सक्रिय करता है, पेज उत्तर का टेक्स्ट `voice-speak` को भेजता है, ऑडियो डेटा अथवा दस्तावेज़ित ऑडियो response प्राप्त करता है और उसे browser में चलाता है। यदि request किसी अनुमत न किए गए Origin के कारण विफल हो, तो UI को कोई मनमाना वैकल्पिक service नहीं बुलाना चाहिए, बल्कि voice function को unavailable दिखाना चाहिए। Passwords, tokens या गोपनीय सामग्री Request में नहीं भेजी जानी चाहिए। Demo channel सार्वजनिक है और गोपनीय company data के लिए नहीं बनाया गया है। Audio responses को भी सार्वजनिक logs में स्थायी रूप से संग्रहित नहीं करना चाहिए। यह endpoint तकनीकी रूप से SIP voicebot से अलग है। Telephony प्रत्येक tenant के लिए अलग SIP instances में चलती है और केवल Master Admin द्वारा सक्रिय की जाती है; `voice-speak` किसी phone number को नियंत्रित नहीं करता और कोई phone call शुरू नहीं करता। Accessibility के लिए demo को audio output के साथ हमेशा पूरा टेक्स्ट भी दिखाना चाहिए। Voice output में ऐसी कोई जानकारी नहीं होनी चाहिए जो दृश्य रूप में उपलब्ध न हो। User interaction के बिना browser playback रोक सकते हैं; इसलिए शुरुआत जानबूझकर click से होनी चाहिए। Cancel और replay को नियंत्रित तरीके से संभव होना चाहिए.
Auth & Absicherung
Keine Authentifizierung erforderlich
मूल परीक्षण https://zentor-app.de / https://www.zentor-app.de पर फिक्स्ड (संरचित नहीं, डेमो पथ पर विजेट टोकन के लिए प्रतिस्थापन) ।
Idempotent: Ja
Parameter
visitor_id(body, string, erforderlich)— एक मान्य UUID होना चाहिएtext(body, string, erforderlich)— अनुवाद करने के लिए पाठBeispiel-Response
{"ok":false,"error":{"code":"VOICE_UNAVAILABLE","message":"वॉइस फ़ंक्शन वर्तमान में उपलब्ध नहीं है।"}}Fehlercodes
400 INVALID_VISITOR_ID — visitor_id अनुपस्थित है या कोई वैध UUID नहीं है।403 ORIGIN_DENIED — Anfrage-Origin zentor-app.de नहीं है।503 VOICE_UNAVAILABLE — भाषा कार्यक्षमता वर्तमान में उपलब्ध नहीं है।Live-Test-Nachweis
नेगेटिव केस (400 INVALID_VISITOR_ID, 503 VOICE_UNAVAILABLE, प्रत्येक सही Origin-हेडर के साथ) लाइव सत्यापित किए गए। उसी पथ का GET-वर्जन भी मौजूद है (नेटिव <audio src> स्ट्रीमिंग, समान व्यवहार)। widget.voice_speak के लिए डेमो समकक्ष।