public function rawDataReceiver() { $data = Input::get('data'); // Elephant SOCKET IO $client = new CLient(new Version1X('http://localhost:3636')); // 라인별로 데이터 분리 $lineData = explode("\n", $data); $lineDataSize = count($lineData); // 현재 요청한 시각. $currentTime = date("Y-m-d H:i:s", time()); $output = []; // 아웃풋 데이터 for ($i = 0; $i < $lineDataSize; $i++) { $each = explode(',', $lineData[$i]); if (sizeof($each) !== 2) { continue; } $dataType = (int) $each[0]; $dataRaw = (int) $each[1]; // 데이터 변환 $convertedRaw = $dataRaw * (1.8 / 4096.0) / 2000.0; $convertedRaw = $convertedRaw * 1000000; if ($convertedRaw >= -100.5 && $convertedRaw <= 100.5) { $output[] = $convertedRaw; $oRawData = new MemberRawData(); $oRawData->rawdata = $dataRaw; $oRawData->regdate = $currentTime; $oRawData->save(); } } $client->initialize(); $client->emit('neuroskyData', ['data' => $output]); $client->close(); return " OKAY !"; }