예제 #1
0
    def clientRegisterDevice(self, data):
        try:
            if self.authenticated:
                self.user.update()
                device_id = data['device']
                if not device_id:
                    self.sendAPI(1,447,'Value empty')
                    return

                if len(device_id) > 120:
                    self.sendAPI(1,449,'Value exceeds maximum input length')
                    return

                device = Device(device_id)
                phone_number = data['phone_number']
                if not isinstance(phone_number, int):
                    self.sendAPI(1,448,'Value is wrong data type')
                    return

                if phone_number > 2147483646:
                    self.sendAPI(1,449,'Value exceeds maximum input length')
                    return

                if phone_number < 0:
                    self.sendAPI(1,447,'Value empty')
                    return

                if device.exist():
                    self.sendAPI(1,436,'Device already exist')
                    return

                device.user = self.user
                if 'phone_number' in data:
                    device.phone_number = phone_number

                self.user.addDevice(device)
                self.sendAPI(0,236,'Device registered')
            else:
                self.sendAPI(1,410,'User unauthorized')

        except (KeyError, TypeError):
            self.sendAPI(1,401,'Not in reference format')
예제 #2
0
    def clientDeleteDevice(self, data):
        try:
            if self.authenticated:
                self.user.update()
                device_id = data['device']
                if not device_id:
                    self.sendAPI(1,447,'Value empty')
                    return

                if not isinstance(device_id, basestring):
                    self.sendAPI(1,448,'Value is wrong data type')
                    return

                device = Device(device_id)
                if device.exist():
                    self.user.deleteDevice(device)

                self.sendAPI(0,266,'Device deleted')
            else:
                self.sendAPI(1,410,'User unauthorized')

        except (KeyError, TypeError):
            self.sendAPI(1,401,'Not in reference format')