Project

General

Profile

Development #69906

api : faire que la recherche en "texte libre" sur les utilisateurs fonctionne sur un numéro international lorsqu’on tape un numéro local

Added by Paul Marillonnet 4 months ago. Updated about 2 months ago.

Status:
Solution déployée
Priority:
Normal
Category:
-
Target version:
-
Start date:
05 October 2022
Due date:
% Done:

0%

Estimated time:
Patch proposed:
Yes
Planning:
No

Description

Dans l’api on peut taper un /api/users/?q=061234… et actuellement c’est tout simplement l’usager qui possède ce numéro qui ressort.
Avec #69365 on migre les numéros de téléphone connus d’authentic au format international E.164 mais on souhaiterait bien sûr conserver cette fonctionnalité.
Il faudrait aussi que le numéro de téléphone renvoyé en tant que données de l’usager, en réponse à cette recherche, soit lui aussi au format local.


Files


Related issues

Related to Publik - Development #49212: Création de compte avec un numéro de téléphone mobileEn cours01 October 2021

Actions

Associated revisions

Revision 3e53e2ec (diff)
Added by Paul Marillonnet about 2 months ago

api: let free text search accept local phone numbers (#69906)

History

#1

Updated by Paul Marillonnet 4 months ago

  • Related to Development #49212: Création de compte avec un numéro de téléphone mobile added
#2

Updated by Paul Marillonnet 4 months ago

#3

Updated by Benjamin Dauvergne 4 months ago

  • Status changed from Solution proposée to En cours

Le premier parse ne produira aucune recherche (le else dépend du deuxième try/except). Il faudrait un cas qui passe dans le premier try, un cas except/try/else et un cas try/except/except, pour tester toutes les branches.

#4

Updated by Benjamin Dauvergne 4 months ago

Aussi j'ai l'impression que ça fait doublon avec la recherche sur le numéro faite juste avant via clean_number.

#5

Updated by Paul Marillonnet 4 months ago

Benjamin Dauvergne a écrit :

Le premier parse ne produira aucune recherche (le else dépend du deuxième try/except). Il faudrait un cas qui passe dans le premier try, un cas except/try/else et un cas try/except/except, pour tester toutes les branches.

Ah oui en effet j’avais loupé ça, je corrige.

#6

Updated by Paul Marillonnet 4 months ago

Benjamin Dauvergne a écrit :

Aussi j'ai l'impression que ça fait doublon avec la recherche sur le numéro faite juste avant via clean_number.

Ok, je crois la manière correcte de procéder est :
· on cherche à parser un numéro globalement unique,
· si cela échoue, on cherche à parser un numéro composable depuis le pays par défaut dans la conf a2 (DEFAULT_COUNTRY_CODE),
· si cela échoue, on rebascule sur le clean_number standard.

Cette version dans le patche avec tous les embranchements testés.

#7

Updated by Benjamin Dauvergne 4 months ago

  • Status changed from Solution proposée to Solution validée

Paul Marillonnet a écrit :

Benjamin Dauvergne a écrit :

Aussi j'ai l'impression que ça fait doublon avec la recherche sur le numéro faite juste avant via clean_number.

Ok, je crois la manière correcte de procéder est :
· on cherche à parser un numéro globalement unique,
· si cela échoue, on cherche à parser un numéro composable depuis le pays par défaut dans la conf a2 (DEFAULT_COUNTRY_CODE),
· si cela échoue, on rebascule sur le clean_number standard.

Cette version dans le patche avec tous les embranchements testés.

Ça me va, par contre j'aime bien quand une même variable n'est pas réutilisée pour des types d'objet différents, ça rend la lecture difficile. Garder phone_number comme nom du résultat de .parse(), mais le résultat de .format_number() ou clean_number() devrait se nommer formatted_phone_number.

#8

Updated by Paul Marillonnet 4 months ago

Benjamin Dauvergne a écrit :

Ça me va, par contre j'aime bien quand une même variable n'est pas réutilisée pour des types d'objet différents, ça rend la lecture difficile. Garder phone_number comme nom du résultat de .parse(), mais le résultat de .format_number() ou clean_number() devrait se nommer formatted_phone_number.

Fair enough, je fais la modif’ et j’attends Jenkins vert avant de pousser.

#9

Updated by Paul Marillonnet about 2 months ago

  • Status changed from Solution validée to Résolu (à déployer)
commit 3e53e2ecf895f27fd33ee86f794c854d675c1554
Author: Paul Marillonnet <pmarillonnet@entrouvert.com>
Date:   Mon Oct 17 14:42:20 2022 +0200

    api: let free text search accept local phone numbers (#69906)
#10

Updated by Transition automatique about 2 months ago

  • Status changed from Résolu (à déployer) to Solution déployée

Also available in: Atom PDF