Skip to content
This repository has been archived by the owner on Mar 13, 2021. It is now read-only.

Improvements #83

Merged
merged 7 commits into from
Sep 24, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 45 additions & 12 deletions admin/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -334,26 +334,51 @@
function loadMap(map) {
var n = [];
var e = [];
// calculate hops
var hops = {};
for (var i in map) {
const item = map[i];
for (var x in item.neighbors) {
if (!hops[item.nodeID]) {
if (item.nodeID == 1) {
hops[item.nodeID] = 0;
} else if (hops[item.neighbors[x]]) {
hops[item.nodeID] = hops[item.neighbors[x]] + 1;
} else {
hops[item.nodeID] = 1;
}
}
if (!hops[item.neighbors[x]]) {
hops[item.neighbors[x]] = hops[item.nodeID] + 1;
}
}
}
for (var i in map) {
const item = map[i];
var shape = item.nodeID == 1 ? "star" : "box";
var background = item.nodeID == 1 ? "#615d5d" : "white";
var border;
if (hops[item.nodeID] == 1) {
border = "#19d156";
} else if (hops[item.nodeID] == 2) {
border = "#e0dd12";
} else if (hops[item.nodeID] == 3) {
border = "#e39c22";
} else {
border = "#615d5d";
}
var node = {
"id": item.nodeID,
"label": item.label,
"color": { background: 'white', border: 'black' },
"shape": 'box'
}
if (item.nodeID == 1) {
node['color'] = { border:'#c28927' };
node['shape'] = 'star';
"color": { "background": background, "border": border },
"shape": shape
}
n.push(node);
for (var x in item.neighbors) {
var edge = {
"from": item.nodeID,
"to": item.neighbors[x]
}
if (item.nodeID == 1) {
edge['color']= { color:'#19d156' };
"to": item.neighbors[x],
"color": { "color": '#615d5d' }
}
e.push(edge);
}
Expand All @@ -375,11 +400,19 @@
}
},
physics: {
enabled: false
enabled: false,
"forceAtlas2Based": {
"gravitationalConstant": -168,
"centralGravity": 0.1,
"springLength": 85,
"springConstant": 0.795,
"avoidOverlap": 0.75
},
"solver": "forceAtlas2Based"
}
};
var network = new vis.Network(container, data, options);
network.stabilize(100);
network.stabilize();
}

