* @since 2.0 */ class SyncController extends Controller { /** * This command echoes what you have entered as the message. * @param string $message the message to be echoed. * @return int Exit code */ public function actionIndex() { if ($this->is_connected()) { $sync = \app\models\SyncUrl::find()->one(); if ($sync) { $logs = \app\models\FaceLogs::find()->all(); foreach ($logs as $key => $value) { $options = [ 'http' => [ 'header' => "Content-Type: application/json", 'method' => "POST", 'content' => json_encode([ "camera_id" => $value->camera_id, "confidence" => $value->confidence, "enable_door" => $value->enable_door, "encoded_person_image" => $value->encoded_person_image, "frametime" => $value->frametime, "id" => $value->face_id, "image" => $value->image, "name" => $value->name, "person_id" => $value->person_id, "status" => $value->status, "stt" => $value->stt, "timezone" => $value->timezone ]), ] ]; file_get_contents($sync->data, false, stream_context_create($options)); $value->delete(); } } } return ExitCode::OK; } function is_connected() { $connected = @fsockopen("google.com", 80); //website, port (try 80 or 443) if ($connected) { $is_conn = true; //action when connected fclose($connected); } else { $is_conn = false; //action in connection failure } return $is_conn; } }