PDA

View Full Version : [java] validare numero di telefono


JohnMarston
24-02-2016, 19:25
Google, yahoo, fb e altri quando chiedono un numero di telefono, riescono a capire se il numero che hai inserito è valido ossia reale oppure no. Addirittura se effettui una registrazione su Yahoo e cerchi di inserire un numero preso da servizi online che ti forniscono numeri telefonici temporanei, si accorge e ti comunica che il numero non è valido. Mi chiedevo se qualcuno conosce il modo per controllare che i numeri inseriti in un form siano reali oppure inventati o presi da servizi online. Ovviamente non mi riferisco alla stringa, ma al controllo, insomma alla validazione del numero vero e proprio.

morellik
26-02-2016, 11:18
Non vorrei dire una sciocchezza, ma credo che senza appigli a servizi esterni tipo http://www.phone-validator.net/phone-number-online-validation-api.html oppure una query a http://www.whooming.com/en-US/ non sia possibile farlo.

JohnMarston
26-02-2016, 22:19
Grazie è già qualcosa... Però a pagamento... :( Qualcosa di free?

morellik
29-02-2016, 08:25
Puoi fare query al sito delle pagine bianche.

JohnMarston
03-03-2016, 22:25
Scusa!? Cioè!? Intendi il servizio tipo rubrica telefonica?
Non credo che nei loro archivi ci siano anche i cellulari. Considera che non mi riferisco ai soli cell italiani. Possibile che non esista un algoritmo per validare questi numeri? A chi potrei rivolgermi?

morellik
04-03-2016, 10:16
Scusa!? Cioè!? Intendi il servizio tipo rubrica telefonica?
Non credo che nei loro archivi ci siano anche i cellulari. Considera che non mi riferisco ai soli cell italiani. Possibile che non esista un algoritmo per validare questi numeri? A chi potrei rivolgermi?

Qui non si tratta di un algoritmo. Se non ti appoggi ad un servizio esterno che ti valida il numero come associato ad un cliente credo tu non ne esca.

Hellzakk
04-03-2016, 11:46
quoto quanto sopra.

Secondo quale principio un algoritmo dovrebbe conoscere se il numero x è già stato attivano mentre quello x+1 no?

franksisca
10-03-2016, 14:01
sono due concetti diversi:

1) il numero è valido?
Hai bisogno di un servizio che mi aiuti nel verificarlo, che quindi simuli un sms/chiamata e che faccia tutto per conto suo
2) il numero di telefono è formattato bene?
In questo caso è molto semplice, basta usare una RegEx ed il gioco è fatto.

JohnMarston
14-03-2016, 15:48
sono due concetti diversi:

1) il numero è valido?
Hai bisogno di un servizio che mi aiuti nel verificarlo, che quindi simuli un sms/chiamata e che faccia tutto per conto suo
2) il numero di telefono è formattato bene?
In questo caso è molto semplice, basta usare una RegEx ed il gioco è fatto.

Oltre al naturale RegEx devo verificare che dall'altra parte risponda qualcuno, quindi che sia valido. Ovviamente mi riferisco anche a numeri internazionali.
Esiste un modo, perché ho visto in giro (yahoo per esempio è il migliore). L'ostacolo più grande è capire come fanno.
Non credo che loro simulino una chiamata, però potrebbe essere, perché nell'istante in cui inserisci un numero ti comunicano immediatamente se è valido oppure no. Ma con java riesci a simulare una chiamata? Non ho visto casi del genere (purtroppo).
Devo evitare che si registri, attraverso un form, numeri falsi o numeri che fanno capo a servizi free number.
Passare per servizi a pagamento diventa troppo oneroso perché ad ogni controllo ti sottraggono credito, senza contare che poi devo inviare l'sms di conferma per avvenuta registrazione. I costi diventano insostenibili. L'ideale sarebbe usare whatsapp, free e il controllo lo fanno già loro. Ma esistono delle lib stabili in java al fine di riuscire a configurarlo in un form?
L'unica cosa che ho trovato è il jar di whatsapp che serve per installarlo su telefonini in java. Ma riuscire a fare una cosa del genere è tosta...

franksisca
14-03-2016, 16:18
Oltre al naturale RegEx devo verificare che dall'altra parte risponda qualcuno, quindi che sia valido. Ovviamente mi riferisco anche a numeri internazionali.
Esiste un modo, perché ho visto in giro (yahoo per esempio è il migliore). L'ostacolo più grande è capire come fanno.
Non credo che loro simulino una chiamata, però potrebbe essere, perché nell'istante in cui inserisci un numero ti comunicano immediatamente se è valido oppure no. Ma con java riesci a simulare una chiamata? Non ho visto casi del genere (purtroppo).
Devo evitare che si registri, attraverso un form, numeri falsi o numeri che fanno capo a servizi free number.
Passare per servizi a pagamento diventa troppo oneroso perché ad ogni controllo ti sottraggono credito, senza contare che poi devo inviare l'sms di conferma per avvenuta registrazione. I costi diventano insostenibili. L'ideale sarebbe usare whatsapp, free e il controllo lo fanno già loro. Ma esistono delle lib stabili in java al fine di riuscire a configurarlo in un form?
L'unica cosa che ho trovato è il jar di whatsapp che serve per installarlo su telefonini in java. Ma riuscire a fare una cosa del genere è tosta...

Anche usando whatsapp ti appoggeresti ad un servizio esterno. Non credo che whatsapp faccia qualcosa del genere. prova con telegram. Comunque nativo java non puoi fare nulla, devi appoggiarti per forza ad un servizio di 3 parti.