Exemplo n.º 1
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.THOMSON_COMMON_DIR = os.path.join(cls.TFTPROOT, "Thomson/")
     cls.THOMSON_COMMON_INF = cls.THOMSON_COMMON_DIR # + "2030S_common"
     cls.THOMSON_SPEC_TXT_TEMPLATE = cls.TEMPLATES_DIR # + "2030S_template.txt"
     cls.THOMSON_SPEC_TXT_BASENAME = cls.TFTPROOT # + "2030S_template.txt"
Exemplo n.º 2
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in self.POLYCOM_SSIP_MODELS \
     and self.phone['model'] not in [x[0] for x in self.POLYCOM_MODELS]:
         raise ValueError, "Unknown Polycom model %r" % self.phone['model']
Exemplo n.º 3
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.POLYCOM_COMMON_DIR = os.path.join(cls.TFTPROOT, "Polycom/")
Exemplo n.º 4
0
            if self.REGISTRAR_BACKUP and self.REGISTRAR_BACKUP == self.PROXY_BACKUP:
                register = 1
            else:
                register = 0
            lines.append('reg.1.server.2.register="%s"' % register)
            backup_pbx = '\n'.join(lines)
        else:
            backup_pbx = ''

        txt = xivo_config.txtsubst(
                template_lines,
                PhoneVendorMixin.set_provisioning_variables(
                    provinfo,
                    { 'user_vmail_addr':        self.xml_escape(provinfo['vmailaddr']),
                      'function_keys':          fkeys_config_lines,
                      'language':               language,
                      'timezone':               timezone,
                      'backup_pbx':             backup_pbx,
                    },
                    self.xml_escape,
                    clean_extension),
                cfg_filename,
                'utf8')

        if dry_run:
            return ''.join(txt)
        else:
            self._write_cfg(tmp_filename, cfg_filename, txt)
            
    @classmethod
    def __format_function_keys(cls, funckey, model):
        max_fkey_no_map = {
Exemplo n.º 5
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in [x[0] for x in self.LINKSYS_MODELS]:
         raise ValueError, "Unknown Linksys model %r" % self.phone['model']
Exemplo n.º 6
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.CISCO_COMMON_DIR = "/tftpboot/"
Exemplo n.º 7
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.SNOM_SPEC_DIR = os.path.join(cls.TFTPROOT, "Snom")
     cls.SNOM_SPEC_TEMPLATE = os.path.join(cls.TEMPLATES_DIR, "snom-template.htm")
Exemplo n.º 8
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.SIEMENS_COMMON_DIR = os.path.join(cls.TFTPROOT, "Siemens/")
Exemplo n.º 9
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'].upper() not in self.SIEMENS_MODELS:
         raise ValueError, "Unknown Siemens model %r" % self.phone['model']
Exemplo n.º 10
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone["model"] not in self.ZENITEL_MODELS:
         raise ValueError, "Unknown Zenitel model %r" % self.phone["model"]
Exemplo n.º 11
0
                      errno,
                      errstr,
                      template_common_path)
            template_file = open(template_common_path)

        template_lines = template_file.readlines()
        tmp_filename = os.path.join(self.SIEMENS_COMMON_DIR, "%s.tmp" % phone_file)
        cfg_filename = tmp_filename[:-4]

        provinfo['subscribemwi'] = str(int(bool(int(provinfo.get('subscribemwi', 0)))))

        txt = xivo_config.txtsubst(
                template_lines,
                PhoneVendorMixin.set_provisioning_variables(
                    provinfo,
                    { 'config_sha1sum': provinfo['sha1sum'],
                    },
                    format_extension=clean_extension),
                cfg_filename,
                'utf8')

        self._write_cfg(tmp_filename, cfg_filename, txt)

    def __get_config_sha1sum(self):
        "Get sha1sum value from configuration."
        rcp = Siemens.get_config(self.SIEMENS_COMMON_DIR, self.phone['model'], self.phone['macaddr'])

        if rcp.has_option('miscellaneous', 'config_sha1sum'):
            sha1sum = rcp.get('miscellaneous', 'config_sha1sum')
        else:
            sha1sum = '1'
Exemplo n.º 12
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.ZENITEL_COMMON_DIR = os.path.join(cls.TFTPROOT, "Zenitel", "")
Exemplo n.º 13
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone["model"] not in [x[0] for x in self.AASTRA_MODELS] + [x[1] for x in self.AASTRA_MODELS]:
         raise ValueError, "Unknown Aastra model %r" % self.phone["model"]
Exemplo n.º 14
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.AASTRA_COMMON_DIR = os.path.join(cls.TFTPROOT, "Aastra/")
Exemplo n.º 15
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.NORTEL_COMMON_DIR = os.path.join(cls.TFTPROOT, 'Nortel')
Exemplo n.º 16
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.YEALINK_COMMON_DIR = os.path.join(cls.TFTPROOT, "Yealink/")
Exemplo n.º 17
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in self.NORTEL_MODELS:
         raise ValueError("Unknown Nortel model %r" % self.phone['model'])
     self._cleaned_macaddr = self.phone['macaddr'].replace(":", "").upper()
Exemplo n.º 18
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'].upper() not in self.YEALINK_MODELS:
         raise ValueError, "Unknown Yealink model %r" % self.phone['model']
Exemplo n.º 19
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in self.SNOM_MODELS:
         raise ValueError, "Unknown Snom model %r" % self.phone['model']
Exemplo n.º 20
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.CISCOSMB_COMMON_DIR = os.path.join(cls.TFTPROOT, 'CiscoSMB', '')
Exemplo n.º 21
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in [x[0] for x in self.THOMSON_MODELS]:
         raise ValueError, "Unknown Thomson model %r" % self.phone['model']
Exemplo n.º 22
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in self.CISCOSMB_MODELS:
         raise ValueError, "Unknown Cisco SMB model %r" % self.phone['model']
Exemplo n.º 23
0
 def __init__(self, phone):
     PhoneVendorMixin.__init__(self, phone)
     if self.phone['model'] not in [x[0] for x in self.CISCO_MODELS]:
         raise ValueError, "Unknown Cisco model %r" % self.phone['model']
Exemplo n.º 24
0
 def setup(cls, config):
     "Configuration of class attributes"
     PhoneVendorMixin.setup(config)
     cls.LINKSYS_COMMON_DIR = os.path.join(cls.TFTPROOT, "Linksys/")