<?php require_once 'config.def.php'; require_once 'dvipc.php'; echo date_timestamp_get(date_create()) . "\n"; $event['type'] = 'idle'; $ipc = new DVIPCSys(); $ipc->invokeEvent($event);
<?php require_once 'dvipc.php'; $ipcsys = new DVIPCSys(); $event['obj'] = 'aaa'; $ipcsys->register('asdf'); print_r($ipcsys->listenForEvent()); //$this->putEnvToBus("aaaa", "aaaaval"); //print "env: ".$this->getEnvFromBus("aaaa")."\n"; //$this->removeEnvFromBus("aaaa"); // $this->putToQueue("aa", "aaa1"); // $this->putToQueue("aa", "aaa2"); // $this->putToQueue("aa", "aaa3"); // $this->putToQueue("aa", "aaa4"); // $this->putToQueue("aa", "aaa5"); // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n";
private function listenForEvents($inp, $user, $sess) { $need = $inp['obj']['need']; if (isset($inp['obj']['qid'])) { $queueid = $inp['obj']['qid']; } else { $queueid = ''; } $sid = $inp['sid']; $needsendqid = false; if (!isValidMd5($queueid)) { $queueid = randHash(); $needsendqid = true; } $sysipc = new DVIPCSys(); $useripc = new DVIPCUser($sid); $sysipc->registerIPC($sid); $useripc->register($queueid); $sysevent = $useripc->listenForEvent(); if ($sysevent['type'] == 'idle') { if ($needsendqid) { $sysevent['qid'] = $queueid; } $ret['objs']['event'] = $sysevent; $ret['result'] = 'success'; return $ret; } //check tags $systags = $sysevent['tags']; $systagsarr = explode(' ', $systags); unset($need['_isarr']); foreach ($need as $ind => $tags) { $needtags = $tags['tags']; $needtagsarr = explode(' ', $needtags); if (count($needtagsarr) > 0) { if ($needtagsarr == array_values(array_intersect($systagsarr, $needtagsarr))) { $clevent = $sysevent; $systagsarr['_isarr'] = '_isarr'; $clevent['tags'] = $systagsarr; if (isset($clevent['objs'])) { // $filter = new DvObjFilter(); // $clevent['objs'] = $filter->filter($clevent['objs'], $user, $clevent['tags']); } if ($needsendqid) { $clevent['qid'] = $queueid; } $ret['objs']['event'] = $clevent; $ret['result'] = 'success'; return $ret; } } } return $this->listenForEvents($inp, $user, $sess); }
<?php require_once 'dvipc.php'; $ipcsys = new DVIPCSys(); $event['obj'] = 'aaa'; $ipcsys->invokeEvent($event); //$this->putEnvToBus("aaaa", "aaaaval"); //print "env: ".$this->getEnvFromBus("aaaa")."\n"; //$this->removeEnvFromBus("aaaa"); // $this->putToQueue("aa", "aaa1"); // $this->putToQueue("aa", "aaa2"); // $this->putToQueue("aa", "aaa3"); // $this->putToQueue("aa", "aaa4"); // $this->putToQueue("aa", "aaa5"); // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n"; // print "queue: ".$this->getFromQueue("aa")."\n";