1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
"""
Module defining structures useful to the core class and related methods
"""
import collections
from gettext import gettext as _
# http://xmpp.org/extensions/xep-0045.html#errorstatus
ERROR_AND_STATUS_CODES = {
'401': _('A password is required'),
'403': _('Permission denied'),
'404': _('The room doesn’t exist'),
'405': _('Your are not allowed to create a new room'),
'406': _('A reserved nick must be used'),
'407': _('You are not in the member list'),
'409': _('This nickname is already in use or has been reserved'),
'503': _('The maximum number of users has been reached'),
}
# http://xmpp.org/extensions/xep-0086.html
DEPRECATED_ERRORS = {
'302': _('Redirect'),
'400': _('Bad request'),
'401': _('Not authorized'),
'402': _('Payment required'),
'403': _('Forbidden'),
'404': _('Not found'),
'405': _('Not allowed'),
'406': _('Not acceptable'),
'407': _('Registration required'),
'408': _('Request timeout'),
'409': _('Conflict'),
'500': _('Internal server error'),
'501': _('Feature not implemented'),
'502': _('Remote server error'),
'503': _('Service unavailable'),
'504': _('Remote server timeout'),
'510': _('Disconnected'),
}
possible_show = {'available':None,
'chat':'chat',
'away':'away',
'afk':'away',
'dnd':'dnd',
'busy':'dnd',
'xa':'xa'
}
Status = collections.namedtuple('Status', 'show message')
Command = collections.namedtuple('Command', 'func desc comp short usage')
|