diff --git a/i18n/en-US.json b/i18n/en-US.json index 79679284..6d880651 100644 --- a/i18n/en-US.json +++ b/i18n/en-US.json @@ -432,6 +432,12 @@ "new": "New Softphone", "deviceName": "Device Name" }, + "teammate": { + "addTitle": "Adding a TeamMate Device", + "editTitle": "Editing TeamMate Device: {{name}}", + "new": "New TeamMate Device", + "deviceName": "Device Name" + }, "ata": { "addTitle": "Adding an ATA", "editTitle": "Editing ATA: {{name}}", @@ -459,6 +465,7 @@ "smartphone": "Smartphone", "mobile": "Business Mobile", "softphone": "Soft Phone", + "teammate": "TeamMate", "landline": "Landline", "fax": "Fax", "ata": "ATA", diff --git a/submodules/devices/devices.js b/submodules/devices/devices.js index dba20235..6a2aaeed 100644 --- a/submodules/devices/devices.js +++ b/submodules/devices/devices.js @@ -7,6 +7,12 @@ define(function(require) { return _.every([dest, src], _.isArray) ? src : undefined; }; + var showTeammateDevice = _ + .chain(monster.config) + .get('allowedExtraDeviceTypes', []) + .includes('teammate') + .value(); + var app = { requests: { @@ -32,23 +38,24 @@ define(function(require) { appFlags: { devices: { iconClassesByDeviceTypes: { - application: 'icon-telicon-apps', - ata: 'icon-telicon-ata', - cellphone: 'fa fa-phone', - fax: 'icon-telicon-fax', - landline: 'icon-telicon-home', - mobile: 'icon-telicon-sprint-phone', - sip_device: 'icon-telicon-voip-phone', - sip_uri: 'icon-telicon-voip-phone', - smartphone: 'icon-telicon-mobile-phone', - softphone: 'icon-telicon-soft-phone' + application: 'apps', + ata: 'device-ata', + cellphone: 'phone', + fax: 'device-fax', + landline: 'home', + mobile: 'device-sprint-phone', + sip_device: 'device-voip-phone', + sip_uri: 'device-voip-phone', + smartphone: 'device-mobile', + softphone: 'device-soft-phone', + teammate: 'device-mst' }, /** * Lists device types allowed to be added by devicesRenderAdd. * The order is important and controls the list rendered in DOM. * @type {Array} */ - addableDeviceTypes: [ + addableDeviceTypes: _.flatten([[ 'sip_device', 'cellphone', 'smartphone', @@ -57,12 +64,14 @@ define(function(require) { 'fax', 'ata', 'sip_uri' - ], + ], showTeammateDevice ? [ + 'teammate' + ] : []]), /** * Lists device types allowed to be edited by devicesRenderEdit. * @type {Array} */ - editableDeviceTypes: [ + editableDeviceTypes: _.flatten([[ 'ata', 'cellphone', 'fax', @@ -73,6 +82,9 @@ define(function(require) { 'smartphone', 'softphone' ], + showTeammateDevice ? [ + 'teammate' + ] : []]), provisionerConfigFlags: monster.config.whitelabel.provisioner } }, @@ -1218,7 +1230,19 @@ define(function(require) { ])) }, smartphone: _.merge({}, sipSettings, callForwardSettings), - softphone: _.merge({}, sipSettings) + softphone: _.merge({}, sipSettings), + teammate: _.merge({ + media: { + encryption: { + enforce_security: true, + webrtc: false, + methods: ['srtp'] + }, + audio: { + codecs: ['PCMU', 'PCMA'] + } + } + }, sipSettings) }; return _.get(defaultsPerType, type, {}); diff --git a/submodules/devices/devices.scss b/submodules/devices/devices.scss index 1020054f..14ff2595 100644 --- a/submodules/devices/devices.scss +++ b/submodules/devices/devices.scss @@ -182,8 +182,9 @@ line-height: 55px; } -#devices_container .devices-grid .grid-row .grid-cell.type .first-line > i { - font-size: 24px; +#devices_container .devices-grid .grid-row .grid-cell.type .first-line > svg { + width: 24px; + height: 24px; } #devices_container .devices-grid .grid-row .grid-cell.type .second-line { @@ -192,13 +193,13 @@ line-height: 20px; } -#devices_container .devices-grid .grid-row .grid-cell.registered i { +#devices_container .devices-grid .grid-row .grid-cell.registered svg { color: #44CC44; } -#devices_container .devices-grid .grid-row .grid-cell.unregistered i { +#devices_container .devices-grid .grid-row .grid-cell.unregistered svg { color: #EE1212; } -#devices_container .devices-grid .grid-row .grid-cell.disabled i { +#devices_container .devices-grid .grid-row .grid-cell.disabled svg { color: #333333; } @@ -276,6 +277,12 @@ vertical-align: middle; } +.voip-edit-device-popup .edit-device .title-bar .device-title .device-icon > svg { + height: 48px; + width: 48px; + vertical-align: middle; +} + .voip-edit-device-popup .edit-device .title-bar .device-title .device-image { border-radius: 2px; border: 1px solid #CCC; diff --git a/submodules/devices/views/devices-teammate.html b/submodules/devices/views/devices-teammate.html new file mode 100644 index 00000000..21eb642d --- /dev/null +++ b/submodules/devices/views/devices-teammate.html @@ -0,0 +1,182 @@ +