// the function loadSettings has to exist ...
Expand Down
174 changes: 50 additions & 124 deletions admin/js/comClasses.js
Original file line number Diff line number Diff line change
@@ -1,127 +1,4 @@
var comclasses = {
/*
#define BASIC_TYPE_CONTROLLER 0x01
#define BASIC_TYPE_STATIC_CONTROLLER 0x02
#define BASIC_TYPE_SLAVE 0x03
#define BASIC_TYPE_ROUTING_SLAVE 0x04

#define GENERIC_TYPE_GENERIC_CONTROLLER 0x01
#define GENERIC_TYPE_STATIC_CONTROLLER 0x02
#define GENERIC_TYPE_AV_CONTROL_POINT 0x03
#define GENERIC_TYPE_DISPLAY 0x06
#define GENERIC_TYPE_GARAGE_DOOR 0x07
#define GENERIC_TYPE_THERMOSTAT 0x08
#define GENERIC_TYPE_WINDOW_COVERING 0x09
#define GENERIC_TYPE_REPEATER_SLAVE 0x0F
#define GENERIC_TYPE_SWITCH_BINARY 0x10

#define GENERIC_TYPE_SWITCH_MULTILEVEL 0x11
#define SPECIFIC_TYPE_NOT_USED 0x00
#define SPECIFIC_TYPE_POWER_SWITCH_MULTILEVEL 0x01
#define SPECIFIC_TYPE_MOTOR_MULTIPOSITION 0x03
#define SPECIFIC_TYPE_SCENE_SWITCH_MULTILEVEL 0x04
#define SPECIFIC_TYPE_CLASS_A_MOTOR_CONTROL 0x05
#define SPECIFIC_TYPE_CLASS_B_MOTOR_CONTROL 0x06
#define SPECIFIC_TYPE_CLASS_C_MOTOR_CONTROL 0x07

#define GENERIC_TYPE_SWITCH_REMOTE 0x12
#define GENERIC_TYPE_SWITCH_TOGGLE 0x13
#define GENERIC_TYPE_SENSOR_BINARY 0x20
#define GENERIC_TYPE_SENSOR_MULTILEVEL 0x21
#define GENERIC_TYPE_SENSOR_ALARM 0xa1
#define GENERIC_TYPE_WATER_CONTROL 0x22
#define GENERIC_TYPE_METER_PULSE 0x30
#define GENERIC_TYPE_ENTRY_CONTROL 0x40
#define GENERIC_TYPE_SEMI_INTEROPERABLE 0x50
#define GENERIC_TYPE_NON_INTEROPERABLE 0xFF

#define SPECIFIC_TYPE_ADV_ZENSOR_NET_SMOKE_SENSOR 0x0a
#define SPECIFIC_TYPE_BASIC_ROUTING_SMOKE_SENSOR 0x06
#define SPECIFIC_TYPE_BASIC_ZENSOR_NET_SMOKE_SENSOR 0x08
#define SPECIFIC_TYPE_ROUTING_SMOKE_SENSOR 0x07
#define SPECIFIC_TYPE_ZENSOR_NET_SMOKE_SENSOR 0x09

#define COMMAND_CLASS_MARK 0xef
#define COMMAND_CLASS_BASIC 0x20
#define COMMAND_CLASS_VERSION 0x86
#define COMMAND_CLASS_BATTERY 0x80
#define COMMAND_CLASS_WAKE_UP 0x84
#define COMMAND_CLASS_CONTROLLER_REPLICATION 0x21
#define COMMAND_CLASS_SWITCH_MULTILEVEL 0x26
#define COMMAND_CLASS_SWITCH_ALL 0x27
#define COMMAND_CLASS_SENSOR_BINARY 0x30
#define COMMAND_CLASS_SENSOR_MULTILEVEL 0x31
#define COMMAND_CLASS_SENSOR_ALARM 0x9c
#define COMMAND_CLASS_ALARM 0x71
#define COMMAND_CLASS_MULTI_CMD 0x8F
#define COMMAND_CLASS_CLIMATE_CONTROL_SCHEDULE 0x46
#define COMMAND_CLASS_CLOCK 0x81
#define COMMAND_CLASS_ASSOCIATION 0x85
#define COMMAND_CLASS_CONFIGURATION 0x70
#define COMMAND_CLASS_MANUFACTURER_SPECIFIC 0x72
#define COMMAND_CLASS_APPLICATION_STATUS 0x22
#define COMMAND_CLASS_ASSOCIATION_COMMAND_CONFIGURATION 0x9B
#define COMMAND_CLASS_AV_CONTENT_DIRECTORY_MD 0x95
#define COMMAND_CLASS_AV_CONTENT_SEARCH_MD 0x97
#define COMMAND_CLASS_AV_RENDERER_STATUS 0x96
#define COMMAND_CLASS_AV_TAGGING_MD 0x99
#define COMMAND_CLASS_BASIC_WINDOW_COVERING 0x50
#define COMMAND_CLASS_CHIMNEY_FAN 0x2A
#define COMMAND_CLASS_COMPOSITE 0x8D
#define COMMAND_CLASS_DOOR_LOCK 0x62
#define COMMAND_CLASS_ENERGY_PRODUCTION 0x90
#define COMMAND_CLASS_FIRMWARE_UPDATE_MD 0x7a
#define COMMAND_CLASS_GEOGRAPHIC_LOCATION 0x8C
#define COMMAND_CLASS_GROUPING_NAME 0x7B
#define COMMAND_CLASS_HAIL 0x82
#define COMMAND_CLASS_INDICATOR 0x87
#define COMMAND_CLASS_IP_CONFIGURATION 0x9A
#define COMMAND_CLASS_LANGUAGE 0x89
#define COMMAND_CLASS_LOCK 0x76
#define COMMAND_CLASS_MANUFACTURER_PROPRIETARY 0x91
#define COMMAND_CLASS_METER_PULSE 0x35
#define COMMAND_CLASS_METER 0x32
#define COMMAND_CLASS_MTP_WINDOW_COVERING 0x51
#define COMMAND_CLASS_MULTI_INSTANCE_ASSOCIATION 0x8E
#define COMMAND_CLASS_MULTI_INSTANCE 0x60
#define COMMAND_CLASS_NO_OPERATION 0x00
#define COMMAND_CLASS_NODE_NAMING 0x77
#define COMMAND_CLASS_NON_INTEROPERABLE 0xf0
#define COMMAND_CLASS_POWERLEVEL 0x73
#define COMMAND_CLASS_PROPRIETARY 0x88
#define COMMAND_CLASS_PROTECTION 0x75
#define COMMAND_CLASS_REMOTE_ASSOCIATION_ACTIVATE 0x7c
#define COMMAND_CLASS_REMOTE_ASSOCIATION 0x7d
#define COMMAND_CLASS_SCENE_ACTIVATION 0x2b
#define COMMAND_CLASS_SCENE_ACTUATOR_CONF 0x2C
#define COMMAND_CLASS_SCENE_CONTROLLER_CONF 0x2D
#define COMMAND_CLASS_SCREEN_ATTRIBUTES 0x93
#define COMMAND_CLASS_SCREEN_MD 0x92
#define COMMAND_CLASS_SECURITY 0x98
#define COMMAND_CLASS_SENSOR_CONFIGURATION 0x9E
#define COMMAND_CLASS_SILENCE_ALARM 0x9d
#define COMMAND_CLASS_SIMPLE_AV_CONTROL 0x94
#define COMMAND_CLASS_SWITCH_BINARY 0x25
#define COMMAND_CLASS_SWITCH_TOGGLE_BINARY 0x28
#define COMMAND_CLASS_SWITCH_TOGGLE_MULTILEVEL 0x29
#define COMMAND_CLASS_THERMOSTAT_FAN_MODE 0x44
#define COMMAND_CLASS_THERMOSTAT_FAN_STATE 0x45
#define COMMAND_CLASS_THERMOSTAT_HEATING 0x38
#define COMMAND_CLASS_THERMOSTAT_MODE 0x40
#define COMMAND_CLASS_THERMOSTAT_OPERATING_STATE 0x42
#define COMMAND_CLASS_THERMOSTAT_SETBACK 0x47
#define COMMAND_CLASS_THERMOSTAT_SETPOINT 0x43
#define COMMAND_CLASS_TIME_PARAMETERS 0x8B
#define COMMAND_CLASS_TIME 0x8a
#define COMMAND_CLASS_USER_CODE 0x63
#define COMMAND_CLASS_ZIP_ADV_CLIENT 0x34
#define COMMAND_CLASS_ZIP_ADV_SERVER 0x33
#define COMMAND_CLASS_ZIP_ADV_SERVICES 0x2F
#define COMMAND_CLASS_ZIP_CLIENT 0x2e
#define COMMAND_CLASS_ZIP_SERVER 0x24
#define COMMAND_CLASS_ZIP_SERVICES 0x23
*/

0x20: {
name: 'BASIC',
role: 'switch',
Expand Down Expand Up @@ -217,7 +94,56 @@ var comclasses = {
0x2F: {name: 'ZIP_ADV_SERVICES', role: ''},
0x2e: {name: 'ZIP_CLIENT', role: ''},
0x24: {name: 'ZIP_SERVER', role: ''},
0x23: {name: 'ZIP_SERVICES', role: ''}
0x23: {name: 'ZIP_SERVICES', role: ''},
0x5B: {name: 'CENTRAL_SCENE', role: ''},
0x5D: {name: 'ANTI_THEFT', role: ''},
0x57: {name: 'APPLICATION_CAPABILITY', role: ''},
0x59: {name: 'ASSOCIATION_GROUP_INFORMATION', role: ''},
0x66: {name: 'BARRIER_OPERATOR', role: ''},
0x36: {name: 'BASIC_TARIFF_INFORMATION', role: ''},
0x56: {name: 'CRC_16_ENCAPSULATION', role: ''},
0x3A: {name: 'DEMAND_CONTROL_PLAN_CONFIGURATION', role: ''},
0x3B: {name: 'DEMAND_CONTROL_PLAN_MONITOR', role: ''},
0x5A: {name: 'DEVICE_RESET_LOCALLY', role: ''},
0x4C: {name: 'DOOR_LOCK_LOGGING', role: ''},
0x6F: {name: 'ENTRY_CONTROL', role: ''},
0x37: {name: 'HRV_STATUS', role: ''},
0x39: {name: 'HRV_CONTROL', role: ''},
0x6D: {name: 'HUMIDITY_CONTROL_MODE', role: ''},
0x6E: {name: 'HUMIDITY_CONTROL_OPERATING_STATE', role: ''},
0x64: {name: 'HUMIDITY_CONTROL_SETPOINT', role: ''},
0x74: {name: 'INCLUSION_CONTROLLER', role: ''},
0x5C: {name: 'IP_ASSOCIATION', role: ''},
0x6B: {name: 'IRRIGATION', role: ''},
0x69: {name: 'MAILBOX', role: ''},
0xEF: {name: 'SUPPORT_MARK', role: ''},
0x3C: {name: 'METER_TABLE_CONFIGURATION', role: ''},
0x3D: {name: 'METER_TABLE_MONITOR', role: ''},
0x3C: {name: 'METER_TABLE_PUSH_CONFIG', role: ''},
0x4D: {name: 'NETWORK_MGMT_BASIC', role: ''},
0x67: {name: 'NETWORK_MGMT_INSTALLATION', role: ''},
0x54: {name: 'NETWORK_MGMT_PRIMARY', role: ''},
0x52: {name: 'NETWORK_MGMT_PROXY', role: ''},
0x78: {name: 'NODE_PROVISIONING', role: ''},
0x3F: {name: 'PREPAYMENT', role: ''},
0x41: {name: 'PREPAYMENT_ENCAP', role: ''},
0x48: {name: 'RATE_TABLE_CONFIGURATION', role: ''},
0x49: {name: 'RATE_TABLE_MONITOR', role: ''},
0x53: {name: 'SCHEDULE', role: ''},
0x4E: {name: 'SCHEDULE_ENTRY_LOCK', role: ''},
0x9F: {name: 'SECURITY2', role: ''},
0x79: {name: 'SOUND_SWITCH', role: ''},
0x6C: {name: 'SUPERVISION', role: ''},
0x4A: {name: 'TARIFF_TABLE_CONFIGURATION', role: ''},
0x4B: {name: 'TARIFF_TABLE_MONITOR', role: ''},
0x55: {name: 'TRANSPORT_SERVICE', role: ''},
0x6A: {name: 'WINDOW_COVERING', role: ''},
0x4F: {name: 'ZIP_6LOWPAN', role: ''},
0x5F: {name: 'ZIP_GATEWAY', role: ''},
0x68: {name: 'ZIP_NAMING', role: ''},
0x58: {name: 'ZIP_ND', role: ''},
0x61: {name: 'ZIP_PORTAL', role: ''},
0x5E: {name: 'ZWAVE_PLUS_INFO', role: ''}
};
if (typeof module !== 'undefined' && module.parent) {
module.exports = comclasses;
Expand Down
Loading