2012-07-12 11 views
9

Jestem obecnie na projekcie, który musi wykryć, czy urządzenie może wykonać połączenie telefoniczne. W zależności od tego, czy jest to możliwe, muszę zmienić widok i zastosować dwie różne funkcje, jedną jest przycisk do wywołania określonego numeru za pomocą tel: na html, drugi to przycisk do wpisania numeru, a my zadzwonię do ciebie, używając fonality.Jak mogę sprawdzić, czy tel: jest rzeczywiście podłączony do urządzenia, z którego można nawiązać połączenie?

Obecnie udało mi się zainstalować takie wtyczki/biblioteki, takie jak wurfl lub terawurfl, bez żadnego, który wydaje się w 100% niezawodny sposób na wykrycie, czy telefon komórkowy lub tablet/komputer może nawiązać połączenie telefoniczne.

Czy istnieje rozwiązanie po stronie serwera lub po stronie użytkownika, takie jak tag, którego brakowało mi wurfl/terawurfl, a nawet wywołanie ajax javascript, które mógłbym wykryć "yes tel: works" lub coś podobnego.

+0

może nie odpowiedzieć na twoje pytanie, ale proszę spojrzeć na tę sztuczkę: http://stackoverflow.com/questions/836777/how -to-detect-browsers-handlery obsługujące protokół –

+0

Nie; JavaScript jest ograniczony do przeglądarki, nie ma możliwości uzyskania dostępu do protokołu lub powiązanych funkcji obsługi. Będziesz musiał zaoferować wybór swojemu użytkownikowi ("Jeśli masz Skype'a lub ten telefon, a chcesz nawiązać połączenie, kliknij link" zadzwoń pod ten numer ", w przeciwnym razie kliknij" my ". zadzwoń do ciebie "przycisk."). –

+1

Naprawdę myślę, że powinieneś przemyśleć swoje podejście. Nawet jeśli telefon/tablet ma ważną kartę SIM i znajduje się w sieci, może być zabronione wykonywanie połączeń telefonicznych przez operatora lub użytkownika (blokowanie połączeń/ograniczenie połączeń); lub może nie być w stanie zadzwonić pod twój konkretny numer (żadna usługa lub międzynarodowe zgłoszenie nie jest ograniczone, itp.) nie byłoby żadnego sposobu, aby wiedzieć, chyba że spróbujesz zadzwonić _do numeru_, który próbujesz osiągnąć. –

Odpowiedz

1

Oto klasa PHP, której używam, wykrywa przeglądarki mobilne, które można pobrać bezpłatnie. http://code.google.com/p/php-mobile-detect/

Gdy klasa w poprawnie skonfigurowane można użyć kodu:

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

czy można być bardziej szczegółowe:

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

Na ogół jest to używane do tworzenia stron mobilnych jednak będzie pasować do twojego celu :)

+0

to rozwiązanie faktycznie działa, używając wzorców w useragencie, zamiast mieć bazę danych ... plus możesz go zmienić i utworzyć nową kategorię. Wydaje się, że jest to przydatna wtyczka, ale uświadamia mi, że wiele urządzeń może mieć numer telefonu, ale nie miało na celu wykonania połączenia telefonicznego ... –

+0

Prawdziwa, mobilna technologia jest genialna, a jej działanie będzie coraz lepsze. Cieszę się, że to działało dla Ciebie, oszczędza dużo czasu i buduje je sam! Używam tego w przypadku zoptymalizowanych witryn mobilnych –

Powiązane problemy