Projet

Général

Profil

Development #35641

astregs : get_association_link_means doit filtre les numéros de téléphone mobile et les formatter pour l'envoi de SMS

Ajouté par Mikaël Ates (de retour le 29 avril) il y a plus de 4 ans. Mis à jour il y a plus de 4 ans.

Statut:
Fermé
Priorité:
Haut
Assigné à:
Version cible:
-
Début:
28 août 2019
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Le get_association_link_means renvoi les canaux que l'usager peut utiliser pour l'appairage dont les téléphones mobiles servis dans le champs téléphone mobile de l'entrée contact d'astregs.

AstreGS pourrait contenir dans ce champs des numéros qui ne sont pas des numéros de mobile ou qui sont mal formattés.

Il faudrait donc s'assurer de numéros commençant par 06 et 07 et fournir en valeur des numéros à 10 chiffres (sans autres caractères). Si le numéro retraités n'est pas exmploitable ce n'est pas un canal éligible et il ne doit pas apparaître dans la liste.

Par exemple comme ici : https://dev.entrouvert.org/projects/passerelle/repository/revisions/master/entry/passerelle/apps/atos_genesys/models.py

...
tel1 = ''.join(c for c in identification.get('TEL_MOBILE', '') if c.isdigit())
...
if tel1 and tel1[:2] in ('06', '07'):
...

Fichiers

Révisions associées

Révision 79562129 (diff)
Ajouté par Serghei Mihai il y a plus de 4 ans

astregs: return only valid mobile number in linking means (#35641)

Révision 10aac441 (diff)
Ajouté par Serghei Mihai il y a plus de 4 ans

astregs: return only valid mobile number in linking means (#35641)

Historique

#1

Mis à jour par Serghei Mihai il y a plus de 4 ans

En brouillant au passage le prénom/nom, mail et numéro du contact au cas ou c'est une vraie information.

#2

Mis à jour par Thomas Noël il y a plus de 4 ans

Selon la description du ticket il faut aussi vérifier que len(mobile)==10.

Au fait, pas de gestion des numéros internationaux ? (même pour des numéros français on trouve parfois des +336xxx voire 00336xxx dans les bases).

Je mettrais un cinq étoiles au lieu de 4 qui peuvent laisser imaginer qu'il manque un chiffre.

Et pour aider au débogage par un admin fonctionnel, je renverrai un dico des données brutes à côté de data, genre response['rawdata'] = serialize_object(r)

#3

Mis à jour par Mikaël Ates (de retour le 29 avril) il y a plus de 4 ans

Ci-joint l'export des numéros de tel mobiles de la base.

Une analyse rapide me donne :

Total : 36883
{'06': 34510, '07': 808, '337': 1, '336': 3, '00337': 0, '00336': 6, 'autre': 1554}
Pourcentage de tel non exploitables : 4.21

Il y a 10 numéros internationaux français (+336, +337, 00336, 00337) sur 36000 mais c'est toujours mieux si on peut les gérer.

Dans les 4,2% de numéros non traités, beaucoup de numéros en 04, 05, 09 et des données incohérentes. Il me semble avoir aperçu un numéro belge...

Pour moi on peut partir (sereinement) sur cette base de retraitement des numéros mobiles.

#5

Mis à jour par Mikaël Ates (de retour le 29 avril) il y a plus de 4 ans

Pour les numéros non exploitables (1554) :

{'02': 1, '03': 5, 'autre': 314, '01': 4, '04': 1134, '05': 3, '08': 6, '09': 87}
#9

Mis à jour par Serghei Mihai il y a plus de 4 ans

En prenant en compte les remarques.

#10

Mis à jour par Thomas Noël il y a plus de 4 ans

Serghei Mihai a écrit :

En prenant en compte les remarques.

C'est pas sympa de changer la structure du code, ça complexifie vraiment la lecture du patch...

Le "return response" en cas de longueur différente de 10 est super moche.

Je sais qu'on va dire que "les tests permettent de voir que c'est tout bon", mais quand même.

Bref, j'ai poussé dans la branche une mini adaptation de ton premier patch qui était simple et que j'aimais bien, na.

Dès que les tests sont verts, je ack/push en master et hotfix.

#12

Mis à jour par Serghei Mihai il y a plus de 4 ans

Allez.

#13

Mis à jour par Thomas Noël il y a plus de 4 ans

  • Statut changé de Solution proposée à Résolu (à déployer)
commit 10aac4418482f197414473969972524f192da203
Author: Serghei Mihai <smihai@entrouvert.com>
Date:   Wed Aug 28 17:00:54 2019 +0200

    astregs: return only valid mobile number in linking means (#35641)

#14

Mis à jour par Frédéric Péters il y a plus de 4 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF