BiFace_Server_Lite/commands/SyncController.php
2020-09-24 10:30:52 +07:00

65 lines
1.9 KiB
PHP

<?php
/**
* @link http://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
namespace app\commands;
use yii\console\Controller;
use yii\console\ExitCode;
/**
* This command echoes the first argument that you have entered.
*
* This command is provided as an example for you to learn how to create console commands.
*
* @author Qiang Xue <qiang.xue@gmail.com>
* @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\WaitingReq::find()->all();
foreach ($logs as $key => $value) {
$options = [
'http' => [
'header' => "Content-Type: application/json",
'method' => "POST",
'content' => $value->content
]
];
$res = json_decode(file_get_contents($sync->data, false, stream_context_create($options)), true);
$modelRes = new \app\models\ResponseReq();
$modelRes->create(json_encode($res));
$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;
}
}