TrackDataSetController
extends ApiController
in package
Class ApiBaseController.
Table of Contents
- $config : AirlayConfig
- $config : AirlayConfig
- $request : Request
- $user : UserEntity
- $status : StatusPage|null
- $tokenHandler : TokenHandler|null
- __destruct() : mixed
- afterExecuteRoute() : mixed
- beforeExecuteRoute() : mixed
- createFeatureAction() : string
- Create feature request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/createFeature' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to create feature in', 'required' => true ], [ 'name' => 'feature', 'type' => 'array', 'description' => feature to create, 'required' => true ] ] ]) response([ 'status' => 200, 'message' => FeatureEntity, 'code' => 0 ])
- deleteFeatureAction() : string
- Delete feature request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/deleteFeature' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to update feature in', 'required' => true ], [ 'name' => 'featureId', 'type' => 'objectId', 'description' => 'feature id to create', 'required' => true ] ] ]) response([ 'status' => 200, 'message' => FeatureEntity, 'code' => 0 ])
- getObjectsAction() : void
- Get tracks by filter: deviceId, bbox, begin, end.
- getTracksAction() : false|string
- Get tracks by filter: deviceId, bbox, layerId, begin, end.
- indexAction() : mixed
- initialize() : void
- sendLocationAction() : string
- Send location to tracks dataset request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/sendLocation' 'params' => [ [ 'name' => 'deviceId', 'type' => 'string', 'description' => 'device id', 'required' => false ], [ 'name' => 'body', 'type' => 'array', 'description' => track object body ["lon" : float, "lat" : float, "time" : int] | ["track" : [["lon" : float, "lat" : float, "time" : int], ...]], 'required' => true ] ] ]) response([ 'status' => 200, 'message' => "Ok", 'code' => 0 ])
- sendTracksAction() : string
- Send new tracks to track dataset request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/sendTracks' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to send tracks to', 'required' => true ], [ 'name' => 'body', 'type' => 'array', 'description' => track object body ["lon" : float, "lat" : float, ("deviceId" : string (required : false))] | ["track" : ["point" : ["lon" : float, "lat" : float, "time" : int, ("deviceId" : string (required : false))], ...]], 'required' => true ] ] ]) response([ 'status' => 200, 'message' => "Ok", 'code' => 0 ])
- updateFeatureAction() : string
- Update feature request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/updateFeature' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to update feature in', 'required' => true ], [ 'name' => 'featureId', 'type' => 'objectId', 'description' => 'feature id to create', 'required' => true ], [ 'name' => 'properties', 'type' => 'array', 'description' => feature data, 'required' => true ] ] ]) response([ 'status' => 200, 'message' => FeatureEntity, 'code' => 0 ])
- attachTmpFile() : Response
- firesAnRelationUpdateEvents() : void
- getId() : mixed
- getNormalizedUserId() : int|ObjectId
- getTranslator() : NativeArray
- getUserInfo() : UserEntity
- secureData() : mixed
- sendEmail() : mixed
- addLayerFilters() : void
- addQueryFilter() : array<string|int, mixed>
- extractTimeFilter() : array<string|int, mixed>
- getDeviceId() : string
Properties
$config
public
AirlayConfig
$config
$config
public
AirlayConfig
$config
$request
public
Request
$request
$user
public
UserEntity
$user
$status
protected
StatusPage|null
$status
$tokenHandler
protected
TokenHandler|null
$tokenHandler
Methods
__destruct()
public
__destruct() : mixed
Return values
mixed —afterExecuteRoute()
public
afterExecuteRoute(Dispatcher $dispatcher) : mixed
Parameters
- $dispatcher : Dispatcher
Return values
mixed —beforeExecuteRoute()
public
beforeExecuteRoute(Dispatcher $dispatcher) : mixed
Parameters
- $dispatcher : Dispatcher
Return values
mixed —createFeatureAction()
Create feature request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/createFeature' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to create feature in', 'required' => true ], [ 'name' => 'feature', 'type' => 'array', 'description' => feature to create, 'required' => true ] ] ]) response([ 'status' => 200, 'message' => FeatureEntity, 'code' => 0 ])
public
createFeatureAction() : string
Tags
Return values
string —deleteFeatureAction()
Delete feature request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/deleteFeature' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to update feature in', 'required' => true ], [ 'name' => 'featureId', 'type' => 'objectId', 'description' => 'feature id to create', 'required' => true ] ] ]) response([ 'status' => 200, 'message' => FeatureEntity, 'code' => 0 ])
public
deleteFeatureAction() : string
Tags
Return values
string —getObjectsAction()
Get tracks by filter: deviceId, bbox, begin, end.
public
getObjectsAction() : void
Filters: deviceId - find by device id bbox - lat1, lat2, lon1, lon2, first point is top left bound, second point bottom right bound begin - start time in seconds end - end time in seconds request([ 'method' => 'GET', 'url' => '/api/v4/track_data_set/getObjects' 'params' => [ [ 'name' => 'layerId', 'type' => 'string', 'description' => 'LayerId', 'required' => true ], [ 'name' => 'zoom', 'type' => 'absint', 'required' => false ], [ 'name' => 'lat1', 'type' => 'float', 'required' => false ], [ 'name' => 'lat2', 'type' => 'float', 'required' => false ], [ 'name' => 'lon1', 'type' => 'float', 'required' => false ], [ 'name' => 'lon2', 'type' => 'float', 'required' => false ], [ 'name' => 'begin', 'type' => 'int', 'required' => false, 'default' => 0 ], [ 'name' => 'end', 'type' => 'int', 'required' => false, 'default' => current time ] ] ]) response([ 'status' => 'OK', 'message' => [ 'properties' => PropertiesEntity[], 'tracks' => TrackEntity[] ], 'code' => 0 ])
Tags
Return values
void —getTracksAction()
Get tracks by filter: deviceId, bbox, layerId, begin, end.
public
getTracksAction() : false|string
Filters: deviceId - find by device id bbox - lat1, lat2, lon1, lon2, first point is top left bound, second point bottom right bound begin - start time in seconds end - end time in seconds request([ 'method' => 'GET', 'url' => '/api/v4/track_data_set/getTracks' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'DeviceId', 'required' => true ], [ 'name' => 'uniqueValue', 'type' => 'string', 'description' => 'DeviceId', 'required' => true ], [ 'name' => 'begin', 'type' => 'int', 'required' => false, 'default' => 0 ], [ 'name' => 'end', 'type' => 'int', 'required' => false, 'default' => time() ] ] ]) response([ 'status' => 'OK', 'message' => array of tracks and features 'code' => 0 ])
Tags
Return values
false|string —indexAction()
public
indexAction() : mixed
Return values
mixed —initialize()
public
initialize() : void
Return values
void —sendLocationAction()
Send location to tracks dataset request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/sendLocation' 'params' => [ [ 'name' => 'deviceId', 'type' => 'string', 'description' => 'device id', 'required' => false ], [ 'name' => 'body', 'type' => 'array', 'description' => track object body ["lon" : float, "lat" : float, "time" : int] | ["track" : [["lon" : float, "lat" : float, "time" : int], ...]], 'required' => true ] ] ]) response([ 'status' => 200, 'message' => "Ok", 'code' => 0 ])
public
sendLocationAction() : string
Tags
Return values
string —sendTracksAction()
Send new tracks to track dataset request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/sendTracks' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to send tracks to', 'required' => true ], [ 'name' => 'body', 'type' => 'array', 'description' => track object body ["lon" : float, "lat" : float, ("deviceId" : string (required : false))] | ["track" : ["point" : ["lon" : float, "lat" : float, "time" : int, ("deviceId" : string (required : false))], ...]], 'required' => true ] ] ]) response([ 'status' => 200, 'message' => "Ok", 'code' => 0 ])
public
sendTracksAction() : string
Tags
Return values
string —updateFeatureAction()
Update feature request([ 'method' => 'POST', 'url' => '/api/v4/track_data_set/updateFeature' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'objectId', 'description' => 'track dataset to update feature in', 'required' => true ], [ 'name' => 'featureId', 'type' => 'objectId', 'description' => 'feature id to create', 'required' => true ], [ 'name' => 'properties', 'type' => 'array', 'description' => feature data, 'required' => true ] ] ]) response([ 'status' => 200, 'message' => FeatureEntity, 'code' => 0 ])
public
updateFeatureAction() : string
Tags
Return values
string —attachTmpFile()
protected
attachTmpFile(TmpFile $tmpFile) : Response
Parameters
- $tmpFile : TmpFile
Return values
Response —firesAnRelationUpdateEvents()
protected
firesAnRelationUpdateEvents(array<string|int, mixed> $relations, ObjectId $dataSetId[, DataSetLogEntity|null $log = null ]) : void
Parameters
- $relations : array<string|int, mixed>
- $dataSetId : ObjectId
- $log : DataSetLogEntity|null = null
Return values
void —getId()
protected
getId() : mixed
Return values
mixed —getNormalizedUserId()
protected
getNormalizedUserId() : int|ObjectId
Tags
Return values
int|ObjectId —getTranslator()
protected
getTranslator([string|null $language = null ]) : NativeArray
Parameters
- $language : string|null = null
Tags
Return values
NativeArray —getUserInfo()
protected
getUserInfo() : UserEntity
Tags
Return values
UserEntity —secureData()
protected
secureData(mixed $data) : mixed
Parameters
- $data : mixed
Return values
mixed —sendEmail()
protected
sendEmail(string $email, string $name, string $subject, string $body) : mixed
Parameters
- $email : string
- $name : string
- $subject : string
- $body : string
Return values
mixed —addLayerFilters()
private
addLayerFilters(array<string|int, mixed> &$filter, MenuNodeEntity $layer) : void
Parameters
- $filter : array<string|int, mixed>
- $layer : MenuNodeEntity
Return values
void —addQueryFilter()
private
addQueryFilter(string $filter) : array<string|int, mixed>
Parameters
- $filter : string
Return values
array<string|int, mixed> —extractTimeFilter()
private
extractTimeFilter(array<string|int, mixed> $filter, array<string|int, mixed> &$timeFilter) : array<string|int, mixed>
Parameters
- $filter : array<string|int, mixed>
- $timeFilter : array<string|int, mixed>
Return values
array<string|int, mixed> —getDeviceId()
private
getDeviceId(array<string|int, mixed> $body) : string
Parameters
- $body : array<string|int, mixed>