वेबसॉकेट कनेक्शन में दो भाग हैं: सर्वर और क्लाइंट। तुम बस Play2 का उपयोग कर सर्वर हिस्सा बनाने के लिए और एंड्रॉयड (websocket-android-phonegap देखें), iOS (Unitt देखें), जावास्क्रिप्ट अनुप्रयोग के साथ एक ग्राहक को लागू कर सकते हैं ...
यहाँ एक बहुत बुनियादी WebSocket http://blog.tksfz.org/2012/10/12/websockets-echo-using-play-scala-and-actors-part-i/ से लिया कनेक्शन के लिए एक उदाहरण है :
GET /connect Application.index
सर्वर फिर से है:
package controllers
import play.api.mvc._
object Application extends Controller {
def index = WebSocket.using[String] {
val out = Enumerator.imperative[String]()
val in = Iteratee.foreach[String] {
msg =>
out.push(msg)
}
(in, out)
}
}
आप केवल एक मार्ग है कि आपके नियंत्रक conf/routes
को इंगित करता है स्थापित करने के लिए चलाने के लिए ady। फिर आप अपने वेबसाकेट से जावास्क्रिप्ट एप्लिकेशन, एंड्रॉइड एप्लिकेशन आदि से कनेक्ट कर सकते हैं ... क्लाइंट साइड एक और मामला है।
आप क्रोम या क्रोमियम का उपयोग करते हैं, बस डेवलपर उपकरण में अपने JavaScript कंसोल खोलकर और आप ऐसे ही अपने सर्वर से कनेक्ट कर सकते हैं:
ws = new WebSocket('ws://localhost:9000/connect')
ws.onmessage = function(message) { console.log(message); };
ws.send('test')
यह तुम वापस अपना संदेश भेजने और जावास्क्रिप्ट में यह प्रवेश करेंगे कंसोल जब भी आप एक भेजते हैं।
आप केवल http://www.websocket.org/echo.html इको परीक्षण का उपयोग कर सकते हैं और इसे अपने 'ws://localhost:9000/connect'
यूआरएल फ़ीड कर सकते हैं।
मैं उलझन में। वेबसाकेट एक वर्कअराउंड है जो मौजूद है क्योंकि HTTP बिडरेक्शनल स्टेटफुलर कनेक्शन की अनुमति नहीं देता है। जब आप मूल ऐप विकसित कर रहे हों तो आपके पास उस सीमा नहीं है (सिवाय इसके कि आप अपाचे कॉर्डोवा या इसी तरह का उपयोग कर रहे हैं, लेकिन फिर आप जावास्क्रिप्ट का उपयोग करेंगे)। तो आप इस मार्ग क्यों ले रहे हैं? – Carsten
हाय कार्स्टन। मुझे किसी भी अन्य डुप्लेक्स प्रोटोकॉल के बारे में पता नहीं है जो सर्वर से क्लाइंट तक रीयल-टाइम डेटा पुश की अनुमति देता है। देशी ऐप्स (जैसे जीसीएम) के लिए पुश अधिसूचना सेवाएं रीयल-टाइम नहीं हैं। क्या आप किसी वैकल्पिक तरीके से जानते हैं? – ticofab
0MQ पब/सब स्ट्रीमिंग के लिए एक समाधान है। http://zeromq.org/ –