@mangar2/opensensemap
v2.0.1
Published
sends data to opensensemap.org
Downloads
12
Readme
Abstract
Interface to the opensense map service . Use it to send data to opensense map .
Contents
Meta
| | | | --- | --- | | File | index.js | | Abstract | Interface to the opensense map service . Use it to send data to opensense map . | | Author | Volker Böhm | | Copyright | Copyright ( c ) 2020 Volker Böhm | | License | This software is licensed under the GNU LESSER GENERAL PUBLIC LICENSE Version 3 . It is furnished "as is" , without any support , and with no warranty , express or implied , as to its usefulness for any purpose . |
Type definitions
Sensor {Object}
| Name | Type | Description |
| ---- | ---- | ------- |
| name
| string
| name of the sensor | |
| unit
| string
| unit of the sensor | |
| topic
| string
| topic the sensor is matched to | |
| id
| string
| opensensmap unique id | |
Sensors {Array.}
Global functions
prepare
prepare (config, opensenseMap) => {OpensenseMap}
Prepares the object
prepare Parameters
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| config
| Object
| | | automation configuration | |
| opensenseMap
| OpensenseMap
| optional | null | existing automation class | |
prepare returns
| Type | Description |
| ---- | ----------- |
| OpensenseMap
| the prepared automation object |
Class OpensenseMap
new OpensenseMap(config)
Creates a class with the ability to publish information to the opensensemap service
Example
const config =
{
"station" : "your station name (optional)",
"id" : "your station id",
"host": "ingress.opensensemap.org",
"port": 443,
"sensors": [{
"name": "temperature",
"uint": "°C",
"topic" : "topic/used/for/the/sensor",
"id": "your sensor id"
}]
}
const opensenseMap = new Opensensemap(config)
let result = await opensensemap.publish(
new Message('topic/used/for/the/sensor', 2.61, 'test value' }
)
OpensenseMap Parameters
| Name | Type | Description |
| ---------- | ------------ | ----------------- |
| config
| Object
| configuration ( sensors , . . . ) | |
config properties
| Name | Type | Attribute | Default | Description |
| ---------- | ------------ | ------------ | ------------ | ----------------- |
| station
| string
| optional | | name of the station | |
| id
| string
| | | sensebox id ( provided by open sens map ) | |
| host
| string
| | | host of open sense map | |
| port
| port
| optional | 443 | portnumer of open sense map ( usually 443 ) | |
| sensors
| Sensors
| | | opensensemap sensor configuration | |
OpensenseMap Methods
getSubscriptions
getSubscriptions () => {Array.<string>}
Gets the subscriptions for the service
getSubscriptions returns
| Type | Description |
| ---- | ----------- |
| Array.<string>
| array of subscriptions |
handleMessage
async handleMessage (message)
Publishes a value to opensensemap ( you need an account to do this ) Publish data provided as Message to opensensemap . You need an account on opensensemap . org The message topic is mapped to the sensor id provided in the config object . The message value it the value to publish
handleMessage Parameters
| Name | Type | Description |
| ---------- | ------------ | ----------------- |
| message
| Message
| the data to publish on the opensensemap | |
message properties
| Name | Type | Description |
| ---------- | ------------ | ----------------- |
| topic
| string
| the topic is used to select the sensor id from config | |
| value
| number
| the value to publish to the sensor | |