2012-07-12 15 views
9

Attualmente sono su un progetto che deve rilevare se un dispositivo può effettuare o meno una chiamata. A seconda che sia o non sia possibile, ho bisogno di cambiare vista e applicare due diverse funzioni, una è un pulsante per effettuare una chiamata a un determinato numero usando tel: su html, l'altro è un pulsante per inserire il tuo numero e noi Ti chiamerò usando la fonalità.Come posso vedere se tel: è effettivamente collegato a un dispositivo che può effettuare una chiamata?

Attualmente, sono riuscito a installare tali plugin/librerie come wurfl o terawurfl, nessuno che sembra avere un modo affidabile al 100% per rilevare se il telefono cellulare o il tablet/desktop possono effettuare una chiamata.

C'è una soluzione lato server o lato utente a questo come un tag che ho perso in wurfl/terawurfl o anche una chiamata javascript ajax che potrei fare per rilevare "sì tel: funziona" o qualcosa del genere.

+0

potrebbe non rispondere alla tua domanda, ma per favore dai un'occhiata a questo trucco: http://stackoverflow.com/questions/836777/how -to-detect-browsers-protocol-handlers –

+0

No; JavaScript è limitato al browser, non ha modo di accedere al protocollo o ai gestori associati. Dovresti offrire la scelta al tuo utente ("Se hai Skype, o si tratta di un telefono, e desideri effettuare la chiamata, fai clic sul link" chiama questo numero ", altrimenti fai clic su" we \ "" chiamarti "pulsante".) –

+1

Penso davvero che dovresti ripensare al tuo approccio. Anche se un telefono/tablet ha una SIM valida e si trova su una rete, potrebbe essere impedito di effettuare chiamate telefoniche da parte dell'operatore o dall'utente (blocco delle chiamate/limitazione delle chiamate); o potrebbe non essere in grado di chiamare il tuo numero particolare (nessun servizio, o chiamate internazionali limitate, ecc.) non ci sarebbe modo di saperlo a meno che tu non provi una chiamata al numero_ che stai cercando di raggiungere. –

risposta

1

Ecco una classe PHP che utilizzo per rilevare i browser mobili che è possibile scaricare gratuitamente. http://code.google.com/p/php-mobile-detect/

Una volta che la classe impostato correttamente è possibile utilizzare codice simile a questo:

if ($detect->isMobile()) { 
    // any mobile platform 
    // place telephone code here 
} 

o si può essere più precisi:

if($detect->isiOS()){ 
    // code to run for the Apple iOS platform. 
} 

Questo è generalmente utilizzato per la creazione di siti web per cellulari tuttavia si adatta al tuo scopo :)

+0

questa soluzione in realtà fa il trucco utilizzando i modelli in useragent invece di avere un database .... più si potrebbe cambiare e fare una nuova categoria. Sembra un utile plugin, ma mi fa capire che molti dispositivi potrebbero avere un numero di telefono, ma non era destinato a fare una telefonata ... –

+0

Veramente, la tecnologia mobile è brillante e continuerà a migliorare. Sono contento che questo abbia funzionato per te, fa risparmiare un sacco di tempo e lavoro costruendolo tu stesso! Lo uso per siti Web ottimizzati per dispositivi mobili –

Problemi correlati