Closed alberto072710 closed 1 year ago
hi @alberto072710! Answering your questions:
it('Should execute a command with multiple arguments', (done) => {
const apiKey = mockConfig.defaultKey;
const device = mockDevice;
const attribute = {
name: 'Accelerate',
value: '[10,10]'
};
opcuaBinding.executeCommand(apiKey, device, attribute);
done();
});
in your case, value: [DATO1, DATO2]
Hi, Thank you very much for your quick response. I have tried what you told me but I have not been successful. I run the command:
But I can't get the sum in the info attribute and the status attribute stays pending
If I run this command from prosys if I get the correct output.
The logs are as follows:
2023-01-31 13:35:25 time=2023-01-31T12:35:25.736Z | lvl=DEBUG | corr=bca84fd4-a163-11ed-bd94-0242ac140003; cbfwd=1 | trans=32ac83b6-1f8c-45d2-ba55-319dee4f7e16 | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Request for path [//op/update] from [iotagent-opcua:4041] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.736Z | lvl=DEBUG | corr=bca84fd4-a163-11ed-bd94-0242ac140003; cbfwd=1 | trans=32ac83b6-1f8c-45d2-ba55-319dee4f7e16 | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Body:
2023-01-31 13:35:25
2023-01-31 13:35:25 {
2023-01-31 13:35:25 "entities": [
2023-01-31 13:35:25 {
2023-01-31 13:35:25 "id": "Habitacion:001",
2023-01-31 13:35:25 "type": "Habitacion",
2023-01-31 13:35:25 "suma": {
2023-01-31 13:35:25 "type": "command",
2023-01-31 13:35:25 "value": [
2023-01-31 13:35:25 3,
2023-01-31 13:35:25 4
2023-01-31 13:35:25 ],
2023-01-31 13:35:25 "metadata": {}
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25 ],
2023-01-31 13:35:25 "actionType": "update"
2023-01-31 13:35:25 }
2023-01-31 13:35:25
2023-01-31 13:35:25 | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.736Z | lvl=DEBUG | corr=bca84fd4-a163-11ed-bd94-0242ac140003; cbfwd=1 | trans=32ac83b6-1f8c-45d2-ba55-319dee4f7e16 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Handling v2 update from [iotagent-opcua:4041] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.737Z | lvl=DEBUG | corr=bca84fd4-a163-11ed-bd94-0242ac140003; cbfwd=1 | trans=32ac83b6-1f8c-45d2-ba55-319dee4f7e16 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg={
2023-01-31 13:35:25 "entities": [
2023-01-31 13:35:25 {
2023-01-31 13:35:25 "id": "Habitacion:001",
2023-01-31 13:35:25 "type": "Habitacion",
2023-01-31 13:35:25 "suma": {
2023-01-31 13:35:25 "type": "command",
2023-01-31 13:35:25 "value": [
2023-01-31 13:35:25 3,
2023-01-31 13:35:25 4
2023-01-31 13:35:25 ],
2023-01-31 13:35:25 "metadata": {}
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25 ],
2023-01-31 13:35:25 "actionType": "update"
2023-01-31 13:35:25 } | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.737Z | lvl=DEBUG | corr=bca84fd4-a163-11ed-bd94-0242ac140003; cbfwd=1 | trans=32ac83b6-1f8c-45d2-ba55-319dee4f7e16 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.738Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","type","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.740Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["service","subservice","type","apikey"]] not found: [{"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"}] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.740Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","apikey":"iot"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.741Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Device group data found: {"_id":"63d905c02068596abb6aeed0","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.741Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData before merge with conf: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} defaults: [null,null,[],[],[],[],[]] fields: ["lazy","internalAttributes","active","staticAttributes","commands","subscriptions"] configuration {"_id":"63d905c02068596abb6aeed0","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.742Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData after merge with conf: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.742Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling update [{"type":"command","value":[3,4],"metadata":{},"name":"suma"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.742Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.742Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling command [{"type":"command","value":[3,4],"metadata":{},"name":"suma"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.742Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.743Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey iot attributes [{"name":"suma_status","type":"commandStatus","value":"PENDING"}] deviceInformation {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.743Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.746Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.746Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.746Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending update execution to device [Habitacion:001] with apikey [iot] and attribute [{ type: 'command', value: [Array], metadata: {}, name: 'suma' }] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.746Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.746Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending command execution to device [Habitacion:001] with apikey [iot] and payload [{"suma":[3,4]}] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=WARN | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Unable to determine the type of the command input, considering it as a single value | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.747Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Method to call =[{"objectId":"ns=4;i=1","methodId":"ns=4;i=9","inputArguments":[{"dataType":4,"type":"DATO1","value":[3,4]},{"dataType":4,"type":"DATO2"}]}] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.748Z | lvl=ERROR | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=COMMAND-003: Command execution could not be handled, [Error: expecting a number NaN
2023-01-31 13:35:25 at coerceVariantType (/opt/iotagent-opcua/node_modules/node-opcua-variant/dist/variant.js:629:23)
2023-01-31 13:35:25 at constructHook (/opt/iotagent-opcua/node_modules/node-opcua-variant/dist/variant.js:374:25)
2023-01-31 13:35:25 at new Variant (/opt/iotagent-opcua/node_modules/node-opcua-variant/dist/variant.js:59:26)
2023-01-31 13:35:25 at BasicTypeSchema._coerceVariant [as coerce] (/opt/iotagent-opcua/node_modules/node-opcua-variant/dist/variant.js:46:66)
2023-01-31 13:35:25 at initialize_field (/opt/iotagent-opcua/node_modules/node-opcua-factory/dist/schema_helpers.js:65:20)
2023-01-31 13:35:25 at initialize_field_array (/opt/iotagent-opcua/node_modules/node-opcua-factory/dist/schema_helpers.js:94:17)
2023-01-31 13:35:25 at new CallMethodRequest (/opt/iotagent-opcua/node_modules/node-opcua-types/dist/_generated_opcua_types.js:4171:79)
2023-01-31 13:35:25 at /opt/iotagent-opcua/node_modules/node-opcua-types/dist/_generated_opcua_types.js:4319:67
2023-01-31 13:35:25 at Array.map (<anonymous>)
2023-01-31 13:35:25 at new CallRequest (/opt/iotagent-opcua/node_modules/node-opcua-types/dist/_generated_opcua_types.js:4319:56)
2023-01-31 13:35:25 at ClientSessionImpl.call (/opt/iotagent-opcua/node_modules/node-opcua-client/dist/private/client_session_impl.js:920:25)
2023-01-31 13:35:25 at /opt/iotagent-opcua/node_modules/thenify/index.js:72:10
2023-01-31 13:35:25 at new Promise (<anonymous>)
2023-01-31 13:35:25 at ClientSessionImpl.call (/opt/iotagent-opcua/node_modules/thenify/index.js:70:12)
2023-01-31 13:35:25 at AsyncFunction.executeCommand (/opt/iotagent-opcua/lib/bindings/OPCUABinding.js:377:47)
2023-01-31 13:35:25 at /opt/iotagent-opcua/node_modules/async/dist/async.js:196:27] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.752Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.752Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.752Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.752Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=expressionPlugin entity {"suma_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.752Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=multiEntityPlugin entity {"suma_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.753Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.753Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.753Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using the following NGSI v2 request:
2023-01-31 13:35:25
2023-01-31 13:35:25 {
2023-01-31 13:35:25 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:35:25 "method": "PATCH",
2023-01-31 13:35:25 "headers": {
2023-01-31 13:35:25 "fiware-service": "opcua_car",
2023-01-31 13:35:25 "fiware-servicepath": "/demo"
2023-01-31 13:35:25 },
2023-01-31 13:35:25 "json": {
2023-01-31 13:35:25 "suma_status": {
2023-01-31 13:35:25 "type": "commandStatus",
2023-01-31 13:35:25 "value": "PENDING",
2023-01-31 13:35:25 "metadata": {
2023-01-31 13:35:25 "TimeInstant": {
2023-01-31 13:35:25 "type": "DateTime",
2023-01-31 13:35:25 "value": "2023-01-31T12:35:25.753Z"
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25 },
2023-01-31 13:35:25 "TimeInstant": {
2023-01-31 13:35:25 "type": "DateTime",
2023-01-31 13:35:25 "value": "2023-01-31T12:35:25.753Z"
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25
2023-01-31 13:35:25 | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.753Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Options: {
2023-01-31 13:35:25 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:35:25 "method": "PATCH",
2023-01-31 13:35:25 "headers": {
2023-01-31 13:35:25 "fiware-service": "opcua_car",
2023-01-31 13:35:25 "fiware-servicepath": "/demo"
2023-01-31 13:35:25 },
2023-01-31 13:35:25 "json": {
2023-01-31 13:35:25 "suma_status": {
2023-01-31 13:35:25 "type": "commandStatus",
2023-01-31 13:35:25 "value": "PENDING",
2023-01-31 13:35:25 "metadata": {
2023-01-31 13:35:25 "TimeInstant": {
2023-01-31 13:35:25 "type": "DateTime",
2023-01-31 13:35:25 "value": "2023-01-31T12:35:25.753Z"
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25 },
2023-01-31 13:35:25 "TimeInstant": {
2023-01-31 13:35:25 "type": "DateTime",
2023-01-31 13:35:25 "value": "2023-01-31T12:35:25.753Z"
2023-01-31 13:35:25 }
2023-01-31 13:35:25 }
2023-01-31 13:35:25 } | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.757Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Response "" | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.757Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Received the following response from the CB: Value updated successfully
2023-01-31 13:35:25 | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.757Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update action from [iotagent-opcua:4041] handled successfully. | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.758Z | lvl=DEBUG | corr=bca84fd4-a163-11ed-bd94-0242ac140003; cbfwd=1 | trans=32ac83b6-1f8c-45d2-ba55-319dee4f7e16 | op=IoTAgentNGSI.DomainControl | from=n/a | srv=opcua_car | subsrv=/demo | msg=response-time: 21 | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.783Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=ns=4;i=9 read variable type -> { /* DataValue */
2023-01-31 13:35:25 value: Variant(Scalar<Null>, value: <null>)
2023-01-31 13:35:25 statusCode: BadAttributeIdInvalid (0x80350000)
2023-01-31 13:35:25 serverTimestamp: null
2023-01-31 13:35:25 sourceTimestamp: null
2023-01-31 13:35:25 } | comp=IoTAgent
2023-01-31 13:35:25 time=2023-01-31T12:35:25.784Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update to execute =[{"nodeId":"ns=4;i=9","attributeId":13,"indexRange":null,"value":{"value":{"dataType":0,"value":[3,4]}}}] | comp=IoTAgent
2023-01-31 13:35:26 time=2023-01-31T12:35:26.859Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=subscription keepalive | comp=IoTAgent
2023-01-31 13:35:36 time=2023-01-31T12:35:36.886Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=subscription keepalive | comp=IoTAgent
I have also tried running a command with only one input attribute and one output attribute. The execution is correct but I do not get the output attribute.
Logs:
2023-01-31 13:43:08 time=2023-01-31T12:43:08.687Z | lvl=DEBUG | corr=d09913ce-a164-11ed-bd94-0242ac140003; cbfwd=1 | trans=5fe91846-59f0-42e5-8710-73721fa7a7cb | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Request for path [//op/update] from [iotagent-opcua:4041] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.688Z | lvl=DEBUG | corr=d09913ce-a164-11ed-bd94-0242ac140003; cbfwd=1 | trans=5fe91846-59f0-42e5-8710-73721fa7a7cb | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Body:
2023-01-31 13:43:08
2023-01-31 13:43:08 {
2023-01-31 13:43:08 "entities": [
2023-01-31 13:43:08 {
2023-01-31 13:43:08 "id": "Habitacion:001",
2023-01-31 13:43:08 "type": "Habitacion",
2023-01-31 13:43:08 "ajusteTemperatura": {
2023-01-31 13:43:08 "type": "command",
2023-01-31 13:43:08 "value": [
2023-01-31 13:43:08 25
2023-01-31 13:43:08 ],
2023-01-31 13:43:08 "metadata": {}
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 ],
2023-01-31 13:43:08 "actionType": "update"
2023-01-31 13:43:08 }
2023-01-31 13:43:08
2023-01-31 13:43:08 | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.688Z | lvl=DEBUG | corr=d09913ce-a164-11ed-bd94-0242ac140003; cbfwd=1 | trans=5fe91846-59f0-42e5-8710-73721fa7a7cb | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Handling v2 update from [iotagent-opcua:4041] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.688Z | lvl=DEBUG | corr=d09913ce-a164-11ed-bd94-0242ac140003; cbfwd=1 | trans=5fe91846-59f0-42e5-8710-73721fa7a7cb | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg={
2023-01-31 13:43:08 "entities": [
2023-01-31 13:43:08 {
2023-01-31 13:43:08 "id": "Habitacion:001",
2023-01-31 13:43:08 "type": "Habitacion",
2023-01-31 13:43:08 "ajusteTemperatura": {
2023-01-31 13:43:08 "type": "command",
2023-01-31 13:43:08 "value": [
2023-01-31 13:43:08 25
2023-01-31 13:43:08 ],
2023-01-31 13:43:08 "metadata": {}
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 ],
2023-01-31 13:43:08 "actionType": "update"
2023-01-31 13:43:08 } | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.688Z | lvl=DEBUG | corr=d09913ce-a164-11ed-bd94-0242ac140003; cbfwd=1 | trans=5fe91846-59f0-42e5-8710-73721fa7a7cb | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.690Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","type","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.692Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["service","subservice","type","apikey"]] not found: [{"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.692Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","apikey":"iot"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.693Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Device group data found: {"_id":"63d905c02068596abb6aeed0","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.693Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData before merge with conf: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} defaults: [null,null,[],[],[],[],[]] fields: ["lazy","internalAttributes","active","staticAttributes","commands","subscriptions"] configuration {"_id":"63d905c02068596abb6aeed0","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData after merge with conf: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling update [{"type":"command","value":[25],"metadata":{},"name":"ajusteTemperatura"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling command [{"type":"command","value":[25],"metadata":{},"name":"ajusteTemperatura"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey iot attributes [{"name":"ajusteTemperatura_status","type":"commandStatus","value":"PENDING"}] deviceInformation {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.694Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.697Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.697Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.697Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending update execution to device [Habitacion:001] with apikey [iot] and attribute [{
2023-01-31 13:43:08 type: 'command',
2023-01-31 13:43:08 value: [Array],
2023-01-31 13:43:08 metadata: {},
2023-01-31 13:43:08 name: 'ajusteTemperatura'
2023-01-31 13:43:08 }] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.697Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.697Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.698Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.698Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.698Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending command execution to device [Habitacion:001] with apikey [iot] and payload [{"ajusteTemperatura":[25]}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.698Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.698Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Command input not an array. Considering it as a single value | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Method to call =[{"objectId":"ns=4;i=1","methodId":"ns=4;i=12","inputArguments":[{"dataType":4,"type":"TEMPERATURA","value":[25],"arrayType":0}]}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=expressionPlugin entity {"ajusteTemperatura_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.699Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=multiEntityPlugin entity {"ajusteTemperatura_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.700Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.700Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.700Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using the following NGSI v2 request:
2023-01-31 13:43:08
2023-01-31 13:43:08 {
2023-01-31 13:43:08 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:43:08 "method": "PATCH",
2023-01-31 13:43:08 "headers": {
2023-01-31 13:43:08 "fiware-service": "opcua_car",
2023-01-31 13:43:08 "fiware-servicepath": "/demo"
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "json": {
2023-01-31 13:43:08 "ajusteTemperatura_status": {
2023-01-31 13:43:08 "type": "commandStatus",
2023-01-31 13:43:08 "value": "PENDING",
2023-01-31 13:43:08 "metadata": {
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.700Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.700Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08
2023-01-31 13:43:08 | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.700Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Options: {
2023-01-31 13:43:08 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:43:08 "method": "PATCH",
2023-01-31 13:43:08 "headers": {
2023-01-31 13:43:08 "fiware-service": "opcua_car",
2023-01-31 13:43:08 "fiware-servicepath": "/demo"
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "json": {
2023-01-31 13:43:08 "ajusteTemperatura_status": {
2023-01-31 13:43:08 "type": "commandStatus",
2023-01-31 13:43:08 "value": "PENDING",
2023-01-31 13:43:08 "metadata": {
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.700Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.700Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 } | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.704Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Response "" | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.704Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Received the following response from the CB: Value updated successfully
2023-01-31 13:43:08 | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.704Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update action from [iotagent-opcua:4041] handled successfully. | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.705Z | lvl=DEBUG | corr=d09913ce-a164-11ed-bd94-0242ac140003; cbfwd=1 | trans=5fe91846-59f0-42e5-8710-73721fa7a7cb | op=IoTAgentNGSI.DomainControl | from=n/a | srv=opcua_car | subsrv=/demo | msg=response-time: 18 | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.742Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=subscription keepalive | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.770Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=ns=4;i=12 read variable type -> { /* DataValue */
2023-01-31 13:43:08 value: Variant(Scalar<Null>, value: <null>)
2023-01-31 13:43:08 statusCode: BadAttributeIdInvalid (0x80350000)
2023-01-31 13:43:08 serverTimestamp: null
2023-01-31 13:43:08 sourceTimestamp: null
2023-01-31 13:43:08 } | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.770Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update to execute =[{"nodeId":"ns=4;i=12","attributeId":13,"indexRange":null,"value":{"value":{"dataType":0,"value":[25]}}}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.891Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["resource","apikey"] with queryObj {"resource":"Habitacion","apikey":"iot"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.893Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["resource","apikey"]] not found: [{"resource":"Habitacion","apikey":"iot"}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.893Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey iot attributes [{"name":"ajusteTemperatura_status","type":"commandStatus","value":"OK"},{"name":"ajusteTemperatura_info","type":"commandResult"}] deviceInformation {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.894Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.895Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.895Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.895Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=n/a | subsrv=n/a | msg=typeInformation {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.896Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=n/a | subsrv=n/a | msg=expressionPlugin entity {"ajusteTemperatura_status":{"type":"commandStatus","value":"OK"},"ajusteTemperatura_info":{"type":"commandResult"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.896Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=n/a | subsrv=n/a | msg=multiEntityPlugin entity {"ajusteTemperatura_status":{"type":"commandStatus","value":"OK"},"ajusteTemperatura_info":{"type":"commandResult"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.896Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=typeInformation: {"_id":"63d905c020685961af6aeed9","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.896Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.896Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Using the following NGSI v2 request:
2023-01-31 13:43:08
2023-01-31 13:43:08 {
2023-01-31 13:43:08 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:43:08 "method": "PATCH",
2023-01-31 13:43:08 "headers": {
2023-01-31 13:43:08 "fiware-service": "opcua_car",
2023-01-31 13:43:08 "fiware-servicepath": "/demo"
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "json": {
2023-01-31 13:43:08 "ajusteTemperatura_status": {
2023-01-31 13:43:08 "type": "commandStatus",
2023-01-31 13:43:08 "value": "OK",
2023-01-31 13:43:08 "metadata": {
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.896Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "ajusteTemperatura_info": {
2023-01-31 13:43:08 "type": "commandResult",
2023-01-31 13:43:08 "metadata": {
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.896Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.896Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08
2023-01-31 13:43:08 | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.896Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=n/a | subsrv=n/a | msg=Options: {
2023-01-31 13:43:08 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:43:08 "method": "PATCH",
2023-01-31 13:43:08 "headers": {
2023-01-31 13:43:08 "fiware-service": "opcua_car",
2023-01-31 13:43:08 "fiware-servicepath": "/demo"
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "json": {
2023-01-31 13:43:08 "ajusteTemperatura_status": {
2023-01-31 13:43:08 "type": "commandStatus",
2023-01-31 13:43:08 "value": "OK",
2023-01-31 13:43:08 "metadata": {
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.896Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "ajusteTemperatura_info": {
2023-01-31 13:43:08 "type": "commandResult",
2023-01-31 13:43:08 "metadata": {
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.896Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 },
2023-01-31 13:43:08 "TimeInstant": {
2023-01-31 13:43:08 "type": "DateTime",
2023-01-31 13:43:08 "value": "2023-01-31T12:43:08.896Z"
2023-01-31 13:43:08 }
2023-01-31 13:43:08 }
2023-01-31 13:43:08 } | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.900Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=n/a | subsrv=n/a | msg=Response "" | comp=IoTAgent
2023-01-31 13:43:08 time=2023-01-31T12:43:08.900Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Received the following response from the CB: Value updated successfully
2023-01-31 13:43:08 | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.760Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=n/a | subsrv=n/a | msg=ns=4;i=3 value changed -> 25 | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.760Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommonBindings | from=n/a | srv=n/a | subsrv=n/a | msg=stringMessage: [25] parsedMessage: [25] | comp=IoTAgent | service=opcua_car | subservice=/demo
2023-01-31 13:43:09 time=2023-01-31T12:43:09.761Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommonBindings | from=n/a | srv=n/a | subsrv=n/a | msg=parserMessage array: [ 25 ] | comp=IoTAgent | service=opcua_car | subservice=/demo
2023-01-31 13:43:09 time=2023-01-31T12:43:09.761Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with filter [{"id":"Habitacion:001"}]. | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.768Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommonBindings | from=n/a | srv=n/a | subsrv=n/a | msg=Processing single measure for device [Habitacion:001] with apiKey [iot] | comp=IoTAgent | service=opcua_car | subservice=/demo
2023-01-31 13:43:09 time=2023-01-31T12:43:09.768Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommonBindings | from=n/a | srv=n/a | subsrv=n/a | msg=values updates [[{"name":"temperature","type":"Float","value":25}]] | comp=IoTAgent | service=opcua_car | subservice=/demo
2023-01-31 13:43:09 time=2023-01-31T12:43:09.769Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey attributes [{"name":"temperature","type":"Float","value":25}] deviceInformation {"lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"_id":"63d905c020685961af6aeed9","creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.769Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.772Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.772Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.772Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=n/a | subsrv=n/a | msg=typeInformation {"lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"_id":"63d905c020685961af6aeed9","creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.773Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=n/a | subsrv=n/a | msg=expressionPlugin entity {"temperature":{"type":"Float","value":25,"object_id":"temperature"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.773Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=n/a | subsrv=n/a | msg=multiEntityPlugin entity {"temperature":{"type":"Float","value":25,"object_id":"temperature"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.774Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=typeInformation: {"lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"_id":"63d905c020685961af6aeed9","creationDate":"2023-01-31T12:12:48.249Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63d905c0037c611c70402b7b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.774Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.774Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Using the following NGSI v2 request:
2023-01-31 13:43:09
2023-01-31 13:43:09 {
2023-01-31 13:43:09 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:43:09 "method": "PATCH",
2023-01-31 13:43:09 "headers": {
2023-01-31 13:43:09 "fiware-service": "opcua_car",
2023-01-31 13:43:09 "fiware-servicepath": "/demo"
2023-01-31 13:43:09 },
2023-01-31 13:43:09 "json": {
2023-01-31 13:43:09 "temperature": {
2023-01-31 13:43:09 "type": "Float",
2023-01-31 13:43:09 "value": 25,
2023-01-31 13:43:09 "metadata": {
2023-01-31 13:43:09 "TimeInstant": {
2023-01-31 13:43:09 "type": "DateTime",
2023-01-31 13:43:09 "value": "2023-01-31T12:43:09.774Z"
2023-01-31 13:43:09 }
2023-01-31 13:43:09 }
2023-01-31 13:43:09 },
2023-01-31 13:43:09 "TimeInstant": {
2023-01-31 13:43:09 "type": "DateTime",
2023-01-31 13:43:09 "value": "2023-01-31T12:43:09.774Z"
2023-01-31 13:43:09 }
2023-01-31 13:43:09 }
2023-01-31 13:43:09 }
2023-01-31 13:43:09
2023-01-31 13:43:09 | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.774Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=n/a | subsrv=n/a | msg=Options: {
2023-01-31 13:43:09 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-01-31 13:43:09 "method": "PATCH",
2023-01-31 13:43:09 "headers": {
2023-01-31 13:43:09 "fiware-service": "opcua_car",
2023-01-31 13:43:09 "fiware-servicepath": "/demo"
2023-01-31 13:43:09 },
2023-01-31 13:43:09 "json": {
2023-01-31 13:43:09 "temperature": {
2023-01-31 13:43:09 "type": "Float",
2023-01-31 13:43:09 "value": 25,
2023-01-31 13:43:09 "metadata": {
2023-01-31 13:43:09 "TimeInstant": {
2023-01-31 13:43:09 "type": "DateTime",
2023-01-31 13:43:09 "value": "2023-01-31T12:43:09.774Z"
2023-01-31 13:43:09 }
2023-01-31 13:43:09 }
2023-01-31 13:43:09 },
2023-01-31 13:43:09 "TimeInstant": {
2023-01-31 13:43:09 "type": "DateTime",
2023-01-31 13:43:09 "value": "2023-01-31T12:43:09.774Z"
2023-01-31 13:43:09 }
2023-01-31 13:43:09 }
2023-01-31 13:43:09 } | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.778Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Request | from=n/a | srv=n/a | subsrv=n/a | msg=Response "" | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.778Z | lvl=INFO | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Received the following response from the CB: Value updated successfully
2023-01-31 13:43:09 | comp=IoTAgent
2023-01-31 13:43:09 time=2023-01-31T12:43:09.778Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentOPCUA.CommonBindings | from=n/a | srv=n/a | subsrv=n/a | msg=Single measure for device [Habitacion:001] with apiKey [iot] successfully updated | comp=IoTAgent | service=opcua_car | subservice=/demo
2023-01-31 13:43:09 time=2023-01-31T12:43:09.779Z | lvl=DEBUG | corr=b53fa143-87a7-495e-8410-1fb319717ab5 | trans=b53fa143-87a7-495e-8410-1fb319717ab5 | op=IoTAgentNGSI.DomainControl | from=n/a | srv=n/a | subsrv=n/a | msg=response-time: 1244139 | comp=IoTAgent
Hi @alberto072710 There's a little issue with the body you're sending. You're sending the following
{
type: 'command',
value: [3,4]
}
But you should send:
{
type: 'command',
value: '[3,4]'
}
Thank you. You were right. In the status entity I get Ok but in the info entity I get null, I don't get the output parameter
Does any error get printed in the logs? can you check please?
This is the log I get when calling the method. A maybe stupid question, do we have to declare the outputArguments in the config.js file?
2023-02-02 13:46:52 time=2023-02-02T12:46:52.286Z | lvl=DEBUG | corr=aab268ec-a2f7-11ed-a683-0242ac180003; cbfwd=1 | trans=81ef9f20-e4b6-46d0-a645-f3441a13055e | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Request for path [//op/update] from [iotagent-opcua:4041] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.286Z | lvl=DEBUG | corr=aab268ec-a2f7-11ed-a683-0242ac180003; cbfwd=1 | trans=81ef9f20-e4b6-46d0-a645-f3441a13055e | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Body:
2023-02-02 13:46:52
2023-02-02 13:46:52 {
2023-02-02 13:46:52 "entities": [
2023-02-02 13:46:52 {
2023-02-02 13:46:52 "id": "Habitacion:001",
2023-02-02 13:46:52 "type": "Habitacion",
2023-02-02 13:46:52 "suma": {
2023-02-02 13:46:52 "type": "command",
2023-02-02 13:46:52 "value": "[3,4]",
2023-02-02 13:46:52 "metadata": {}
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 ],
2023-02-02 13:46:52 "actionType": "update"
2023-02-02 13:46:52 }
2023-02-02 13:46:52
2023-02-02 13:46:52 | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.287Z | lvl=DEBUG | corr=aab268ec-a2f7-11ed-a683-0242ac180003; cbfwd=1 | trans=81ef9f20-e4b6-46d0-a645-f3441a13055e | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Handling v2 update from [iotagent-opcua:4041] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.288Z | lvl=DEBUG | corr=aab268ec-a2f7-11ed-a683-0242ac180003; cbfwd=1 | trans=81ef9f20-e4b6-46d0-a645-f3441a13055e | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg={
2023-02-02 13:46:52 "entities": [
2023-02-02 13:46:52 {
2023-02-02 13:46:52 "id": "Habitacion:001",
2023-02-02 13:46:52 "type": "Habitacion",
2023-02-02 13:46:52 "suma": {
2023-02-02 13:46:52 "type": "command",
2023-02-02 13:46:52 "value": "[3,4]",
2023-02-02 13:46:52 "metadata": {}
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 ],
2023-02-02 13:46:52 "actionType": "update"
2023-02-02 13:46:52 } | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.288Z | lvl=DEBUG | corr=aab268ec-a2f7-11ed-a683-0242ac180003; cbfwd=1 | trans=81ef9f20-e4b6-46d0-a645-f3441a13055e | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.292Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","type","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.296Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["service","subservice","type","apikey"]] not found: [{"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"}] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.296Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","apikey":"iot"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.304Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Device group data found: {"_id":"63dbb096d0f25178bbb301d1","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.305Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData before merge with conf: {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} defaults: [null,null,[],[],[],[],[]] fields: ["lazy","internalAttributes","active","staticAttributes","commands","subscriptions"] configuration {"_id":"63dbb096d0f25178bbb301d1","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.305Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData after merge with conf: {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.307Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling update [{"type":"command","value":"[3,4]","metadata":{},"name":"suma"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.307Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.308Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling command [{"type":"command","value":"[3,4]","metadata":{},"name":"suma"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.308Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.309Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey iot attributes [{"name":"suma_status","type":"commandStatus","value":"PENDING"}] deviceInformation {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.310Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.321Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.321Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.323Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending command execution to device [Habitacion:001] with apikey [iot] and payload [{"suma":"[3,4]"}] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.323Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.324Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.324Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Found an Array as command input | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.324Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Method to call =[{"objectId":"ns=4;i=1","methodId":"ns=4;i=9","inputArguments":[{"dataType":4,"type":"DATO1","value":3},{"dataType":4,"type":"DATO2","value":4}]}] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.327Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.328Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.328Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending update execution to device [Habitacion:001] with apikey [iot] and attribute [{ type: 'command', value: '[3,4]', metadata: {}, name: 'suma' }] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.328Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.329Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.337Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.338Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.339Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.340Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=expressionPlugin entity {"suma_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.340Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=multiEntityPlugin entity {"suma_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.341Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation: {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.342Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.342Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using the following NGSI v2 request:
2023-02-02 13:46:52
2023-02-02 13:46:52 {
2023-02-02 13:46:52 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-02-02 13:46:52 "method": "PATCH",
2023-02-02 13:46:52 "headers": {
2023-02-02 13:46:52 "fiware-service": "opcua_car",
2023-02-02 13:46:52 "fiware-servicepath": "/demo"
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "json": {
2023-02-02 13:46:52 "suma_status": {
2023-02-02 13:46:52 "type": "commandStatus",
2023-02-02 13:46:52 "value": "PENDING",
2023-02-02 13:46:52 "metadata": {
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.342Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.342Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52
2023-02-02 13:46:52 | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.342Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Options: {
2023-02-02 13:46:52 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-02-02 13:46:52 "method": "PATCH",
2023-02-02 13:46:52 "headers": {
2023-02-02 13:46:52 "fiware-service": "opcua_car",
2023-02-02 13:46:52 "fiware-servicepath": "/demo"
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "json": {
2023-02-02 13:46:52 "suma_status": {
2023-02-02 13:46:52 "type": "commandStatus",
2023-02-02 13:46:52 "value": "PENDING",
2023-02-02 13:46:52 "metadata": {
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.342Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.342Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 } | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.354Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Response "" | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.355Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Received the following response from the CB: Value updated successfully
2023-02-02 13:46:52 | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.356Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update action from [iotagent-opcua:4041] handled successfully. | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.359Z | lvl=DEBUG | corr=aab268ec-a2f7-11ed-a683-0242ac180003; cbfwd=1 | trans=81ef9f20-e4b6-46d0-a645-f3441a13055e | op=IoTAgentNGSI.DomainControl | from=n/a | srv=opcua_car | subsrv=/demo | msg=response-time: 74 | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.380Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["resource","apikey"] with queryObj {"resource":"Habitacion","apikey":"iot"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.385Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["resource","apikey"]] not found: [{"resource":"Habitacion","apikey":"iot"}] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.385Z | lvl=ERROR | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Alarms | from=n/a | srv=n/a | subsrv=n/a | msg=Raising [MONGO-ALARM_07]: {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"resource\",\"apikey\"] and values: {\"resource\":\"Habitacion\",\"apikey\":\"iot\"}","code":404} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.388Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey iot attributes [{"name":"suma_status","type":"commandStatus","value":"OK"},{"name":"suma_info","type":"commandResult"}] deviceInformation {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.388Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.393Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.394Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.394Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=n/a | subsrv=n/a | msg=typeInformation {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.394Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=n/a | subsrv=n/a | msg=expressionPlugin entity {"suma_status":{"type":"commandStatus","value":"OK"},"suma_info":{"type":"commandResult"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.395Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=n/a | subsrv=n/a | msg=multiEntityPlugin entity {"suma_status":{"type":"commandStatus","value":"OK"},"suma_info":{"type":"commandResult"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.395Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=typeInformation: {"_id":"63dbb096d0f2517857b301da","lazy":[],"active":[{"name":"temperature","type":"Float","object_id":"temperature"},{"name":"pressure","type":"Integer","object_id":"pressure"}],"commands":[{"name":"temperatureCommand","type":"command","object_id":"temperatureCommand"},{"name":"suma","type":"command","object_id":"suma"},{"name":"ajusteTemperatura","type":"command","object_id":"ajusteTemperatura"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-02T12:46:14.523Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63dbb09683d292467f24fd3b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://192.168.2.1:4840","explicitAttrs":false} | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.395Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.395Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Using the following NGSI v2 request:
2023-02-02 13:46:52
2023-02-02 13:46:52 {
2023-02-02 13:46:52 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-02-02 13:46:52 "method": "PATCH",
2023-02-02 13:46:52 "headers": {
2023-02-02 13:46:52 "fiware-service": "opcua_car",
2023-02-02 13:46:52 "fiware-servicepath": "/demo"
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "json": {
2023-02-02 13:46:52 "suma_status": {
2023-02-02 13:46:52 "type": "commandStatus",
2023-02-02 13:46:52 "value": "OK",
2023-02-02 13:46:52 "metadata": {
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.395Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "suma_info": {
2023-02-02 13:46:52 "type": "commandResult",
2023-02-02 13:46:52 "metadata": {
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.395Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.395Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52
2023-02-02 13:46:52 | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.395Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Request | from=n/a | srv=n/a | subsrv=n/a | msg=Options: {
2023-02-02 13:46:52 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-02-02 13:46:52 "method": "PATCH",
2023-02-02 13:46:52 "headers": {
2023-02-02 13:46:52 "fiware-service": "opcua_car",
2023-02-02 13:46:52 "fiware-servicepath": "/demo"
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "json": {
2023-02-02 13:46:52 "suma_status": {
2023-02-02 13:46:52 "type": "commandStatus",
2023-02-02 13:46:52 "value": "OK",
2023-02-02 13:46:52 "metadata": {
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.395Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "suma_info": {
2023-02-02 13:46:52 "type": "commandResult",
2023-02-02 13:46:52 "metadata": {
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.395Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 },
2023-02-02 13:46:52 "TimeInstant": {
2023-02-02 13:46:52 "type": "DateTime",
2023-02-02 13:46:52 "value": "2023-02-02T12:46:52.395Z"
2023-02-02 13:46:52 }
2023-02-02 13:46:52 }
2023-02-02 13:46:52 } | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.411Z | lvl=DEBUG | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Request | from=n/a | srv=n/a | subsrv=n/a | msg=Response "" | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.411Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=n/a | subsrv=n/a | msg=Received the following response from the CB: Value updated successfully
2023-02-02 13:46:52 | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.428Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=n/a | subsrv=n/a | msg=ns=4;i=9 read variable type -> { /* DataValue */
2023-02-02 13:46:52 value: Variant(Scalar<Null>, value: <null>)
2023-02-02 13:46:52 statusCode: BadAttributeIdInvalid (0x80350000)
2023-02-02 13:46:52 serverTimestamp: null
2023-02-02 13:46:52 sourceTimestamp: null
2023-02-02 13:46:52 } | comp=IoTAgent
2023-02-02 13:46:52 time=2023-02-02T12:46:52.428Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=n/a | subsrv=n/a | msg=Update to execute =[{"nodeId":"ns=4;i=9","attributeId":13,"indexRange":null,"value":{"value":{"dataType":0,"value":"[3,4]"}}}] | comp=IoTAgent
2023-02-02 13:46:56 time=2023-02-02T12:46:56.004Z | lvl=INFO | corr=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | trans=46fb53ba-d8f7-4ad0-b7bf-dca196f58193 | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=n/a | subsrv=n/a | msg=subscription keepalive | comp=IoTAgent
Hi @alberto072710, sorry for the delay. Maybe the issue is related to OPCUA server implementation. Can you provide us your test server in order to find the issue?
Hi, The delay in answering does not matter. I was currently using a S7-1200 Siemens PLC, to test that it was not a problem with the PLC server I am trying to test the PROSYS OPC server which provides an example method with 2 input and 1 output parameters. I'm trying to send the example command but I get an error because the first input parameter is of type string (I don't know if this has something to do with it). I am attaching the data so you can test it.
docker_compose.yml
version: "3.1"
volumes:
mongodb: ~
services:
iot-agent:
image: iotagent4fiware/iotagent-opcua:2.1.2
hostname: iotagent-opcua
depends_on:
- mongodb
- orion
networks:
- hostnet
expose:
- "4041"
- "9229"
ports:
- "4041:4041"
- "9229:9229"
environment:
- "IOTA_CB_HOST=orion"
- "IOTA_CB_PORT=1026"
- "IOTA_NORTH_PORT=4041"
- "IOTA_REGISTRY_TYPE=mongodb"
- "IOTA_MONGO_HOST=mongodb"
- "IOTA_MONGO_PORT=27017"
- "IOTA_MONGO_DB=iotagent_opcua"
- "IOTA_PROVIDER_URL=http://iotagent-opcua:4041"
- "IOTA_OPCUA_ENDPOINT=opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer"
- "IOTA_OPCUA_SECURITY_MODE=None"
- "IOTA_OPCUA_SECURITY_POLICY=None"
#- "IOTA_OPCUA_SECURITY_USERNAME="
#- "IOTA_OPCUA_SECURITY_PASSWORD="
- "IOTA_OPCUA_UNIQUE_SUBSCRIPTION=false"
- "IOTA_OPCUA_SUBSCRIPTION_NOTIFICATIONS_PER_PUBLISH=1000"
- "IOTA_OPCUA_SUBSCRIPTION_PUBLISHING_ENABLED=true"
- "IOTA_OPCUA_SUBSCRIPTION_REQ_LIFETIME_COUNT=100"
- "IOTA_OPCUA_SUBSCRIPTION_REQ_MAX_KEEP_ALIVE_COUNT=10"
- "IOTA_OPCUA_SUBSCRIPTION_REQ_PUBLISHING_INTERVAL=1000"
- "IOTA_OPCUA_SUBSCRIPTION_PRIORITY=128"
- "IOTA_EXTENDED_FORBIDDEN_CHARACTERS=[]"
- "IOTA_OPCUA_MT_POLLING=false"
- "IOTA_OPCUA_MT_AGENT_ID=age01_"
- "IOTA_OPCUA_MT_ENTITY_ID=age01_Car"
- "IOTA_OPCUA_MT_ENTITY_TYPE=Habitacion"
- "IOTA_OPCUA_MT_NAMESPACE_IGNORE=0,7"
- "IOTA_OPCUA_MT_STORE_OUTPUT=true"
volumes:
- C:/Users/Alberto/Desktop/OPC_UA_SIN_CERT/prosys/conf/config.js:/opt/iotagent-opcua/conf/config.js
mongodb:
image: mongo:4.2
hostname: mongodb
networks:
- hostnet
ports:
- "27017:27017"
command: --bind_ip_all
volumes:
- mongodb:/data
################ OCB ################
orion:
hostname: orion
image: fiware/orion
networks:
- hostnet
ports:
- "1026:1026"
depends_on:
- mongodb
expose:
- "1026"
command: -dbhost mongodb -logLevel DEBUG
#entrypoint: /usr/bin/contextBroker -fg -multiservice -ngsiv1Autocast -statCounters -dbhost mongo -logForHumans -logLevel DEBUG -t 255
networks:
hostnet:
config.js
const config = {};
config.iota = {
logLevel: 'DEBUG',
timestamp: true,
contextBroker: {
host: 'localhost',
port: '1026',
ngsiVersion: 'v2',
jsonLdContext: 'https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context.jsonld',
service: 'opcua_car',
subservice: '/demo'
},
server: {
port: 4041
},
deviceRegistry: {
type: 'mongodb'
},
mongodb: {
host: 'localhost',
port: '27017',
db: 'iotagent_opcua'
},
types: {
Habitacion: {
active: [
],
lazy: [],
commands: [
{
name: 'MyMethod',
type: 'command'
}
]
}
},
contexts: [
{
id: 'Habitacion:001',
type: 'Habitacion',
mappings: [
]
}
],
contextSubscriptions: [
{
id: 'Habitacion:001',
type: 'Habitacion',
mappings: [
{
ocb_id: 'MyMethod',
opcua_id: 'ns=6;s=MyMethod',
object_id: 'ns=6;s=MyDevice',
inputArguments: [
{
dataType: 12,
type: 'Operation'
},
{
dataType: 11,
type: 'Parameter'
}
]
}
]
}
],
events:[],
service: 'opcua_car',
subservice: '/demo',
providerUrl: 'http://localhost:4041',
deviceRegistrationDuration: 'P20Y',
defaultType: 'Device',
defaultResource: '/iot/opcua',
explicitAttrs: false,
extendedForbiddenCharacters: []
};
config.opcua = {
subscription: {
maxNotificationsPerPublish: 1000,
publishingEnabled: true,
requestedLifetimeCount: 100,
requestedMaxKeepAliveCount: 10,
requestedPublishingInterval: 1000,
priority: 128
},
endpoint: 'opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer',
securityMode: 'None',
securityPolicy: 'None',
username: null,
password: null,
uniqueSubscription: false
};
config.mappingTool = {
polling: false,
/**
* agentId prefix to be assigned to the newly generated entity from MappingTool execution
*/
agentId: 'age01_',
/**
* Namespaces to ignore when crawling nodes from OPC UA Server
*/
namespaceIgnore: '0,7',
/**
* entityId to be assigned to the newly generated entity from MappingTool execution
*/
entityId: 'age01_Car',
/**
* entityType to be assigned to the newly generated entity from MappingTool execution
*/
entityType: 'Device',
/**
* boolean flag to determine whether to store the output of the mapping tool execution or not
*/
storeOutput: true
};
config.jexlTransformations = {};
config.configRetrieval = false;
config.defaultKey = 'iot';
config.defaultTransport = 'OPCUA';
//config.multiCore = false;
config.autoprovision = true;
module.exports = config;
Command
log of iotagent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.701Z | lvl=DEBUG | corr=db12afc2-b361-11ed-ad7e-0242ac150003; cbfwd=1 | trans=4a789694-b997-478e-a282-dbeb0d5a5380 | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Request for path [//op/update] from [iotagent-opcua:4041] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.701Z | lvl=DEBUG | corr=db12afc2-b361-11ed-ad7e-0242ac150003; cbfwd=1 | trans=4a789694-b997-478e-a282-dbeb0d5a5380 | op=IoTAgentNGSI.GenericMiddlewares | from=n/a | srv=opcua_car | subsrv=/demo | msg=Body:
2023-02-23 11:07:18
2023-02-23 11:07:18 {
2023-02-23 11:07:18 "entities": [
2023-02-23 11:07:18 {
2023-02-23 11:07:18 "id": "Habitacion:001",
2023-02-23 11:07:18 "type": "Habitacion",
2023-02-23 11:07:18 "MyMethod": {
2023-02-23 11:07:18 "type": "command",
2023-02-23 11:07:18 "value": "[sin,7]",
2023-02-23 11:07:18 "metadata": {}
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18 ],
2023-02-23 11:07:18 "actionType": "update"
2023-02-23 11:07:18 }
2023-02-23 11:07:18
2023-02-23 11:07:18 | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.701Z | lvl=DEBUG | corr=db12afc2-b361-11ed-ad7e-0242ac150003; cbfwd=1 | trans=4a789694-b997-478e-a282-dbeb0d5a5380 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Handling v2 update from [iotagent-opcua:4041] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.701Z | lvl=DEBUG | corr=db12afc2-b361-11ed-ad7e-0242ac150003; cbfwd=1 | trans=4a789694-b997-478e-a282-dbeb0d5a5380 | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg={
2023-02-23 11:07:18 "entities": [
2023-02-23 11:07:18 {
2023-02-23 11:07:18 "id": "Habitacion:001",
2023-02-23 11:07:18 "type": "Habitacion",
2023-02-23 11:07:18 "MyMethod": {
2023-02-23 11:07:18 "type": "command",
2023-02-23 11:07:18 "value": "[sin,7]",
2023-02-23 11:07:18 "metadata": {}
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18 ],
2023-02-23 11:07:18 "actionType": "update"
2023-02-23 11:07:18 } | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.701Z | lvl=DEBUG | corr=db12afc2-b361-11ed-ad7e-0242ac150003; cbfwd=1 | trans=4a789694-b997-478e-a282-dbeb0d5a5380 | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.703Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","type","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.705Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["service","subservice","type","apikey"]] not found: [{"service":"opcua_car","subservice":"/demo","type":"Habitacion","apikey":"iot"}] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.705Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["service","subservice","apikey"] with queryObj {"service":"opcua_car","subservice":"/demo","apikey":"iot"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Device group data found: {"_id":"63f7368ca113cb3a84fd410b","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData before merge with conf: {"_id":"63f7368ca113cb5d9bfd4114","lazy":[],"active":[],"commands":[{"name":"MyMethod","type":"command","object_id":"MyMethod"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-23T09:49:00.984Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63f7368ccb14e00f673f228b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer","explicitAttrs":false} defaults: [null,null,[],[],[],[],[]] fields: ["lazy","internalAttributes","active","staticAttributes","commands","subscriptions"] configuration {"_id":"63f7368ca113cb3a84fd410b","resource":"/iot/opcua","apikey":"iot","type":"Device","service":"opcua_car","subservice":"/demo"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.DeviceService | from=n/a | srv=n/a | subsrv=n/a | msg=deviceData after merge with conf: {"_id":"63f7368ca113cb5d9bfd4114","lazy":[],"active":[],"commands":[{"name":"MyMethod","type":"command","object_id":"MyMethod"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-23T09:49:00.984Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63f7368ccb14e00f673f228b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling update [{"type":"command","value":"[sin,7]","metadata":{},"name":"MyMethod"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=n/a | subsrv=n/a | msg=Handling command [{"type":"command","value":"[sin,7]","metadata":{},"name":"MyMethod"}] for device [Habitacion:001] in service [opcua_car - /demo] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBDeviceRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Looking for device with [{"name":"Habitacion:001","service":"opcua_car","subservice":"/demo","type":"Habitacion"}]. | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=executeWithDeviceInfo entityName Habitacion:001 type Habitacion apikey iot attributes [{"name":"MyMethod_status","type":"commandStatus","value":"PENDING"}] deviceInformation {"_id":"63f7368ca113cb5d9bfd4114","lazy":[],"active":[],"commands":[{"name":"MyMethod","type":"command","object_id":"MyMethod"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-23T09:49:00.984Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63f7368ccb14e00f673f228b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.707Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Looking for group params ["type"] with queryObj {"type":"Habitacion"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.709Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.709Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.709Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending command execution to device [Habitacion:001] with apikey [iot] and payload [{"MyMethod":"[sin,7]"}] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.709Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.709Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeCommand] and protocol [OPCUA] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.710Z | lvl=WARN | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Unable to determine the type of the command input, considering it as a single value | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.710Z | lvl=INFO | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Method to call =[{"objectId":"ns=6;s=MyDevice","methodId":"ns=6;s=MyMethod","inputArguments":[{"dataType":12,"type":"Operation","value":"[sin,7]","arrayType":0},{"dataType":11,"type":"Parameter","arrayType":0}]}] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.710Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Getting effective API Key | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.710Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.IOTAUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using device apikey: iot | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.710Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.UpdateHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=Sending update execution to device [Habitacion:001] with apikey [iot] and attribute [{ type: 'command', value: '[sin,7]', metadata: {}, name: 'MyMethod' }] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.711Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Creating execution for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.711Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=opcua_car | subsrv=/demo | msg=Binding found for function [executeUpdate] and protocol [OPCUA] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.712Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MongoDBGroupRegister | from=n/a | srv=n/a | subsrv=n/a | msg=Device group for fields [["type"]] not found: [{"type":"Habitacion"}] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.712Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.NGSIService | from=n/a | srv=opcua_car | subsrv=/demo | msg=error {"name":"DEVICE_GROUP_NOT_FOUND","message":"Couldn\t find device group for fields: [\"type\"] and values: {\"type\":\"Habitacion\"}","code":404} in get group device | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.712Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.NGSIUtils | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation {"_id":"63f7368ca113cb5d9bfd4114","lazy":[],"active":[],"commands":[{"name":"MyMethod","type":"command","object_id":"MyMethod"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-23T09:49:00.984Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63f7368ccb14e00f673f228b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.712Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.expressionPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=expressionPlugin entity {"MyMethod_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.712Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.MultiEntityPlugin | from=n/a | srv=opcua_car | subsrv=/demo | msg=multiEntityPlugin entity {"MyMethod_status":{"type":"commandStatus","value":"PENDING"},"id":"Habitacion:001","type":"Habitacion"} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.712Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=typeInformation: {"_id":"63f7368ca113cb5d9bfd4114","lazy":[],"active":[],"commands":[{"name":"MyMethod","type":"command","object_id":"MyMethod"}],"staticAttributes":[],"subscriptions":[],"creationDate":"2023-02-23T09:49:00.984Z","id":"Habitacion:001","type":"Habitacion","name":"Habitacion:001","service":"opcua_car","subservice":"/demo","registrationId":"63f7368ccb14e00f673f228b","internalId":null,"apikey":"iot","endpoint":"opc.tcp://DESKTOP-9P47CVL:53530/OPCUA/SimulationServer","explicitAttrs":false,"internalAttributes":null} | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.713Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Updating device value in the Context Broker at [http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.713Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Using the following NGSI v2 request:
2023-02-23 11:07:18
2023-02-23 11:07:18 {
2023-02-23 11:07:18 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-02-23 11:07:18 "method": "PATCH",
2023-02-23 11:07:18 "headers": {
2023-02-23 11:07:18 "fiware-service": "opcua_car",
2023-02-23 11:07:18 "fiware-servicepath": "/demo"
2023-02-23 11:07:18 },
2023-02-23 11:07:18 "json": {
2023-02-23 11:07:18 "MyMethod_status": {
2023-02-23 11:07:18 "type": "commandStatus",
2023-02-23 11:07:18 "value": "PENDING",
2023-02-23 11:07:18 "metadata": {
2023-02-23 11:07:18 "TimeInstant": {
2023-02-23 11:07:18 "type": "DateTime",
2023-02-23 11:07:18 "value": "2023-02-23T10:07:18.713Z"
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18 },
2023-02-23 11:07:18 "TimeInstant": {
2023-02-23 11:07:18 "type": "DateTime",
2023-02-23 11:07:18 "value": "2023-02-23T10:07:18.713Z"
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18
2023-02-23 11:07:18 | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.713Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Options: {
2023-02-23 11:07:18 "url": "http://orion:1026/v2/entities/Habitacion:001/attrs?type=Habitacion",
2023-02-23 11:07:18 "method": "PATCH",
2023-02-23 11:07:18 "headers": {
2023-02-23 11:07:18 "fiware-service": "opcua_car",
2023-02-23 11:07:18 "fiware-servicepath": "/demo"
2023-02-23 11:07:18 },
2023-02-23 11:07:18 "json": {
2023-02-23 11:07:18 "MyMethod_status": {
2023-02-23 11:07:18 "type": "commandStatus",
2023-02-23 11:07:18 "value": "PENDING",
2023-02-23 11:07:18 "metadata": {
2023-02-23 11:07:18 "TimeInstant": {
2023-02-23 11:07:18 "type": "DateTime",
2023-02-23 11:07:18 "value": "2023-02-23T10:07:18.713Z"
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18 },
2023-02-23 11:07:18 "TimeInstant": {
2023-02-23 11:07:18 "type": "DateTime",
2023-02-23 11:07:18 "value": "2023-02-23T10:07:18.713Z"
2023-02-23 11:07:18 }
2023-02-23 11:07:18 }
2023-02-23 11:07:18 } | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.716Z | lvl=ERROR | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.CommandHandler | from=n/a | srv=opcua_car | subsrv=/demo | msg=COMMAND-003: Command execution could not be handled, [TypeError: Cannot read properties of null (reading '0')
2023-02-23 11:07:18 at AsyncFunction.executeCommand (/opt/iotagent-opcua/lib/bindings/OPCUABinding.js:386:53)
2023-02-23 11:07:18 at runMicrotasks (<anonymous>)
2023-02-23 11:07:18 at processTicksAndRejections (node:internal/process/task_queues:96:5)] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.718Z | lvl=INFO | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=ns=6;s=MyMethod read variable type -> { /* DataValue */
2023-02-23 11:07:18 value: Variant(Scalar<Null>, value: <null>)
2023-02-23 11:07:18 statusCode: BadAttributeIdInvalid (0x80350000)
2023-02-23 11:07:18 serverTimestamp: null
2023-02-23 11:07:18 sourceTimestamp: null
2023-02-23 11:07:18 } | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.718Z | lvl=INFO | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update to execute =[{"nodeId":"ns=6;s=MyMethod","attributeId":13,"indexRange":null,"value":{"value":{"dataType":0,"value":"[sin,7]"}}}] | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.719Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.Request | from=n/a | srv=opcua_car | subsrv=/demo | msg=Response "" | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.719Z | lvl=INFO | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.Entities-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Received the following response from the CB: Value updated successfully
2023-02-23 11:07:18 | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.719Z | lvl=DEBUG | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentNGSI.ContextServer-v2 | from=n/a | srv=opcua_car | subsrv=/demo | msg=Update action from [iotagent-opcua:4041] handled successfully. | comp=IoTAgent
2023-02-23 11:07:18 time=2023-02-23T10:07:18.720Z | lvl=DEBUG | corr=db12afc2-b361-11ed-ad7e-0242ac150003; cbfwd=1 | trans=4a789694-b997-478e-a282-dbeb0d5a5380 | op=IoTAgentNGSI.DomainControl | from=n/a | srv=opcua_car | subsrv=/demo | msg=response-time: 20 | comp=IoTAgent
2023-02-23 11:07:22 time=2023-02-23T10:07:22.027Z | lvl=INFO | corr=a401585d-113a-4bbf-9109-7d5f76f833ab | trans=a401585d-113a-4bbf-9109-7d5f76f833ab | op=IoTAgentOPCUA.OPCUABinding | from=n/a | srv=opcua_car | subsrv=/demo | msg=subscription keepalive | comp=IoTAgent
PROSYS OPC UA SIMULATION SERVER
Thanks!
Hi @alberto072710 , fixed in v2.1.3. One minor change is that now input arguments MUST be passed as an array, eg:
{
type: 'command',
value: [3,4]
}
Hi, Amazing work. Now it works perfectly. Thanks a lot
Hi, I am trying to send a command that sending two numbers gives me the sum of both as a result.
I attach an image of the Prosys
The first question that arises is how can I send a command with multiple input arguments.
How are the output parameters received? What is the meaning of commandResult and commandStatus?
config.js
Thank you very much for your help