2012-02-08 16 views
7

मैं ऐसी सेवा बनाना चाहता हूं जो उपयोगकर्ता को अपने ब्राउज़र से लाइव कॉल सुनने की अनुमति दे।एस्टेरिक्स्क + नोड.जेएस + ब्राउज़र स्ट्रीमिंग

मैं तारांकन के साथ कुछ अनुभव है और यह पर्याप्त लचीला मैं क्या वर्णन किया है करने के लिए हो रहा है। क्योंकि यह अच्छी तरह से संगामिति को संभालने के लिए कथित है

Node.js अच्छा लगता है, और, मैं जावास्क्रिप्ट पसंद है।

ब्राउज़र मैं समझ है कि HTML5 ऑडियो टैग, क्योंकि यह एक स्ट्रीमिंग का स्रोत से खेल रहे हैं संभालती है, ध्वनि खेलने के लिए ठीक होगा में।

मेरा एक सहयोगी ने एक साथ इस अवधारणा Icecast का उपयोग करने का एक डेमो काम किया है, लेकिन यह खत्म करने के लिए सक्षम नहीं था। महत्वपूर्ण विलंबता जारी भी थे।

मेरा प्रश्न यह है:

के बारे में मैं इस पर शुरू हो रही कैसे जाना चाहिए?

किसी भी मदद की सराहना की जाती है!

अद्यतन:

मैं एक प्रस्तुति बैकएंड पर एक सिप प्रॉक्सी के माध्यम से WebSockets के शीर्ष पर एसआईपी को लागू करने पर चर्चा पाया:

http://sip-on-the-web.aliax.net/

एक बार मैं इस और चल रहा है, अगले है कदम स्ट्रीमिंग लागू किया जाएगा। ऐसा लगता है कि मुझे ऑडियो आउटपुट प्रॉक्सी करने में सक्षम होना चाहिए जो आम तौर पर एक द्वितीयक सर्वर के माध्यम से, जो क्लाइंट को स्ट्रीम करता है, के माध्यम से सिप क्लाइंट पर जाता है। मुझे आश्चर्य है कि यह सब स्मृति में क्यों नहीं किया जा सका? फिर फ़ाइल की आय के रूप में फ़ाइल लिखने और पढ़ने की आवश्यकता नहीं है।

उत्तर

8

आप तारांकन 11 के लिए इंतजार करने को तैयार हैं, हम वर्तमान में तारांकन में सीधे WebSockets के लिए समर्थन को लागू करने पर काम कर रहे हैं।यहाँ इस पर अधिक:

Asterisk 11 WebRTC/RTCWeb Support

मैं बस यहाँ केविन बोली होगा, क्योंकि वह इसे बेहतर तो मैं कर सकते हैं सार रखते हैं:

"आज, में प्रगति विकास शाखाओं WebSocket परिवहन के लिए समर्थन प्रोटोकॉल (ब्राउज़र और एस्टरिस्क के बीच सिग्नलिंग संदेशों को संचारित करने के लिए उपयोग किया जाता है), वेबसाकेट पर एसआईपी (वर्तमान में आईईटीएफ द्वारा मानकीकृत किया जा रहा है) और आईसीई/स्टन/टर्न (एनएटी ट्रैवर्सल और कनेक्शन सेटअप सुरक्षा के लिए मीडिया हैंडलिंग तंत्र)। इसके अलावा, एक नया है जिंगल/Google टॉक/Google वॉइस चैनल ड्राइवर, और हम जिंगल को वेबसॉकेट पर भी समर्थन देने की योजना बना रहे हैं। इस बिंदु पर, हमारे पास बिल्कुल पूरा समाधान नहीं है (Google क्रोम ब्राउजर का एक नया कैनरी बिल्ड कुछ छोटे बदलावों के साथ जरूरी है), लेकिन प्रत्येक टुकड़े का परीक्षण किया गया है और हम सभी को एक साथ काम करने के लिए उत्सुक हैं। हम अपने परीक्षण के दौरान उपयोग करने के लिए अपने जावास्क्रिप्ट एसआईपी स्टैक प्रदान करने के लिए एसआईपी-ऑन-द-वेब प्रोजेक्ट से आईनाकी और जोसे का शुक्रिया अदा करना चाहते हैं, और हम शायद फोन्सोडके के साथ भी जिंगल समर्थन के लिए परीक्षण करेंगे। "

