public function __construct($user = null, $pass = null, $host = 'http://bsews1.ipt.intechnology.co.uk/webservice/services/ProvisioningService', $device_map = []) { $this->errorControl = CoreFactory::getErrorControl(); $this->client = CoreFactory::getOCIClient($host, false); $this->client->setTimeout(5); if (!$this->client->login($user, $pass)) { throw new Exception("Unable to login"); } if (empty($device_map)) { $this->device_map['Polycom Soundpoint IP 321'] = 'DMS-Polycom-321'; $this->device_map['Polycom Soundpoint IP 331'] = 'DMS-Polycom-331'; $this->device_map['Polycom Soundpoint IP 430'] = 'DMS-Polycom-430'; $this->device_map['Polycom Soundpoint IP 450'] = 'DMS-Polycom-450'; $this->device_map['Polycom Soundpoint IP 550'] = 'DMS-Polycom-550'; $this->device_map['Polycom Soundpoint IP 650'] = 'DMS-Polycom-650'; $this->device_map['Polycom Soundpoint IP 670'] = 'DMS-Polycom-670'; $this->device_map['Polycom Soundpoint IP 5000'] = 'DMS-Polycom-5000'; $this->device_map['Polycom Soundpoint IP 6000'] = 'DMS-Polycom-6000'; $this->device_map['Polycom Soundpoint IP 7000'] = 'DMS-Polycom-7000'; $this->device_map['Polycom SoundStation IP 5000'] = 'DMS-Polycom-5000'; $this->device_map['Polycom SoundStation IP 5000'] = 'DMS-Polycom-5000'; } else { $this->device_map = $device_map; } }