From b7f9a5f2e86591a94ee45c96981325bb12dc6ef1 Mon Sep 17 00:00:00 2001 From: Ruel Tmeizeh - RuhNet Date: Sun, 17 Dec 2023 16:13:04 -0500 Subject: [PATCH] Added device password functionality. Other minor changes and corrections. --- README.md | 6 +- app.js | 186 +++++++++++++++++- i18n/en-US.json | 16 +- metadata/app.json | 10 +- ...visioner_icon.png => provisioner_icon.png} | Bin .../screenshots/provisioner_screenshot.png | Bin 0 -> 73830 bytes style/app.css | 19 +- views/aclinfo.html | 4 +- views/devicepassword.html | 16 ++ views/layout.html | 4 +- 10 files changed, 231 insertions(+), 30 deletions(-) rename metadata/icon/{Provisioner_icon.png => provisioner_icon.png} (100%) create mode 100644 metadata/screenshots/provisioner_screenshot.png create mode 100644 views/devicepassword.html diff --git a/README.md b/README.md index 338ffb5..77bf601 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,10 @@ Clone the repository to your Monster UI apps directory (often /var/www/html/mons ```bash cd /var/www/html/monster-ui/apps -git clone https://github.com/ruhnet/monster-ui-ruhnet-provisioner provisioner +git clone https://github.com/ruhnet/monster-ui-ruhnet-provisioner ruhnet-provisioner -sup crossbar_maintenance init_app '/var/www/html/monster-ui/apps/provisioner' \ -'http://mycrossbarapi.tld:8000/v2' +sup crossbar_maintenance init_app '/var/www/html/monster-ui/apps/ruhnet-provisioner' \ +'https://mycrossbarapi.tld:8443/v2' ``` ![Provisioner Screen](https://github.com/ruhnet/monster-ui-ruhnet-provisioner/raw/master/metadata/screenshots/Provisioner.png) diff --git a/app.js b/app.js index 97b4676..c3e17da 100644 --- a/app.js +++ b/app.js @@ -19,6 +19,46 @@ define(function (require) { 'url': 'api/{accountId}/initialtoken', 'verb': 'GET' }, + 'provisioner.phone_configfile.list': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/customconfigs', + 'verb': 'GET' + }, + 'provisioner.phone_configfile.get': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/customconfigs', + 'verb': 'GET' + }, + 'provisioner.phone_configfile.add': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/customconfigs', + 'verb': 'PUT' + }, + 'provisioner.phone_configfile.remove': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/customconfigs', + 'verb': 'DELETE' + }, + 'provisioner.account_configfile.list': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/accountconfigs', + 'verb': 'GET' + }, + 'provisioner.account_configfile.get': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/accountconfigs', + 'verb': 'GET' + }, + 'provisioner.account_configfile.add': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/accountconfigs', + 'verb': 'PUT' + }, + 'provisioner.account_configfile.remove': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/files/accountconfigs', + 'verb': 'DELETE' + }, 'provisioner.acls.list': { 'apiRoot': monster.config.api.provisioner, 'url': 'api/{accountId}/acl', @@ -33,6 +73,21 @@ define(function (require) { 'apiRoot': monster.config.api.provisioner, 'url': 'api/{accountId}/acl', 'verb': 'DELETE' + }, + 'provisioner.devicepassword.get': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/devicepassword', + 'verb': 'GET' + }, + 'provisioner.devicepassword.set': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/devicepassword', + 'verb': 'POST' + }, + 'provisioner.devicepassword.delete': { + 'apiRoot': monster.config.api.provisioner, + 'url': 'api/{accountId}/devicepassword', + 'verb': 'DELETE' } }, @@ -92,6 +147,7 @@ define(function (require) { $(document).ready(function (e) { loadProvUrl(); loadAcls(); + loadDevicePassword(); //setInterval(loadParkingLot, 30000); }); @@ -99,6 +155,7 @@ define(function (require) { $template.find("#refresh").on("click", function (e) { loadProvUrl(); loadAcls(); + loadDevicePassword(); }); @@ -152,7 +209,6 @@ define(function (require) { }); } //end function loadProvUrl(); - function loadAcls() { self.getAcls(function (aclinfo) { var $aclinfo = $( @@ -183,8 +239,134 @@ define(function (require) { }); } //end function loadAcls(); + function loadDevicePassword() { + self.getDevicePassword(function (devicepassword) { + var $devicepassword = $( + self.getTemplate({ + name: "devicepassword", + data: { + devicepassword: devicepassword, + }, + }) + ); + $template.find(".devicepassword").empty().append($devicepassword); + + ///Delete device password binding + $template.find(".devicepassword-delete").on("click", function (e) { + self.deleteDevicePassword("#devicepassword"); + }); + + //Add device password binding + $template.find("#devicepassword-set-button").on("click", function (e) { + let dp = $template.find("#devicepassword-set-input")[0].value; + if (dp.length >= 3) { //min length 3 chars + self.setDevicePassword(dp); + } else { + monster.ui.alert("Password too short: must be at least 3 characters."); + } + }); + }); + } //end function loadDevicePassword(); + }, //bindEvents + updateDevicePasswordTemplate: function (devicepassword) { + var self = this; + var $aclinfo = $( + app.getTemplate({ + name: "devicepassword", + data: { + devicepassword: devicepassword, + }, + }) + ); + }, + + getDevicePassword: function (callback) { + var self = this; + monster.request({ + resource: "provisioner.devicepassword.get", + data: { + accountId: self.accountId, + userId: monster.apps.auth.currentUser.id, + }, + success: function(res) { + //console.log(data); + callback(res.data); + }, + error: function(res) { + if (res.status == 404) { + callback([]); //Populate results with nothing + } else if (res.status == 401) { + monster.util.logoutAndReload(); + } else { + monster.ui.alert("ERROR: Failed to get account device password: " + parsedError); + callback([]); //Populate results with nothing + } + } + }); + }, //end getDevicePassword + + setDevicePassword: function(devicepassword) { + var self = this; + + monster.request({ + resource: "provisioner.devicepassword.set", + data: { + accountId: self.accountId, + userId: monster.apps.auth.currentUser.id, + data: { + password: devicepassword + } + }, + success: function(res) { + //console.log(data); + let newpassword = `
${devicepassword}  
`; + $("#devicepassword-list").append(newpassword); + + $('#refresh').click(); //?? + + }, + error: function(res) { + if (res.status == 401) { + //monster.util.logoutAndReload(); + } else { + monster.ui.alert("ERROR: Failed to add account device password: " + parsedError); + } + } + }); + }, + + deleteDevicePassword: function(devicepassword) { + var self = this; + monster.request({ + resource: "provisioner.devicepassword.delete", + data: { + accountId: self.accountId, + userId: monster.apps.auth.currentUser.id, + data: { + devicepassword: devicepassword + } + }, + success: function(res) { + //console.log(data); + //self.getAcls(self.updateAclsTemplate); + //"select[title='" + acl + "']").remove(); + $('#refresh').click(); + }, + error: function(res) { + if (res.status == 401) { + monster.util.logoutAndReload(); + } else { + monster.ui.alert("ERROR: Failed to delete account device password: " + parsedError); + } + } + }); + }, + + + + updateAclsTemplate: function (aclinfo) { var self = this; var $aclinfo = $( @@ -251,7 +433,7 @@ define(function (require) { success: function(res) { //console.log(data); //acl = res.data.acls[res.data.acls.length - 1]; - let newacl = `
${acl}  
`; + let newacl = `
${acl}  
`; $("#acl-list").append(newacl); $('#refresh').click(); }, diff --git a/i18n/en-US.json b/i18n/en-US.json index ceda3c9..2f08793 100644 --- a/i18n/en-US.json +++ b/i18n/en-US.json @@ -8,17 +8,25 @@ "helptext": "Retrieve a call by clicking the red panel, the slot number, or the caller name/number. Call the person who parked the call by clicking their name or number. The parking lot will auto-refresh every 30 seconds." }, "provurl": { - "description":"Provisioning URL", - "subtitle":"(Does not require IP ACL)", - "tooltip":"For clients at an IP ACL address/network, you may use a shortened generic form of the URL, by replacing the account ID and secret token with an 'x'. E.g. 'https://provisioner.mydomain.com/p/x/x'" + "description": "Provisioning URL", + "subtitle": "(Does not require IP ACL)", + "tooltip": "For clients at an IP ACL address/network, you may use a shortened generic form of the URL, by replacing the account ID and secret token with an 'x'. E.g. 'https://provisioner.mydomain.com/p/x/x'" }, "acls": { "description": "IP ACLs", "noAcls": "No IP ACLs defined on this account.", "addAcl": { - "tooltip":"IP network (v4 or v6) or single address in CIDR format. E.g. 198.51.100.128/32 or 2001:1a:4c9::18/112", + "tooltip": "IP network (v4 or v6) or single address in CIDR format. E.g. 198.51.100.128/32 or 2001:1a:4c9::18/112", "aclAddButton": "Add ACL" } + }, + "devicePassword": { + "description": "Device Password", + "notset": "No device password is set on this account. Devices will have their admin password set to their own MAC address (all lowercase with no colons e.g.: 'a2fe805b735d').", + "setDevicePassword": { + "tooltip": "Set the password used for devices in this account. (The phone web interface password.)", + "passwordSetButton": "Set Password" + } } } } diff --git a/metadata/app.json b/metadata/app.json index a388612..0b9823f 100644 --- a/metadata/app.json +++ b/metadata/app.json @@ -1,11 +1,12 @@ { - "name": "provisioner", + "name": "ruhnet-provisioner", "i18n": { "en-US": { "label": "RuhNet Provisioner", "description": "Control provisioner settings.", "features": [ "Add Phone Models", + "Set Device Password", "Control IP ACLs" ] } @@ -13,15 +14,14 @@ "tags": [ "developer" ], - "icon": "Provisioner_app.png", + "icon": "provisioner_icon.png", "api_url": "", "author": "RuhNet", - "version": "1.0", + "version": "1.1", "license": "GPLv3", "price": 0, "screenshots": [ - "Provisioner1.png", - "Provisioner2.png" + "provisioner_screenshot.png" ], "urls": { "documentation": "{documentation_url}", diff --git a/metadata/icon/Provisioner_icon.png b/metadata/icon/provisioner_icon.png similarity index 100% rename from metadata/icon/Provisioner_icon.png rename to metadata/icon/provisioner_icon.png diff --git a/metadata/screenshots/provisioner_screenshot.png b/metadata/screenshots/provisioner_screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..b1d98bc4373394f94c6833cb9f0f8b5d9fcecf12 GIT binary patch literal 73830 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 lEg<~=4D|kM)c3oHX{nq(2FVav{ +

{{ i18n.provisioner.acls.description }}

{{#each acls}} @@ -11,7 +11,7 @@

-
+
diff --git a/views/devicepassword.html b/views/devicepassword.html new file mode 100644 index 0000000..0ba20e6 --- /dev/null +++ b/views/devicepassword.html @@ -0,0 +1,16 @@ +
+

{{ i18n.provisioner.devicePassword.description }}

+
+ {{#if devicepassword}} +
{{devicepassword}}  
+ {{else}} + +
{{ @root.i18n.provisioner.devicePassword.notset }}
+ {{/if}} +
+
+
+ +
+
+ diff --git a/views/layout.html b/views/layout.html index d04b22e..35e1373 100644 --- a/views/layout.html +++ b/views/layout.html @@ -7,11 +7,13 @@