[ https://jira.fiware.org/browse/HELP-8303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fernando Lopez updated HELP-8303:
---------------------------------
HD-Chapter: IoT
Description:
Created question in FIWARE Q/A platform on 23-02-2017 at 12:02
{color: red}Please, ANSWER this question AT{color} http://stackoverflow.com/questions/42413994/cep-5-4-3-not-triggering-basic-condition
+Question:+
CEP 5.4.3, not triggering basic condition
+Description:+
using CEP i'm trying to make a basic example of communication between Proton and Orion.
I simply want Proton to receive a notification of temperature from Orion and send back a payload changing one boolean attribute if the temperature value is superior or equal to 20.
Here is the definition i'm using.
{
"epn":
{
"events":
[
{
"name": "TemperatureContextUpdate",
"attributes":
[
{
"dimension": 0,
"description": "The certainty that this event happen (value between 0 to 1)",
"name": "Certainty",
"defaultValue": "1",
"type": "Double"
},
{
"dimension": 0,
"description": "No value means it equals the event detection time, other option is to use one of the defined distribution functions with parameters",
"name": "OccurrenceTime",
"type": "Date"
},
{
"dimension": 0,
"name": "ExpirationTime",
"type": "Date"
},
{
"dimension": 0,
"description": "The cost of this event occurrence. Negative if this is an opportunity",
"name": "Cost",
"type": "Double"
},
{
"dimension": 0,
"description": "Used in case the this event occur within an interval",
"name": "Duration",
"defaultValue": "0",
"type": "Double"
},
{
"dimension": "0",
"name": "entityId",
"type": "String"
},
{
"dimension": "0",
"name": "entityType",
"type": "String"
},
{
"dimension": "0",
"name": "temperature",
"type": "Integer"
},
{
"dimension": "0",
"name": "chaud",
"type": "Boolean"
}
],
"createdDate": "Wed Feb 22 2017"
},
{
"name": "Out_TemperatureContextUpdate",
"attributes":
[
{
"dimension": 0,
"description": "The certainty that this event happen (value between 0 to 1)",
"name": "Certainty",
"defaultValue": "1",
"type": "Double"
},
{
"dimension": 0,
"description": "No value means it equals the event detection time, other option is to use one of the defined distribution functions with parameters",
"name": "OccurrenceTime",
"type": "Date"
},
{
"dimension": 0,
"name": "ExpirationTime",
"type": "Date"
},
{
"dimension": 0,
"description": "The cost of this event occurrence. Negative if this is an opportunity",
"name": "Cost",
"type": "Double"
},
{
"dimension": 0,
"description": "Used in case the this event occur within an interval",
"name": "Duration",
"defaultValue": "0",
"type": "Double"
},
{
"dimension": "0",
"name": "entityId",
"type": "String"
},
{
"dimension": "0",
"name": "entityType",
"type": "String"
},
{
"dimension": "0",
"name": "temperature",
"type": "Integer"
},
{
"dimension": "0",
"name": "chaud",
"type": "Boolean"
}
],
"createdDate": "Wed Feb 22 2017"
}
],
"name": "TemperatureDemo",
"consumers":
[
{
"events":
[
{
"name": "Out_TemperatureContextUpdate"
}
],
"name": "Consumer_Rest",
"properties":
[
{
"name": "URL",
"value": "http://172.17.0.3:1026/v2/entities"
},
{
"name": "contentType",
"value": "application/json"
},
{
"name": "formatter",
"value": "json_ngsi"
},
{
"name": "delimiter",
"value": ";"
},
{
"name": "tagDataSeparator",
"value": "="
},
{
"name": "dateFormat",
"value": "dd/MM/yyyy-HH:mm:ss"
}
],
"type": "Rest",
"createdDate": "Wed Feb 22 2017"
},
{
"events":
[
{
"name": "TemperatureContextUpdate"
}
],
"name": "Consumer_File",
"properties":
[
{
"name": "filename",
"value": "/home/work/Documents/test.txt"
},
{
"name": "formatter",
"value": "json"
},
{
"name": "delimiter",
"value": ";"
},
{
"name": "tagDataSeparator",
"value": "="
}
],
"type": "File",
"createdDate": "Wed Feb 22 2017"
}
],
"epas":
[
{
"inputEvents":
[
{
"instanceSelectionPolicy": "First",
"alias": "TemperatureContextUpdate",
"filterExpression": "TemperatureContextUpdate.temperature>=20",
"name": "TemperatureContextUpdate",
"consumptionPolicy": "Consume"
}
],
"derivedEvents":
[
{
"name": "Out_TemperatureContextUpdate",
"reportParticipants": false,
"expressions":
{
"Cost": "TemperatureContextUpdate.Cost",
"Certainty": "TemperatureContextUpdate.Certainty",
"OccurrenceTime": "TemperatureContextUpdate.OccurrenceTime",
"Duration": "TemperatureContextUpdate.Duration",
"entityId": "TemperatureContextUpdate.entityId",
"ExpirationTime": "TemperatureContextUpdate.ExpirationTime",
"chaud": "true",
"entityType": "TemperatureContextUpdate.entityType",
"temperature": "TemperatureContextUpdate.temperature"
}
}
],
"evaluationPolicy": "Immediate",
"name": "EPA_Change",
"internalSegmentation":
[
],
"context": "always",
"epaType": "Basic",
"cardinalityPolicy": "Single",
"localPlacement": true,
"createdDate": "Wed Feb 22 2017",
"computedVariables":
[
]
}
],
"optimization":
{
},
"contexts":
{
"temporal":
[
{
"terminators":
[
],
"neverEnding": true,
"atStartup": true,
"name": "always",
"type": "TemporalInterval",
"createdDate": "Wed Feb 22 2017",
"initiators":
[
]
}
],
"segmentation":
[
],
"composite":
[
]
},
"producers":
[
]
}
}
I try to create a file while first update is receive but this file is always empty, btw it is correctly create in my directory and change everytime I change definition. The rest payload is never send like the condition is never triggered.
The payload I send :
{
"subscriptionId": "51c04a21d714fb3b37d7d5a7",
"data":
[ {
"id": "temp1",
"type": "Temperature",
"temperature": {
"type":"integer",
"value": 28,
"metadata":{}
},
"chaud": {
"type":"boolean",
"value": false,
"metadata":{}
},
"Certainty": {
"value": "1",
"type": "Float"
},
"Cost": {
"value": "0",
"type": "Float"
},
"Name": {
"value": "",
"type": "String"
},
"EventSource": {
"value": "",
"type": "String"
},
"Duration": {
"value": "0",
"type": "Float"
}
}
]
}
The log catalina.out :
INFOS: started event message body reader
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader parseVTwoFormat
INFOS: Event: TemperatureContextUpdate
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader readFrom
INFOS: finished event message body reader
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader readFrom
INFOS: EventJSONNgsiMessageReader: read event TemperatureContextUpdate; entityId=temp1; EventId=ba868559-7589-4720-ab75-658b920a3f14; chaud=false; entityType=Temperature; Chronon=null; temperature=28; DetectionTime=1487845415319; Name=; Certainty=1; Cost=0; EventSource=; OccurrenceTime=null; Duration=0; Annotation=; ExpirationTime=null; from broker...
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.resources.EventResource submitNewEvent
INFOS: starting submitNewEvent
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.resources.EventResource submitNewEvent
INFOS: events sent to proton runtime...
So any idea where is my problem ?
Thanks.
was:
Created question in FIWARE Q/A platform on 23-02-2017 at 12:02
{color: red}Please, ANSWER this question AT{color} http://stackoverflow.com/questions/42413994/cep-5-4-3-not-triggering-basic-condition
+Question:+
CEP 5.4.3, not triggering basic condition
+Description:+
using CEP i'm trying to make a basic example of communication between Proton and Orion.
I simply want Proton to receive a notification of temperature from Orion and send back a payload changing one boolean attribute if the temperature value is superior or equal to 20.
Here is the definition i'm using.
{
"epn":
{
"events":
[
{
"name": "TemperatureContextUpdate",
"attributes":
[
{
"dimension": 0,
"description": "The certainty that this event happen (value between 0 to 1)",
"name": "Certainty",
"defaultValue": "1",
"type": "Double"
},
{
"dimension": 0,
"description": "No value means it equals the event detection time, other option is to use one of the defined distribution functions with parameters",
"name": "OccurrenceTime",
"type": "Date"
},
{
"dimension": 0,
"name": "ExpirationTime",
"type": "Date"
},
{
"dimension": 0,
"description": "The cost of this event occurrence. Negative if this is an opportunity",
"name": "Cost",
"type": "Double"
},
{
"dimension": 0,
"description": "Used in case the this event occur within an interval",
"name": "Duration",
"defaultValue": "0",
"type": "Double"
},
{
"dimension": "0",
"name": "entityId",
"type": "String"
},
{
"dimension": "0",
"name": "entityType",
"type": "String"
},
{
"dimension": "0",
"name": "temperature",
"type": "Integer"
},
{
"dimension": "0",
"name": "chaud",
"type": "Boolean"
}
],
"createdDate": "Wed Feb 22 2017"
},
{
"name": "Out_TemperatureContextUpdate",
"attributes":
[
{
"dimension": 0,
"description": "The certainty that this event happen (value between 0 to 1)",
"name": "Certainty",
"defaultValue": "1",
"type": "Double"
},
{
"dimension": 0,
"description": "No value means it equals the event detection time, other option is to use one of the defined distribution functions with parameters",
"name": "OccurrenceTime",
"type": "Date"
},
{
"dimension": 0,
"name": "ExpirationTime",
"type": "Date"
},
{
"dimension": 0,
"description": "The cost of this event occurrence. Negative if this is an opportunity",
"name": "Cost",
"type": "Double"
},
{
"dimension": 0,
"description": "Used in case the this event occur within an interval",
"name": "Duration",
"defaultValue": "0",
"type": "Double"
},
{
"dimension": "0",
"name": "entityId",
"type": "String"
},
{
"dimension": "0",
"name": "entityType",
"type": "String"
},
{
"dimension": "0",
"name": "temperature",
"type": "Integer"
},
{
"dimension": "0",
"name": "chaud",
"type": "Boolean"
}
],
"createdDate": "Wed Feb 22 2017"
}
],
"name": "TemperatureDemo",
"consumers":
[
{
"events":
[
{
"name": "Out_TemperatureContextUpdate"
}
],
"name": "Consumer_Rest",
"properties":
[
{
"name": "URL",
"value": "http://172.17.0.3:1026/v2/entities"
},
{
"name": "contentType",
"value": "application/json"
},
{
"name": "formatter",
"value": "json_ngsi"
},
{
"name": "delimiter",
"value": ";"
},
{
"name": "tagDataSeparator",
"value": "="
},
{
"name": "dateFormat",
"value": "dd/MM/yyyy-HH:mm:ss"
}
],
"type": "Rest",
"createdDate": "Wed Feb 22 2017"
},
{
"events":
[
{
"name": "TemperatureContextUpdate"
}
],
"name": "Consumer_File",
"properties":
[
{
"name": "filename",
"value": "/home/work/Documents/test.txt"
},
{
"name": "formatter",
"value": "json"
},
{
"name": "delimiter",
"value": ";"
},
{
"name": "tagDataSeparator",
"value": "="
}
],
"type": "File",
"createdDate": "Wed Feb 22 2017"
}
],
"epas":
[
{
"inputEvents":
[
{
"instanceSelectionPolicy": "First",
"alias": "TemperatureContextUpdate",
"filterExpression": "TemperatureContextUpdate.temperature>=20",
"name": "TemperatureContextUpdate",
"consumptionPolicy": "Consume"
}
],
"derivedEvents":
[
{
"name": "Out_TemperatureContextUpdate",
"reportParticipants": false,
"expressions":
{
"Cost": "TemperatureContextUpdate.Cost",
"Certainty": "TemperatureContextUpdate.Certainty",
"OccurrenceTime": "TemperatureContextUpdate.OccurrenceTime",
"Duration": "TemperatureContextUpdate.Duration",
"entityId": "TemperatureContextUpdate.entityId",
"ExpirationTime": "TemperatureContextUpdate.ExpirationTime",
"chaud": "true",
"entityType": "TemperatureContextUpdate.entityType",
"temperature": "TemperatureContextUpdate.temperature"
}
}
],
"evaluationPolicy": "Immediate",
"name": "EPA_Change",
"internalSegmentation":
[
],
"context": "always",
"epaType": "Basic",
"cardinalityPolicy": "Single",
"localPlacement": true,
"createdDate": "Wed Feb 22 2017",
"computedVariables":
[
]
}
],
"optimization":
{
},
"contexts":
{
"temporal":
[
{
"terminators":
[
],
"neverEnding": true,
"atStartup": true,
"name": "always",
"type": "TemporalInterval",
"createdDate": "Wed Feb 22 2017",
"initiators":
[
]
}
],
"segmentation":
[
],
"composite":
[
]
},
"producers":
[
]
}
}
I try to create a file while first update is receive but this file is always empty, btw it is correctly create in my directory and change everytime I change definition. The rest payload is never send like the condition is never triggered.
The payload I send :
{
"subscriptionId": "51c04a21d714fb3b37d7d5a7",
"data":
[ {
"id": "temp1",
"type": "Temperature",
"temperature": {
"type":"integer",
"value": 28,
"metadata":{}
},
"chaud": {
"type":"boolean",
"value": false,
"metadata":{}
},
"Certainty": {
"value": "1",
"type": "Float"
},
"Cost": {
"value": "0",
"type": "Float"
},
"Name": {
"value": "",
"type": "String"
},
"EventSource": {
"value": "",
"type": "String"
},
"Duration": {
"value": "0",
"type": "Float"
}
}
]
}
The log catalina.out :
INFOS: started event message body reader
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader parseVTwoFormat
INFOS: Event: TemperatureContextUpdate
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader readFrom
INFOS: finished event message body reader
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader readFrom
INFOS: EventJSONNgsiMessageReader: read event TemperatureContextUpdate; entityId=temp1; EventId=ba868559-7589-4720-ab75-658b920a3f14; chaud=false; entityType=Temperature; Chronon=null; temperature=28; DetectionTime=1487845415319; Name=; Certainty=1; Cost=0; EventSource=; OccurrenceTime=null; Duration=0; Annotation=; ExpirationTime=null; from broker...
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.resources.EventResource submitNewEvent
INFOS: starting submitNewEvent
févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.resources.EventResource submitNewEvent
INFOS: events sent to proton runtime...
So any idea where is my problem ?
Thanks.
HD-Enabler: CEP
> [fiware-stackoverflow] CEP 5.4.3, not triggering basic condition
> ----------------------------------------------------------------
>
> Key: HELP-8303
> URL: https://jira.fiware.org/browse/HELP-8303
> Project: Help-Desk
> Issue Type: Monitor
> Components: FIWARE-TECH-HELP
> Reporter: Backlog Manager
> Labels: cep, fiware, fiware-cep
>
> Created question in FIWARE Q/A platform on 23-02-2017 at 12:02
> {color: red}Please, ANSWER this question AT{color} http://stackoverflow.com/questions/42413994/cep-5-4-3-not-triggering-basic-condition
> +Question:+
> CEP 5.4.3, not triggering basic condition
> +Description:+
> using CEP i'm trying to make a basic example of communication between Proton and Orion.
> I simply want Proton to receive a notification of temperature from Orion and send back a payload changing one boolean attribute if the temperature value is superior or equal to 20.
> Here is the definition i'm using.
> {
> "epn":
> {
> "events":
> [
> {
> "name": "TemperatureContextUpdate",
> "attributes":
> [
> {
> "dimension": 0,
> "description": "The certainty that this event happen (value between 0 to 1)",
> "name": "Certainty",
> "defaultValue": "1",
> "type": "Double"
> },
> {
> "dimension": 0,
> "description": "No value means it equals the event detection time, other option is to use one of the defined distribution functions with parameters",
> "name": "OccurrenceTime",
> "type": "Date"
> },
> {
> "dimension": 0,
> "name": "ExpirationTime",
> "type": "Date"
> },
> {
> "dimension": 0,
> "description": "The cost of this event occurrence. Negative if this is an opportunity",
> "name": "Cost",
> "type": "Double"
> },
> {
> "dimension": 0,
> "description": "Used in case the this event occur within an interval",
> "name": "Duration",
> "defaultValue": "0",
> "type": "Double"
> },
> {
> "dimension": "0",
> "name": "entityId",
> "type": "String"
> },
> {
> "dimension": "0",
> "name": "entityType",
> "type": "String"
> },
> {
> "dimension": "0",
> "name": "temperature",
> "type": "Integer"
> },
> {
> "dimension": "0",
> "name": "chaud",
> "type": "Boolean"
> }
> ],
> "createdDate": "Wed Feb 22 2017"
> },
> {
> "name": "Out_TemperatureContextUpdate",
> "attributes":
> [
> {
> "dimension": 0,
> "description": "The certainty that this event happen (value between 0 to 1)",
> "name": "Certainty",
> "defaultValue": "1",
> "type": "Double"
> },
> {
> "dimension": 0,
> "description": "No value means it equals the event detection time, other option is to use one of the defined distribution functions with parameters",
> "name": "OccurrenceTime",
> "type": "Date"
> },
> {
> "dimension": 0,
> "name": "ExpirationTime",
> "type": "Date"
> },
> {
> "dimension": 0,
> "description": "The cost of this event occurrence. Negative if this is an opportunity",
> "name": "Cost",
> "type": "Double"
> },
> {
> "dimension": 0,
> "description": "Used in case the this event occur within an interval",
> "name": "Duration",
> "defaultValue": "0",
> "type": "Double"
> },
> {
> "dimension": "0",
> "name": "entityId",
> "type": "String"
> },
> {
> "dimension": "0",
> "name": "entityType",
> "type": "String"
> },
> {
> "dimension": "0",
> "name": "temperature",
> "type": "Integer"
> },
> {
> "dimension": "0",
> "name": "chaud",
> "type": "Boolean"
> }
> ],
> "createdDate": "Wed Feb 22 2017"
> }
> ],
> "name": "TemperatureDemo",
> "consumers":
> [
> {
> "events":
> [
> {
> "name": "Out_TemperatureContextUpdate"
> }
> ],
> "name": "Consumer_Rest",
> "properties":
> [
> {
> "name": "URL",
> "value": "http://172.17.0.3:1026/v2/entities"
> },
> {
> "name": "contentType",
> "value": "application/json"
> },
> {
> "name": "formatter",
> "value": "json_ngsi"
> },
> {
> "name": "delimiter",
> "value": ";"
> },
> {
> "name": "tagDataSeparator",
> "value": "="
> },
> {
> "name": "dateFormat",
> "value": "dd/MM/yyyy-HH:mm:ss"
> }
> ],
> "type": "Rest",
> "createdDate": "Wed Feb 22 2017"
> },
> {
> "events":
> [
> {
> "name": "TemperatureContextUpdate"
> }
> ],
> "name": "Consumer_File",
> "properties":
> [
> {
> "name": "filename",
> "value": "/home/work/Documents/test.txt"
> },
> {
> "name": "formatter",
> "value": "json"
> },
> {
> "name": "delimiter",
> "value": ";"
> },
> {
> "name": "tagDataSeparator",
> "value": "="
> }
> ],
> "type": "File",
> "createdDate": "Wed Feb 22 2017"
> }
> ],
> "epas":
> [
> {
> "inputEvents":
> [
> {
> "instanceSelectionPolicy": "First",
> "alias": "TemperatureContextUpdate",
> "filterExpression": "TemperatureContextUpdate.temperature>=20",
> "name": "TemperatureContextUpdate",
> "consumptionPolicy": "Consume"
> }
> ],
> "derivedEvents":
> [
> {
> "name": "Out_TemperatureContextUpdate",
> "reportParticipants": false,
> "expressions":
> {
> "Cost": "TemperatureContextUpdate.Cost",
> "Certainty": "TemperatureContextUpdate.Certainty",
> "OccurrenceTime": "TemperatureContextUpdate.OccurrenceTime",
> "Duration": "TemperatureContextUpdate.Duration",
> "entityId": "TemperatureContextUpdate.entityId",
> "ExpirationTime": "TemperatureContextUpdate.ExpirationTime",
> "chaud": "true",
> "entityType": "TemperatureContextUpdate.entityType",
> "temperature": "TemperatureContextUpdate.temperature"
> }
> }
> ],
> "evaluationPolicy": "Immediate",
> "name": "EPA_Change",
> "internalSegmentation":
> [
> ],
> "context": "always",
> "epaType": "Basic",
> "cardinalityPolicy": "Single",
> "localPlacement": true,
> "createdDate": "Wed Feb 22 2017",
> "computedVariables":
> [
> ]
> }
> ],
> "optimization":
> {
> },
> "contexts":
> {
> "temporal":
> [
> {
> "terminators":
> [
> ],
> "neverEnding": true,
> "atStartup": true,
> "name": "always",
> "type": "TemporalInterval",
> "createdDate": "Wed Feb 22 2017",
> "initiators":
> [
> ]
> }
> ],
> "segmentation":
> [
> ],
> "composite":
> [
> ]
> },
> "producers":
> [
> ]
> }
> }
> I try to create a file while first update is receive but this file is always empty, btw it is correctly create in my directory and change everytime I change definition. The rest payload is never send like the condition is never triggered.
> The payload I send :
> {
> "subscriptionId": "51c04a21d714fb3b37d7d5a7",
> "data":
> [ {
> "id": "temp1",
> "type": "Temperature",
> "temperature": {
> "type":"integer",
> "value": 28,
> "metadata":{}
> },
> "chaud": {
> "type":"boolean",
> "value": false,
> "metadata":{}
> },
> "Certainty": {
> "value": "1",
> "type": "Float"
> },
> "Cost": {
> "value": "0",
> "type": "Float"
> },
> "Name": {
> "value": "",
> "type": "String"
> },
> "EventSource": {
> "value": "",
> "type": "String"
> },
> "Duration": {
> "value": "0",
> "type": "Float"
> }
> }
> ]
> }
> The log catalina.out :
> INFOS: started event message body reader
> févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader parseVTwoFormat
> INFOS: Event: TemperatureContextUpdate
> févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader readFrom
> INFOS: finished event message body reader
> févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.providers.EventJSONNgsiMessageReader readFrom
> INFOS: EventJSONNgsiMessageReader: read event TemperatureContextUpdate; entityId=temp1; EventId=ba868559-7589-4720-ab75-658b920a3f14; chaud=false; entityType=Temperature; Chronon=null; temperature=28; DetectionTime=1487845415319; Name=; Certainty=1; Cost=0; EventSource=; OccurrenceTime=null; Duration=0; Annotation=; ExpirationTime=null; from broker...
> févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.resources.EventResource submitNewEvent
> INFOS: starting submitNewEvent
> févr. 23, 2017 11:23:35 AM com.ibm.hrl.proton.webapp.resources.EventResource submitNewEvent
> INFOS: events sent to proton runtime...
> So any idea where is my problem ?
> Thanks.
--
This message was sent by Atlassian JIRA
(v6.4.1#64016)
You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy Cookies policy