";
echo " Номер устройства | ";
echo " Описание событий | ";
echo " Охрана | ";
echo " " . $zona1_s . " | ";
echo " " . $zona2_s . " | ";
echo " " . $zona3_s . " | ";
echo " " . $zona4_s . " | ";
echo " " . $zona5_s . " | ";
echo " " . $zona6_s . " | ";
echo " " . $zona7_s . " | ";
echo " " . $zona8_s . " | ";
echo " " . "Аналоговый вход" . ",V | ";
echo " " . "Напряжение питания" . ",V | ";
echo " Температура датчика DS1821, С | ";
echo " Температура внутри GSM-модуля, С | ";
echo " Время сервера | ";
echo " Дополнительная информация | ";
echo " LAT | ";
echo " LON | ";
echo " MAP | ";
echo "
\n";
//open DB connection
$con = mysql_connect($host, $user, $pass);
if (!$con) {
die('MySQL connection error: ' . mysql_error()); //return with error
}
mysql_select_db($db, $con);
$device_s = "'" . $device_s1 . "%'";
$sql = "select deviceId, deviceCond, dateInsert,deviceDatetime,lat,lon from okoData where deviceId like " . $device_s . " order by dateInsert desc limit " . $points_s ;
//fetch
$result = mysql_query($sql);
//loop and build table
while($row = mysql_fetch_row($result)) {
echo "";
$deviceId=$row[0];
$deviceCond=$row[1];
$dateInsert=$row[2];
$deviceDatetime=$row[3];
$lat=$row[4];
$lon=$row[5];
if (substr($deviceId,0,1)=="E") {
$ext_pwr= intval (substr($deviceCond,2,2),16)*11/100 ;
} else {
$ext_pwr= intval (substr($deviceCond,2,2),16)/10 ;
}
$adc_lev= intval (substr($deviceCond,0,2),16)/10 ;
if (substr($deviceId,0,1)=="E") {
$adc_lev= "-" ;
} else {
$adc_lev= intval (substr($deviceCond,0,2),16)/10 ;
}
$r_now= intval (substr($deviceCond,18,2),16) ;
$r_now = decbin ($r_now);
$mode= intval (substr($deviceCond,12,2),16) ;
$mode = decbin ($mode);
switch (strlen($mode)) {
case 8:
break;
case 7:
$mode="0" . $mode;
break;
case 6:
$mode="00" . $mode;
break;
case 5:
$mode="000" . $mode;
break;
case 4:
$mode="0000" . $mode;
break;
case 3:
$mode="00000" . $mode;
break;
case 2:
$mode="000000" . $mode;
break;
case 1:
$mode="0000000" . $mode;
break;
default:
$mode="00000000";
}
$oxrana=substr($mode,4,1);
$t_gsm= substr($deviceCond,4,4) ;
//if To
if ($t_gsm=="546F") {
$t_gsm= intval (substr($deviceCond,8,2),16) ;
if ($t_gsm == 255) {
$t_gsm=" ";
} else {
$t_gsm=$t_gsm-128;
}
}
else
{
$t_gsm="-" ;
}
$t_dallas= substr($deviceCond,20,4) ;
//if Td
if ($t_dallas=="5464") {
$t_dallas= intval (substr($deviceCond,24,2),16) ;
if ($t_dallas == 128) {
$t_dallas="-";
} else {
if ($t_dallas > 125) {
$t_dallas=256-$t_dallas;
$t_dallas="-" . $t_dallas;
}
}
}
else
{
$t_dallas="-";
}
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
//i=1...8
for ($i = 0; $i++ < 8;) {
$i_state[9-$i]= substr($r_now,$i-1,1);
}
$r_now= intval (substr($deviceCond,10,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
//i=1...8
for ($i = 0; $i++ < 8;) {
$monit[9-$i]= substr($r_now,$i-1,1);
}
//datchik_flags
//i=1...8
$r_now= intval (substr($deviceCond,16,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
//i=1...8
for ($i = 0; $i++ < 8;) {
$d_flag[9-$i]= substr($r_now,$i-1,1);
}
//********************EVENTS
$events="";
// 1 byte events
$r_now= intval (substr($deviceCond,36,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event1 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event2 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event3 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event4 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event5 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event6 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event7 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event8 . " ";
}
// 2 byte events
$r_now= intval (substr($deviceCond,38,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event9 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event10 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event11 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event12 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event13 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event14 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event15 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event16 . " ";
}
// 3 byte events
$r_now= intval (substr($deviceCond,40,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event17 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event18 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event19 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event20 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event21 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event22 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event23 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event24 . " ";
}
// 4 byte events
$r_now= intval (substr($deviceCond,42,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event25 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event26 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event27 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event28 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event29 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event30 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event31 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event32 . " ";
}
// 5 byte events
$r_now= intval (substr($deviceCond,44,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event33 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event34 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event35 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event36 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event37 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event38 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event39 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event40 . " ";
}
// 6 byte events
$r_now= intval (substr($deviceCond,46,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event41 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event42 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event43 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event44 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event45 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event46 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event47 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event48 . " ";
}
// 7 byte events
$r_now= intval (substr($deviceCond,48,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event49 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event50 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event51 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event52 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event53 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event54 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event55 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event56 . " ";
}
// 8 byte events
$r_now= intval (substr($deviceCond,50,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event57 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event58 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event59 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event60 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event61 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event62 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event63 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event64 . " ";
}
// 9 byte events
$r_now= intval (substr($deviceCond,52,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event65 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event66 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event67 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event68 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event69 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event70 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event71 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event72 . " ";
}
// 10 byte events
$r_now= intval (substr($deviceCond,54,2),16) ;
$r_now = decbin ($r_now);
switch (strlen($r_now)) {
case 8:
break;
case 7:
$r_now="0" . $r_now;
break;
case 6:
$r_now="00" . $r_now;
break;
case 5:
$r_now="000" . $r_now;
break;
case 4:
$r_now="0000" . $r_now;
break;
case 3:
$r_now="00000" . $r_now;
break;
case 2:
$r_now="000000" . $r_now;
break;
case 1:
$r_now="0000000" . $r_now;
break;
default:
$r_now="00000000";
}
if (substr($r_now,7,1)=="1") {
$events=$events . $event73 . " ";
}
if (substr($r_now,6,1)=="1") {
$events=$events . $event74 . " ";
}
if (substr($r_now,5,1)=="1") {
$events=$events . $event75 . " ";
}
if (substr($r_now,4,1)=="1") {
$events=$events . $event76 . " ";
}
if (substr($r_now,3,1)=="1") {
$events=$events . $event77 . " ";
}
if (substr($r_now,2,1)=="1") {
$events=$events . $event78 . " ";
}
if (substr($r_now,1,1)=="1") {
$events=$events . $event79 . " ";
}
if (substr($r_now,0,1)=="1") {
$events=$events . $event80 . " ";
}
//***************************
echo "" . $deviceId . " | ";
echo "" . $events . " | ";
if ($oxrana=="1") {
echo "ВКЛ | ";
}
else
{
echo "выкл | ";
}
//i=1...8
for ($i = 0; $i++ < 8;) {
if ($i_state[$i]==1) {
//alarm state
if ($monit[$i]==0) {
if ($d_flag[$i]==0) {
echo " no | ";
}
else
{
echo " +no | ";
}
}
else
{
if ($d_flag[$i]==0) {
echo " NO | ";
}
else
{
echo " +NO | ";
}
}
}
else
{
if ($monit[$i]==0) {
if ($d_flag[$i]==0) {
echo " ok | ";
}
else
{
echo " +ok | ";
}
}
else
{
if ($d_flag[$i]==0) {
echo " OK | ";
}
else
{
echo " +OK | ";
}
}
}
}
echo "" . $adc_lev . " | ";
//echo "" . $ext_pwr . " | ";
if ($ext_pwr<13){
echo " " . $ext_pwr . " | ";
}
if ($ext_pwr<11){
echo " " . $ext_pwr . " | ";
}
if ($ext_pwr>13){
echo "" . $ext_pwr . " | ";
}
if ($ext_pwr==13){
echo "" . $ext_pwr . " | ";
}
echo "" . $t_dallas . " | ";
echo "" . $t_gsm . " | ";
echo "" . $dateInsert . " | ";
echo "" . $deviceDatetime . " | ";
echo "" . $lat . " | ";
echo "" . $lon . " | ";
//http://static-maps.yandex.ru/1.x/?l=map&pt=50.32,50.32,pmlbm&z=10&size=250,250
//http://maps.google.com/staticmap?zoom=8&size=320x320&markers=30.45,50.32,green
// fdsfds
//$mmm1=" view
\n";
//echo "" . $mmm1 . substr($lat,0,8) . "," . substr($lon,0,8) . $mmm2 . " | ";
//http://static-maps.yandex.ru/1.x/?l=map&pt=50.32,30.45,pmlbm&z=7&size=320,320&key=AO12sEsBAAAAbbeoFgQAao4YE7fX6b3U5ZgPv4f7nfq4p0oAAAAAAAAAAAAbYqyzt1ztlAS5Pj4_GYr60NTz_A==
$mmm1=" view
\n";
echo "" . $mmm1 . substr($lon,0,8) . "," . substr($lat,0,8) . $mmm2 . " | ";
echo "
\n";
}
mysql_close($con);
echo "