'Register this device with a zone, through the central server directly'

def register_via_preregistered_key(self):

    own_device = Device.get_own_device()
    r = self.post('register', {'client_device': serialize([own_device], ensure_ascii=False)})
    if (((r.status_code == 500) or (r.status_code == 400)) and ("Device    has    no    field    named    'version'" in r.content)):
        raise Exception('Central    server    is    of    an    older    version    than    us?')
    elif (r.status_code != 200):
        raise Exception(r.content)
    else:
        return deserialize(r.content, src_version=None, dest_version=own_device.get_version())
