|
class UPnPErrorCodeDescriptions(object):
|
|
_descriptions = {
|
|
401: 'No action by that name at this service.',
|
|
402: ('Could be any of the following: not enough in args, args in the wrong order, one or m'
|
|
'ore in args are of the wrong data type.'),
|
|
403: '(Deprecated - no not use)',
|
|
501: 'MAY be returned if current state of service prevents invoking that action.',
|
|
600: 'The argument value is invalid',
|
|
601: ('An argument value is less than the minimum or more than the maximum value of the all'
|
|
'owed value range, or is not in the allowed value list.'),
|
|
602: 'The requested action is optional and is not implemented by the device.',
|
|
603: ('The device does not have sufficient memory available to complete the action. This MA'
|
|
'Y be a temporary condition; the control point MAY choose to retry the unmodified req'
|
|
'uest again later and it MAY succeed if memory is available.'),
|
|
604: ('The device has encountered an error condition which it cannot resolve itself and req'
|
|
'uired human intervention such as a reset or power cycle. See the device display or d'
|
|
'ocumentation for further guidance.'),
|
|
605: 'A string argument is too long for the device to handle properly.'
|
|
}
|
|
|
|
def __getitem__(self, key):
|
|
if not isinstance(key, int):
|
|
raise KeyError("'key' must be an integer")
|
|
if 606 <= key <= 612:
|
|
return 'These ErrorCodes are reserved for UPnP DeviceSecurity.'
|
|
elif 613 <= key <= 699:
|
|
return 'Common action errors. Defined by UPnP Forum Technical Committee.'
|
|
elif 700 <= key <= 799:
|
|
return 'Action-specific errors defined by UPnP Forum working committee.'
|
|
elif 800 <= key <= 899:
|
|
return 'Action-specific errors for non-standard actions. Defined by UPnP vendor.'
|
|
return self._descriptions[key]
|
|
|
|
|
|
ERR_CODE_DESCRIPTIONS = UPnPErrorCodeDescriptions()
|