orca-heat-pump-communication
v0.0.2
Published
Read/Write communication with Orca Heat Pumps
Readme
ORCA Heat Pump Communication
ORCA Heat Pump Communication is a communication helper which enables you to read and write tags from/to ORCA Heap Pump devices. It was specifically developed for DUO 300 model, but I presume it should also work with other models.
How It Works
orca-heat-pump-communication communicates with Heat Pump device via exposed cgi api.
After initialization readTags and writeTags functions are exposed, which enables you to read and write tag values.
Install
npm i orca-heat-pump-communication --saveUsage
const Orca = require('orca-heat-pump-communication')
const settings = {
host: '192.168.1.111',
username: 'username',
password: 'password'
}
const {
readTags,
writeTags
} = Orca(settings)
// read tag values
const tags = ['2_Temp_prostor_dnevna', '2_Temp_Zunanja']
readTags(tags)
.then(res => console.log(res)) // [{ tag: '2_Temp_prostor_dnevna', status: 'S_OK', value: 22.5 }, ...]
.catch(err => console.error(err))
// write tag values
const tagValues = [
{ name: '2_Temp_prostor_dnevna', value: 22.5 },
{ name: '2_Temp_Zunanja', value: 5.7 }
]
writeTags(tagValues)
.then((res) => console.log(res)) // [{ tag: '2_Temp_prostor_dnevna', status: 'S_OK', value: 22.5 }, ...]
.catch(err => console.error(err))API
Orca(settings) => orcaCommunication
The exported Orca function takes settings argument and returns orca-communication instance.
settings (Object)
host (String)
Heat pump host.
Required: true
username (String)
Heat pump cgi api authentication username.
Required: true
password (String)
Heat pump cgi api authentication password.
Required: true
Orca Communication Instance
The Orca Communication instance is the object returned by the main exported Orca function.
The primary purpose of the instance is to provide communication methods.
orca.readTags(tags)
Read values of provided tags.
tags
Array of tag names.
Type: String[]
Example: ['2_Temp_prostor_dnevna', '2_Temp_Zunanja']
orca.writeTags(values)
Write provided tag values.
values
Array of tag values.
Type: Object[]
Example:
[
{ name: '2_Temp_prostor_dnevna', value: 22.5 },
{ name: '2_Temp_Zunanja', value: 5.7 }
]