2

यह एक अच्छा गाइड

Remote call-center solution using Node.js

+0

पोस्ट करने के लिए धन्यवाद, लेकिन मैंने इसे पहले ही देखा है। यह ब्राउजर स्ट्रीमिंग पक्ष में नहीं जाता है, यह सिर्फ फोनो का उपयोग करता है, जो फ्लैश-आधारित है। – Jonathan

0

मैं जबकि यह चरम विलंबता मुद्दों है कि आप के आसपास पाने के लिए सक्षम नहीं होगा होगा दर्ज की जा रही है एक ऑडियो फ़ाइल स्ट्रीम करने के लिए कोशिश कर रहा है लगता है कि लगता है। यदि आप फोन वार्तालाप को रीयल-टाइम सुनना चाहते हैं तो मैं Phono में देखने का सुझाव दूंगा। यह एक JQuery प्लगइन है जो आपके वेब ब्राउज़र को फोन में बदल देता है। तो आपके पास म्यूट पर बातचीत के साथ श्रोताओं का सम्मेलन होगा।

+0

मैंने पहले फोनो देखा है। यह अच्छा लग रहा है , बीओ टी, जैसा कि मैं इसे समझता हूं: आपको फोनो सेवा का उपयोग करना होगा और प्लगइन वास्तव में फ्लैश का उपयोग कर रहा है। मुझे उपयोगकर्ता के माइक तक पहुंचने की आवश्यकता नहीं है, यही कारण है कि मेरा मानना ​​है कि वे फ्लैश का उपयोग कर रहे हैं, इसलिए यदि संभव हो तो ऑडियो टैग पर स्ट्रीमिंग, ऐसा लगता है जैसे यह काम करेगा। – Jonathan

+0

स्ट्रीमिंग कार्य कर सकती है यदि आप विलंबता मुद्दों को स्वीकार कर सकते हैं। यह वास्तविक समय कभी नहीं होगा। मुझे विश्वास है कि आपको रीयल-टाइम सुनने के लिए एक संचार चैनल खोलने की आवश्यकता है। आप इस तरह के अन्य ब्राउज़र आधारित एसआईपी फोनों को देखना चाहते हैं [http://www.mizu-voip.com/Products/WebPhone.aspx]। –

+0

यदि मैं ब्राउज़र में सॉकेट एक्सेस कर सकता हूं, तो मैं सर्वर पर सीधे सॉकेट का उपयोग करके सूडो-सिप क्लाइंट को क्यों लागू नहीं कर सकता? मुझे यकीन है कि यह एक छोटा काम नहीं है, लेकिन, मुझे आश्चर्य है कि यह संभव है? – Jonathan

0

आप की प्रतीक्षा अवधि (Icecast धारा के बफरिंग के कारण) कोई आपत्ति नहीं है, तारा (तारांकन के Ices अनुप्रयोग को कॉन्फ़िगर) Icecast को स्ट्रीम करने के लिए सक्षम है।

यदि आप विलंबता को बर्दाश्त नहीं कर सकते हैं, तो आपको ब्राउज़र-आधारित एसआईपी क्लाइंट की आवश्यकता होगी। दुर्भाग्यवश, उनमें से कई नहीं हैं जो किसी और के फोन सिस्टम पर बंद नहीं हैं। आप red5phone (http://code.google.com/p/red5phone/) आज़मा सकते हैं लेकिन इसके लिए आपको एक Red5 सर्वर सेट अप करना होगा।

1

मैं यहाँ एक ऐसी ही समाधान का निर्माण किया है इस पोस्ट में मैं इसके बारे में एक छोटे से बात कर रहा हूँ:। http://www.igorescobar.com/blog/2014/08/13/working-with-asterisk-and-node-js/

मैं एक कॉल सेंटर समाधान Node.js (एक्सप्रेस/Socket.io), जावास्क्रिप्ट का उपयोग कर बनाया गया है, एचटीएमएल 5 और CSS3।

संबंधित मुद्दे