আমরা যে সংস্করণটি ব্যবহার করছি তা যদি আমরা কেবল কনসোল.লগ () "সার্ভারের সাইড নোডেজ কোডে" আইও "অবজেক্টটি ব্যবহার করি, [উদাহরণস্বরূপ io.on ('সংযোগ', ফাংশন (সকেট) {...});] , আমরা দেখতে পাচ্ছি যে "আইও" হ'ল একটি জসন বস্তু এবং অনেকগুলি শিশু অবজেক্ট রয়েছে যেখানে সকেট আইডি এবং সকেট অবজেক্টগুলি সঞ্চয় করা হয়।
আমি সকেট.ইও সংস্করণটি 1.3.5, বিটিডাব্লু ব্যবহার করছি।
আমরা যদি আইও অবজেক্টে দেখি তবে এতে রয়েছে,
sockets:
{ name: '/',
server: [Circular],
sockets: [ [Object], [Object] ],
connected:
{ B5AC9w0sYmOGWe4fAAAA: [Object],
'hWzf97fmU-TIwwzWAAAB': [Object] },
এখানে আমরা সকেটিডস "B5AC9w0sYmOGWe4fAAAA" ইত্যাদি দেখতে পাচ্ছি, সুতরাং আমরা এটি করতে পারি,
io.sockets.connected[socketid].emit();
আবার, আরও পরিদর্শন করার পরে আমরা বিভাগগুলি দেখতে পাচ্ছি যেমন,
eio:
{ clients:
{ B5AC9w0sYmOGWe4fAAAA: [Object],
'hWzf97fmU-TIwwzWAAAB': [Object] },
সুতরাং, আমরা এখানে থেকে একটি সকেট পুনরুদ্ধার করতে পারেন
io.eio.clients[socketid].emit();
এছাড়াও, ইঞ্জিনের অধীনে আমাদের রয়েছে,
engine:
{ clients:
{ B5AC9w0sYmOGWe4fAAAA: [Object],
'hWzf97fmU-TIwwzWAAAB': [Object] },
সুতরাং, আমরা এটিও লিখতে পারি,
io.engine.clients[socketid].emit();
সুতরাং, আমি অনুমান করি যে আমি উপরে তালিকাভুক্ত 3 টির মধ্যে যে কোনও একটিতে আমাদের লক্ষ্য অর্জন করতে পারি,
- io.sockets.connected [socketid] .emit (); অথবা
- io.eio.clients [socketid] .emit (); অথবা
- io.engine.clients [socketid] .emit ();