SiddhiQL как использовать ЛОГИЧЕСКОЕ И? - PullRequest
0 голосов
/ 06 февраля 2020
define stream RegulatorStream(deviceID long, roomNo int, tempSet double);

@sink(type = 'log', prefix = "LOGGER")
define stream outputStream (roomNo int,rooomNo int);

from e1 = RegulatorStream[roomNo==23] and e2 = RegulatorStream[e1.deviceID == deviceID AND roomNo ==24] within 5 minutes 
select e2.roomNo,123 as rooomNo
insert into outputStream

В вышеупомянутом случае мне нужно предупреждать, когда я получаю события в моем RegulatorStream, имеющие roomNo = 23 И roomNo = 24, в течение 5 минут в любом порядке с тем же идентификатором устройства. Также возможно, что я сначала получу n событий с roomNo = 23, а затем получу 1 событие с roomNo = 24. В таких случаях я хочу испустить только 1 событие в выходном потоке

Как это может быть достигнуто в SiddhiQL?

...