Difference between revisions of "M2M Bridge"
From AMTech WikiDocs
(→Configuration) |
|||
Line 13: | Line 13: | ||
[[File:Example.jpg]] | [[File:Example.jpg]] | ||
− | == Configuration == | + | == Edge Configuration == |
*Edge/Device(s) site configuration bridgeConfig.json #1 | *Edge/Device(s) site configuration bridgeConfig.json #1 | ||
**located at M2MBridge root directory. | **located at M2MBridge root directory. | ||
Line 72: | Line 72: | ||
} | } | ||
} | } | ||
+ | |||
+ | == Cloud Configuration == | ||
+ | *Create an "m2mBridge" actor | ||
+ | *Add the things type polices the bridge needs access to | ||
+ | *Police must have user check; enabling instance access control by m2mBridge instance | ||
+ | *Add the thing types the bridge creates plug in instances | ||
+ | *Create a follower: | ||
+ | *Give actor "m2mBridge" access | ||
+ | *Uniquely identify each m2mBridge | ||
+ | *Activity observation configuration: | ||
+ | *Configure the observations types the bridge will produce | ||
+ | *Configure the topic the m2mBridge will get crud and command observations to be matched with bridgeConfig.json property | ||
+ | <span style="color:red">//topic to get crud and command observations</span> | ||
+ | "dap":{ | ||
+ | "crudCommandUrl" :"/xx/xx/" | ||
+ | } | ||
+ | *Things instance creation: | ||
+ | *Using amtech creator experience | ||
+ | *Configuring autoDiscover entry at bridgeConfig.json | ||
+ | <span style="color:red">//auto discover configuration</span> | ||
+ | "autoDiscover":{ | ||
+ | <span style="color:red">//create things type instances at startup time</span> | ||
+ | "execute" : false, | ||
+ | <span style="color:red">//Jsonld instances of the thing to be created </span> | ||
+ | "SNMPDevice":[ | ||
+ | { | ||
+ | "setOIDs": "[{\"oid\":\".1.3.6.1.2.1.1.6.0\", \"type\":\"OctetString\", \"value\":\"Irvine California\"}]", | ||
+ | "_lastmodified": 1450988442414, | ||
+ | "guestusers": [], | ||
+ | "@type": "/amtech/linkeddata/types/composite/entity/SNMPDevice", | ||
+ | "_resourcestatus": "valid", | ||
+ | "_name": "snmpClientM2mBridge", | ||
+ | "getOIDs": "[{\"name\":\"memoryTotal\", \"oid\":\".1.3.6.1.4.1.2021.4.5.0\"}, {\"name\":\"memoryAvailable\", \"oid\":\".1.3.6.1.4.1.2021.4.6.0\"}]", | ||
+ | "ipaddress": "localhost", | ||
+ | "communityString": "private", | ||
+ | "emaillist": "", | ||
+ | "instanceobservationconfig": "{}", | ||
+ | "creationDate": "2015-12-24T20:20:42.407Z", | ||
+ | "readFrequency": "PT10M", | ||
+ | "guesttenants": [ | ||
+ | "follower_m2mcreator@@amtech.mx" | ||
+ | ], | ||
+ | "description": "An SNMPDevice instance acting as SNMP manager/client proxying snmp commands (get/set/trups) to manager a ubuntu box hosting m2mbridge", | ||
+ | "phonelist": "", | ||
+ | "@id": "/amtech/things/entities/snmpClientM2mBridge", | ||
+ | "snmpVersion": "2c", | ||
+ | "_user": "m2mcreator@amtech.mx" | ||
+ | } | ||
+ | ], …} | ||
== Extensible == | == Extensible == |
Revision as of 16:38, 3 March 2016
Contents
Functionality
- Configurable edge intelligence
- Bridges standard and proprietary protocols to AMTech IoT DAP.
- Device-to-device or device-to-server communications.
- MQTT, LLRP, CoAP, STOMP, SmartM2M, LWM2M, PLC, Zigbee and others
- Allow remote and centralized control of IoT devices and gateways.
- SNMP/MIB/TRAP, Reader Management and other
- Configurable autodiscover
- Implements common functionality and host the execution of the protocols
- Network failure detection and recovery
- Get centralized configuration information at startup and real time modifications
- Access control policies to manage observation production and consumption
Edge Configuration
- Edge/Device(s) site configuration bridgeConfig.json #1
- located at M2MBridge root directory.
{ //text to label bridge instance "description": "AMTech M2M Bridge", "dap":{ //amtech IoT DAP ur "dapUrl": "https://dap.amtech.mx", //userid for the m2mBridge instance "userId": "xxxxxxx@amtech.mx", // tenant where bridge been configured "tenant" : "xxxxxxx", //m2mBridge userId password "password" :"xxxxxxxx", //topic to get crud and command observations "crudCommandUrl" :"/xx/xx/" }, //access control information add to send observations "guestSecurity":{ //add guest tenants to observations send from bridge "guesttenants":["progressnext2016"], //add guest users to observations send from bridge "guestusers":[] }, //network failed configuration "networkFailed" :{ //re-connection delay after an instance of plug in failed "reconnectWait" : 60000 }, //network failed configuration "pluginLoad" :{ //bridge startup configuration //network failed configuration "sendM2mBridgeError" : true //send observations error when errors occurred at bridge layer }, //network failed configuration "logger" :{ //network failed configuration "colorize" : true, //colorize log console messages //network failed configuration "level": "debug" //log level }, //Address use to geo locate m2mBridge instance "address" :{ "country" : "usa", "city": "Las Vegas", "road": "Las Vegas Boulevard South", "number":"3960" }, //Id to uniquely identify a M2MBridge instance, in absence of this property a unique identifier gets created "bridgeId":"m2mBridgeProgressNext", //auto discover configuration "autoDiscover":{ //create things type instances at startup time "execute" : false, //Jsonld instances of the thing to be created "instances":{"SNMPDevice":[{...}], ...} } }
Cloud Configuration
- Create an "m2mBridge" actor
*Add the things type polices the bridge needs access to *Police must have user check; enabling instance access control by m2mBridge instance *Add the thing types the bridge creates plug in instances
- Create a follower:
*Give actor "m2mBridge" access *Uniquely identify each m2mBridge
- Activity observation configuration:
*Configure the observations types the bridge will produce
*Configure the topic the m2mBridge will get crud and command observations to be matched with bridgeConfig.json property
//topic to get crud and command observations
"dap":{
"crudCommandUrl" :"/xx/xx/"
}
- Things instance creation:
*Using amtech creator experience *Configuring autoDiscover entry at bridgeConfig.json //auto discover configuration "autoDiscover":{ //create things type instances at startup time "execute" : false, //Jsonld instances of the thing to be created "SNMPDevice":[ { "setOIDs": "[{\"oid\":\".1.3.6.1.2.1.1.6.0\", \"type\":\"OctetString\", \"value\":\"Irvine California\"}]", "_lastmodified": 1450988442414, "guestusers": [], "@type": "/amtech/linkeddata/types/composite/entity/SNMPDevice", "_resourcestatus": "valid", "_name": "snmpClientM2mBridge", "getOIDs": "[{\"name\":\"memoryTotal\", \"oid\":\".1.3.6.1.4.1.2021.4.5.0\"}, {\"name\":\"memoryAvailable\", \"oid\":\".1.3.6.1.4.1.2021.4.6.0\"}]", "ipaddress": "localhost", "communityString": "private", "emaillist": "", "instanceobservationconfig": "{}", "creationDate": "2015-12-24T20:20:42.407Z", "readFrequency": "PT10M", "guesttenants": [ "follower_m2mcreator@@amtech.mx" ], "description": "An SNMPDevice instance acting as SNMP manager/client proxying snmp commands (get/set/trups) to manager a ubuntu box hosting m2mbridge", "phonelist": "", "@id": "/amtech/things/entities/snmpClientM2mBridge", "snmpVersion": "2c", "_user": "m2mcreator@amtech.mx" } ], …}