script :
""
@App:name('position')
@App:description('element position')
@map(type = 'json'))
define stream sensor_event (sensorID string,element string,type string,timeStamp string);
define stream sensor_alert(element string, sensorID string, timeStamp string);
define function translate[javascript] return string {
var sensors = {
'8': 'S',
'9': 'S',
'7': 'SG',
'2': 'S',
'4': 'NG',
'6': 'S',
'5': 'S'
};
sensorID=data[0];
return sensors[sensorID];
};
define stream sensor_event_translated (element string, sensorID string,timeStamp string);
from sensor_event
select element, translate(sensorID) as sensorID ,timeStamp
insert into tracker_event_translated ;
partition with (sensorID of sensor_event_translated)
begin
@info(name = 'query')
from sensor_event_translated#window.unique:firstTimeBatch(element,10 sec)
insert current events into sensor_alert;
end;
"""