event : describes the batch of events itself, so the output depends on pipes expression. When the type parameter is event so the events parameter is an array of events (a batch). Besides its own format, every event arrives with a timestamp field indicating when the event occurs.
The control event types are described below:
start : describes the fields produced by the pipes query and its details (time window clause, estimate weight in bytes, etc)
{"fields": {"timestamp":"java.lang.Double","random":"java.lang.Double" },"group": [],"select": ["random" ],"type": "start","info": {"type":"row(number timestamp; ; number random)","output": [ {"amount":10,"unit":"SECOND","type":"time","zone":"America/Sao_Paulo" } ],"safe":true,"weight":64,"window":"every 10 seconds","span": {"text":"1 hour before (now)","normalized":"1 hour before (now)","fixed":false,"point":false,"includesPresent":true } }}
progress : describes the progress of pipes query through the historical data collection (since some queries doesn't requires to search data in storage, this event control could result 0 as total)
startRealTime : marks the real-time events are coming next
{"type": "startRealTime"}
stop : marks the query was destroyed either by the lack of need to follow real-time (reason: "NoRealTime" in that case) or if it was explicitly destroyed (at administration interface for ex) or yet because the Pipes Expression failed to compile
{"type": "stop", "message": "PipeException: At (1, 31->1, 33): Unexpected 'the'. Was expecting one of: <EOF>, 'at', 'every'... (6 more)",
"reason": "Error","user": false}