'Deletes several devices.
Args:
user_id (str): The ID of the user which owns the devices
device_ids (list): The IDs of the devices to delete
Returns:
defer.Deferred'

@defer.inlineCallbacks
def delete_devices(self, user_id, device_ids):

    (yield self._simple_delete_many(table='devices', column='device_id', iterable=device_ids, keyvalues={'user_id': user_id}, desc='delete_devices'))
    for device_id in device_ids:
        self.device_id_exists_cache.invalidate((user_id, device_id))
