onConnect
বিবরণ:
callback Worker::$onConnect
যখন ক্লায়েন্ট Workerman এর সাথে সংযোগ স্থাপন করে (TCP তিনবারের হ্যান্ডশেক সম্পন্ন হওয়ার পরে) এটি একটি কলব্যাক ফাংশনকে ট্রিগার করে। প্রতিটি সংযোগ শুধুমাত্র একবার onConnect কলব্যাককে ট্রিগার করবে।
দ্রষ্টব্য: onConnect ইভেন্টটি কেবল ক্লায়েন্ট এবং Workerman এর মধ্যে TCP তিনবারের হ্যান্ডশেক সম্পন্ন হয়েছে তা নির্দেশ করে, এই সময়ে ক্লায়েন্ট কোনও ডেটা পাঠায়নি, তাই $connection->getRemoteIp() ব্যবহার করে একমাত্র যে তথ্য পাওয়া যায় তা হল বিপরীতের আইপি, ক্লায়েন্ট সম্পর্কে কোনও তথ্য বা ডেটা শনাক্ত করা সম্ভব নয়, তাই onConnect ইভেন্টে বিপরীতের পরিচয় নিশ্চিত করা সম্ভব নয়। বিপরীতের পরিচয় জানতে হলে, ক্লায়েন্টকে প্রমাণীকরণ ডেটা পাঠাতে হবে, যেমন একটি টোকেন বা ব্যবহারকারী নাম পাসওয়ার্ড, যা onMessage কলব্যাক এ প্রমাণীকরণ করা হবে।
যেহেতু udp কোন সংযোগ মুক্ত, তাই udp ব্যবহার করার সময় onConnect কলব্যাক ট্রিগার হবে না, এবং onClose কলব্যাকও ট্রিগার হবে না।
কলব্যাক ফাংশনের প্যারামিটার
$connection
সংযোগ অবজেক্ট, অর্থাৎ TcpConnection উদাহরণ, ক্লায়েন্ট সংযোগ পরিচালনার জন্য, যেমন ডেটা পাঠানো, সংযোগ বন্ধ করা ইত্যাদি
উদাহরণ
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onConnect = function(TcpConnection $connection)
{
echo "নতুন সংযোগ ip " . $connection->getRemoteIp() . " থেকে\n";
};
// ওয়ার্কার চালানো
Worker::runAll();
দ্রষ্টব্য: অ্যানোনিমাস ফাংশনটি কলব্যাক হিসাবে ব্যবহারের পাশাপাশি, এখানে রেফারেন্স করুন অন্যান্য কলব্যাক লেখার পদ্ধতি ব্যবহার করা যেতে পারে।