goal("Verify device ping requests"); $pubsub = new SubscribeSocket($test, $cfgSMPZMQPublishURI); $test->step("Wait for device:ping publish"); while (true) { $msg = $pubsub->recv(); if ($msg['pub'] == "device:ping") break; } $test->step("Wait for sensor:data GPS uid 13 publish"); while (true) { $msg = $pubsub->recv(); if ($msg['pub'] == "sensor:data" && $msg['result'][0]['uid'] == 13) break; } $test->info("GPS: " . json_encode($msg['result'][0]['value'])); $test->equal(true, isset($msg['result'][0]['time'])); $test->equal(true, isset($msg['result'][0]['value']['fix'])); $test->equal(true, isset($msg['result'][0]['value']['latitude'])); $test->equal(true, isset($msg['result'][0]['value']['longitude'])); $test->equal(true, isset($msg['result'][0]['value']['siv'])); $test->equal(true, isset($msg['result'][0]['value']['hdop'])); $test->step("Wait for sensor:data RSSI uid 14 publish"); while (true) { $msg = $pubsub->recv(); if ($msg['pub'] == "sensor:data" && $msg['result'][0]['uid'] == 14) break; } $test->info("RSSI: " . $msg['result'][0]['value']);