Projet

Général

Profil

0001-sms-set-a-default-template-for-SMS-connectors-45814.patch

Nicolas Roche, 11 août 2020 11:49

Télécharger (5,23 ko)

Voir les différences:

Subject: [PATCH] sms: set a default template for SMS connectors (#45814)

 passerelle/apps/mobyt/models.py  | 2 --
 passerelle/apps/orange/models.py | 2 --
 passerelle/apps/ovh/models.py    | 2 --
 passerelle/apps/oxyd/models.py   | 2 --
 passerelle/sms/models.py         | 2 ++
 5 files changed, 2 insertions(+), 8 deletions(-)
passerelle/apps/mobyt/models.py
14 14
        ('ll', _('sms low-cost')),
15 15
        ('n', _('sms top')),
16 16
    )
17 17
    username = models.CharField(verbose_name=_('Username'), max_length=64)
18 18
    password = models.CharField(verbose_name=_('Password'), max_length=64)
19 19
    quality = models.CharField(max_length=4, choices=MESSAGES_QUALITIES, default='l',
20 20
                               verbose_name=_('Message quality'))
21 21

  
22
    manager_view_template_name = 'passerelle/manage/messages_service_view.html'
23

  
24 22
    TEST_DEFAULTS = {
25 23
        'create_kwargs': {
26 24
            'username': 'john',
27 25
            'password': 'doe',
28 26
        },
29 27
        'test_vectors': [
30 28
            {
31 29
                'response': '',
passerelle/apps/orange/models.py
43 43
        raise OrangeError('Orange returned Invalid JSON content: %s' % response.text)
44 44

  
45 45

  
46 46
class OrangeSMSGateway(SMSResource):
47 47
    username = models.CharField(verbose_name=_('Identifier'), max_length=64)
48 48
    password = models.CharField(verbose_name=_('Password'), max_length=64)
49 49
    groupname = models.CharField(verbose_name=_('Group'), max_length=64)
50 50

  
51
    manager_view_template_name = 'passerelle/manage/messages_service_view.html'
52

  
53 51
    class Meta:
54 52
        verbose_name = _('Orange')
55 53
        db_table = 'sms_orange'
56 54

  
57 55
    def get_access_token(self):
58 56
        headers = {'content-type': 'application/x-www-form-urlencoded'}
59 57
        params = {'username': self.username, 'password': self.password}
60 58
        response = self.requests.post(URL_TOKEN, data=params, headers=headers)
passerelle/apps/ovh/models.py
65 65
        ),
66 66
    )
67 67
    msg_class = models.IntegerField(choices=MESSAGES_CLASSES, default=1,
68 68
                                    verbose_name=_('Message class'))
69 69
    credit_threshold_alert = models.PositiveIntegerField(verbose_name=_('Credit alert threshold'),
70 70
                                                         default=100)
71 71
    credit_left = models.PositiveIntegerField(verbose_name=_('Credit left'), default=0)
72 72

  
73
    manager_view_template_name = 'passerelle/manage/messages_service_view.html'
74

  
75 73
    TEST_DEFAULTS = {
76 74
        'create_kwargs': {
77 75
            'account': '1234',
78 76
            'username': 'john',
79 77
            'password': 'doe',
80 78
        },
81 79
        'test_vectors': [
82 80
            {
passerelle/apps/oxyd/models.py
7 7
from passerelle.utils.jsonresponse import APIError
8 8
from passerelle.sms.models import SMSResource
9 9

  
10 10

  
11 11
class OxydSMSGateway(SMSResource):
12 12
    username = models.CharField(verbose_name=_('Username'), max_length=64)
13 13
    password = models.CharField(verbose_name=_('Password'), max_length=64)
14 14

  
15
    manager_view_template_name = 'passerelle/manage/messages_service_view.html'
16

  
17 15
    TEST_DEFAULTS = {
18 16
        'create_kwargs': {
19 17
            'username': 'john',
20 18
            'password': 'doe',
21 19
        },
22 20
        'test_vectors': [
23 21
            {
24 22
                'response': '',
passerelle/sms/models.py
34 34

  
35 35
    default_country_code = models.CharField(verbose_name=_('Default country code'), max_length=3,
36 36
                                            default=u'33')
37 37
    default_trunk_prefix = models.CharField(verbose_name=_('Default trunk prefix'), max_length=2,
38 38
                                            default=u'0')  # Yeah France first !
39 39
    # FIXME: add regexp field, to check destination and from format
40 40
    max_message_length = models.IntegerField(_('Maximum message length'), default=160)
41 41

  
42
    manager_view_template_name = 'passerelle/manage/messages_service_view.html'
43

  
42 44
    def clean_numbers(self, destinations):
43 45
        numbers = []
44 46
        for dest in destinations:
45 47
            # most gateways needs the number prefixed by the country code, this is
46 48
            # really unfortunate.
47 49
            dest = dest.strip()
48 50
            number = ''.join(re.findall('[0-9]', dest))
49 51
            if dest.startswith('+'):
50
-