public static function onMessage($data, $class_dir) { echo Event::procMessage($data, $class_dir); }
<?php require_once __DIR__ . "/libs/db/db.php"; require_once __DIR__ . "/libs/Uart.php"; require_once __DIR__ . "/libs/Event.php"; if (isset($argv[1])) { $sceneid = $argv[1]; $db = Db::init(); $results = $db->get_results('select * from scene_info where id=' . $sceneid . ' order by "order"'); $scenes = array(); if (isset($results[0])) { foreach ($results as $rec) { for ($i = 0; $i = 100; $i++) { $res = Event::procMessage(json_decode($rec->cmdline, true), __DIR__ . "/libs/Services"); //执行cmdline $json = json_decode($res, true); if ($json["code"] == 30006) { continue; } else { break; } } } } echo "OOOOO\n"; }
public static function _Execute($params) { if (isset($params["sceneid"])) { $sceneid = $params["sceneid"]; $db = Db::init(); $results = $db->get_results('select * from scene_info where id=' . $sceneid . ' order by "order"'); $scenes = array(); if (isset($results[0])) { //ob_start();//开始当前代码缓冲 ////下面输出http的一些头信息 //header("Connection: close");//告诉浏览器,连接关闭了,这样浏览器就不用等待服务器的响应 //header("HTTP/1.1 200 OK"); //可以发送200状态码,以这些请求是成功的,要不然可能浏览器会重试,特别是有代理的情况下 //ob_end_flush();#输出当前缓冲 //flush();//输出PHP缓冲 //ignore_user_abort(true); // 后台运行,这个只是运行浏览器关闭,并不是直接就中止返回200状态。 //set_time_limit(0); // 取消脚本运行时间的超时上限 foreach ($results as $rec) { for ($i = 0; $i = 100; $i++) { $res = Event::procMessage(json_decode($rec->cmdline, true), __DIR__); //执行cmdline $json = json_decode($res, true); if ($json["code"] == 30006) { continue; } else { break; } } } } return json_encode(array("code" => 0, "msg" => "ok")); //return json_encode(array("code"=>31001, "msg"=>"id not exist")); } else { return json_encode(array('code' => 31003, 'msg' => "params format error")); } }