я передаю координаты с телефона с помощью tascer по mqtt , передаю широту и долготу вместе они добавляются в свойствах Coordinates ,latitude и longitude и Location пишет дом если дома ,а если вне дома то пустая строка
Вот метод
$Coordinates=$this->getProperty("Coordinates");
$lat=substr($Coordinates,0,strpos($Coordinates,","));
$lon=substr($Coordinates,strpos($Coordinates,",")+1);
$this->setProperty('latitude',$lat);
$this->setProperty('longitude',$lon);
if($this->getProperty('HomeDistance')>100){
$data_file="http://geocode-maps.yandex.ru/1.x/?geoc ... .",N".$lat; // адрес xml файла
$xml = simplexml_load_file($data_file); // раскладываем xml на массив
$res=$xml->{'GeoObjectCollection'}->{'featureMember'}[0]->{'GeoObject'}->{'metaDataProperty'}->{'GeocoderMetaData'}->{'AddressDetails'}->{'Country'}->{'AddressLine'};
$this->setProperty("Location",$res);
}else{
$this->setProperty("Location",'Дом');
$this->callMethod('gotHome');
}
//Устанавливает текстовое наименование на основе координат
$Coordinates=$this->getProperty("Coordinates");
$lat=substr($Coordinates,0,strpos($Coordinates,","));
$lon=substr($Coordinates,strpos($Coordinates,",")+1);
$this->setProperty("Location",Getgeocode($lon,$lat));
// +http://connect.smartliving.ru/profile/40
$Coordinates=$this->getProperty("CoordinatesLocation");
$Coordinates=explode(", ", $Coordinates);
$Coordinates=$Coordinates[0];
$this->setProperty("City",$Coordinates);
как изменить метод чтобы он писал в свойствах .locationTitle или Location где сейчас находится пользователь ? Потому что пишет только дом.
А свойства :
CoordinatesUpdated
seenAt
homeColor
atHomeUpdated
isMoving
CoordinatesLocation
City
.address
short_address Все эти свойства пустые.
а здесь updatedText пишет когда обновлялись по локальной сети
Но если передаёш по локальной сети прям в gps трекэр то работает но для этого нужен ip
помогите разобраться со свойствами пользователей
Модератор: immortal
-
- Сообщения: 18
- Зарегистрирован: Вт фев 28, 2017 12:56 pm
- Благодарил (а): 12 раз
- Поблагодарили: 0