connect(); if (!$con) { return false; } $fs->events("CUSTOM sofia::register sofia::unregister"); while (true) { $received_parameters = $fs->recvEvent(); if (!empty($received_parameters)) { $info = $fs->serialize($received_parameters); $eventname = Arr::get($info, "Event-Subclass"); //子事件名称 $eventname = urldecode($eventname); $username = Arr::get($info, "username"); //分机号 switch ($eventname) { //注册 case 'sofia::register': Sip::query()->where('username', $username)->update(['status' => 1, 'state' => 'down']); break; //注销 case 'sofia::unregister': Sip::query()->where('username', $username)->update(['status' => 0, 'state' => 'down']); break; default: break; } } } $fs->disconnect(); }); } }