{"_id":"5859a0886223a82300226f95","project":"568bdc1483d2061900d86cdc","__v":0,"user":"573b7f42fdc9d320001b777d","version":{"_id":"582789aabe5c080f00a5a7fe","__v":10,"project":"568bdc1483d2061900d86cdc","createdAt":"2016-11-12T21:29:14.915Z","releaseDate":"2016-11-12T21:29:14.915Z","categories":["582789abbe5c080f00a5a7ff","582789abbe5c080f00a5a800","582789abbe5c080f00a5a801","582789abbe5c080f00a5a802","582789abbe5c080f00a5a803","582789abbe5c080f00a5a804","582789abbe5c080f00a5a805","582789abbe5c080f00a5a806","582789abbe5c080f00a5a807","582789abbe5c080f00a5a808","5827ea984ca29e0f00137a9e","583df597887db62f00644283","583df5d9c622791900e78da5","5845cd8763c11b250037967d","5845d13063c11b2500379681","5859e859e3306d1900126725","587aeb9a01cf3a0f008359eb","587c422af45e2d0f005e200d","587d84dc82f6f30f004ceee5"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"beta2","version_clean":"0.0.0","version":"0"},"category":{"_id":"5859e859e3306d1900126725","project":"568bdc1483d2061900d86cdc","__v":0,"version":"582789aabe5c080f00a5a7fe","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2016-12-21T02:26:33.525Z","from_sync":false,"order":5,"slug":"edge-server","title":"Edge Server"},"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-12-20T21:20:08.800Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":6,"body":"# Introduction\nThe edge server may be configured by editing the `localsettings.json` file in `/projects/droplit-edge`. Settings include things such as the ecosystem the edge is targeting and which plugins to enable.\n\n# keys\n\n## ecosystemId\nThe `ecosystemId` key represents the ecosystem that the edge server targets by specifying the id (e.g. `C5859a328e206a321b51f02f7`).\n\n## transport\nThe `transport` section is used to configure options related to the underlying web socket transport.\n\n### host\nThe `host` key configures the web socket server the Edge targets by specifying the host address. The host address for the release server is `wss://edge-ws.droplit.io`.\n\n### enableHeartbeat\nThe `enableHeartbeat` key configures whether to use a heartbeat with the WS server using a boolean value. The value is `true` by default. This is intended for use in debugging only and not expected for normal usage.\n\n## plugins\nThe `plugins` section configures the individual plugins used by the edge server. The configuration is specified using a key-value pair where the key is the plugin name and the value is the configuration for the individual settings.\n\nex., this configuration loads the Hue, Lifx, and Wemo plugins\n``` json\n{\n    \"plugins\": {\n        \"droplit-plugin-philips-hue\": {\n            \"enabled\": true\n        },\n        \"droplit-plugin-lifx\": {\n            \"enabled\": true\n        },\n        \"droplit-plugin-wemo\": {\n            \"enabled\": false\n        }\n    }\n}\n```\n\nFor brevity, there is an alternative “array” syntax where plugins are specified using an array. Using the array syntax, if a plugin is using the setting defaults, it may be specified with just its name as a string.\n\nex., the previous example using the array syntax\n``` json\n{\n    \"plugins\": [\n        \"droplit-plugin-philips-hue\",\n        \"droplit-plugin-lifx\",\n        {\n            \"name\": \"droplit-plugin-wemo\",\n            \"enabled\": false\n        }\n    ]\n}\n```\n\n### name\nThe `name` key is the name of the plugin using a string value. Only used with the “array” syntax.\n\n### enabled\nThe `enabled` key configures whether the plugin is enabled using a boolean value. Included pugins are enabled by default.\n\n### localServices\nThe `localServices` key configures the local services that the plugin is to subscribe to. The value is an array of strings representing the service names.\n\n## promotedMembers\nThe `promotedMembers` key specifies a mapping between a custom promotion name and local service member.\n\n## debug\nThe `debug` section is used to configure options related to debugging the edge server. None of the contained keys are expected to be enabled for normal usage.\n\n### generateHeapDump\nThe `generateHeapDump` key configures whether a heap dump is generated on a timed interval (every half hour) using a boolean value. The value is `false` by default.\n\n# Example settings\n``` json\n{\n    \"ecosystemId\": \"C5859a328e206a321b51f02f7\",\n    \"transport\": {\n        \"host\": \"wss://edge-ws.droplit.io\"\n    },\n    \"plugins\": {\n        \"droplit-plugin-philips-hue\": {\n            \"enabled\": true,\n            \"localServices\": [ \"Connectivity\" ]\n        },\n        \"droplit-plugin-lifx\": {\n            \"enabled\": true\n        }\n    },\n    \"promotedMembers\": {\n        \"connect\": \"Connectivity.connect\"\n    }\n}\n```","excerpt":"Specification for the Edge Server’s localsettings.json","slug":"edge-local-settings","type":"basic","title":"Edge Local Settings"}

Edge Local Settings

Specification for the Edge Server’s localsettings.json

# Introduction The edge server may be configured by editing the `localsettings.json` file in `/projects/droplit-edge`. Settings include things such as the ecosystem the edge is targeting and which plugins to enable. # keys ## ecosystemId The `ecosystemId` key represents the ecosystem that the edge server targets by specifying the id (e.g. `C5859a328e206a321b51f02f7`). ## transport The `transport` section is used to configure options related to the underlying web socket transport. ### host The `host` key configures the web socket server the Edge targets by specifying the host address. The host address for the release server is `wss://edge-ws.droplit.io`. ### enableHeartbeat The `enableHeartbeat` key configures whether to use a heartbeat with the WS server using a boolean value. The value is `true` by default. This is intended for use in debugging only and not expected for normal usage. ## plugins The `plugins` section configures the individual plugins used by the edge server. The configuration is specified using a key-value pair where the key is the plugin name and the value is the configuration for the individual settings. ex., this configuration loads the Hue, Lifx, and Wemo plugins ``` json { "plugins": { "droplit-plugin-philips-hue": { "enabled": true }, "droplit-plugin-lifx": { "enabled": true }, "droplit-plugin-wemo": { "enabled": false } } } ``` For brevity, there is an alternative “array” syntax where plugins are specified using an array. Using the array syntax, if a plugin is using the setting defaults, it may be specified with just its name as a string. ex., the previous example using the array syntax ``` json { "plugins": [ "droplit-plugin-philips-hue", "droplit-plugin-lifx", { "name": "droplit-plugin-wemo", "enabled": false } ] } ``` ### name The `name` key is the name of the plugin using a string value. Only used with the “array” syntax. ### enabled The `enabled` key configures whether the plugin is enabled using a boolean value. Included pugins are enabled by default. ### localServices The `localServices` key configures the local services that the plugin is to subscribe to. The value is an array of strings representing the service names. ## promotedMembers The `promotedMembers` key specifies a mapping between a custom promotion name and local service member. ## debug The `debug` section is used to configure options related to debugging the edge server. None of the contained keys are expected to be enabled for normal usage. ### generateHeapDump The `generateHeapDump` key configures whether a heap dump is generated on a timed interval (every half hour) using a boolean value. The value is `false` by default. # Example settings ``` json { "ecosystemId": "C5859a328e206a321b51f02f7", "transport": { "host": "wss://edge-ws.droplit.io" }, "plugins": { "droplit-plugin-philips-hue": { "enabled": true, "localServices": [ "Connectivity" ] }, "droplit-plugin-lifx": { "enabled": true } }, "promotedMembers": { "connect": "Connectivity.connect" } } ```