Programmatically Marque un número de teléfono y pase DTMF usando el iPhone SDK

votos
30

¿Cómo se hace programáticamente lo siguiente desde el iPhone SDK?

  1. Programáticamente marcar un número de teléfono a través del iPhone SDK

  2. Omitir el aviso de marcar / cancelar que aparece en el iPhone

  3. Envíe DTMF adicionales después de que se marque el número tal como lo haría con las pausas programadas en un teléfono normal.

Sé que puede hacer una tel://llamada, pero el problema es que hace que aparezca el aviso de marcar / cancelar y, a continuación, evita que se envíe un DTMF en el futuro.

Publicado el 25/02/2009 a las 04:57
fuente por usuario
En otros idiomas...                            


6 respuestas

votos
30

El SDK de iPhone NO le da acceso directo a los números de marcado (imagínese si un programa "malo" recibió en su teléfono y marcó un número de pago por minuto en modo silencio para que no lo note).

Sin embargo, si utiliza el enlace de tel, entonces debería poder enviarlo "," caracteres que inserta pausas.

Entonces, para marcar 555-1212, espere 4 segundos, luego haga 12345 # en el tono de toque que usaría tel: 5551212,, 12345 #

Consulte https://developer.apple.com/iphone/library/featuredarticles/iPhoneURLScheme_Reference/Articles/PhoneLinks.html

-Adán

Respondida el 25/02/2009 a las 05:00
fuente por usuario

votos
18

No sé por qué todo el mundo dice usted no puede ... que CAN !

NSString *phoneNumber = @"15555551212";
NSString *dtmfAfterPickup = @"1234";
NSString *telString = [NSString stringWithFormat:@"tel:%@,%@", phoneNumber, dtmfAfterPickup];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:telString]];

Esto marcará el phoneNumber sin pasar por el dial / Cancelar pronta ... 1 segundo después de que se conteste la llamada, el dtmfAfterPickup cadena se marca automáticamente.

Es una buena idea para detectar si o no las llamadas telefónicas de soporte de dispositivo

Respondida el 09/02/2011 a las 10:57
fuente por usuario

votos
2

Según el enlace de desarrollador de Apple de Adam anterior, existe este enlace de RFC que explica más sobre las diferentes opciones para un esquema de enlace telefónico que admite el iPhone:

http://www.ietf.org/rfc/rfc2806.txt

Esto al menos le permite insertar pausas con una 'p' en la URL, pero muchas de las opciones están especificadas (pero no todas son obligatorias) según el RFC. ¿Qué más funciona?

Respondida el 23/07/2009 a las 03:48
fuente por usuario

votos
1

Probé con mi iPhone usando CoronaSDK y API OpenURL. ¡Funciona muy bien! Sólo hacer: system.openURL ( "tel: [numero de teléfono], 123"). Se puede esperar más por comas additinal. Probado con Corona SDK / iOS7.

Respondida el 03/01/2014 a las 16:33
fuente por usuario

votos
0

En realidad, probé lo siguiente 555-555-4822 EXT 8030

Y parece transmitir algunos tonos incluso después de presionar el dial (el número de p representa la cantidad de segundos de retraso). Sin embargo, los tonos no se responden en el otro extremo como se esperaba, por lo que todavía hay algo mal.

Sin embargo, esto funciona, aunque es un poco más propenso a los problemas de temporización tel: 555-555-4822, 8030. Esto hace una pausa de un segundo (,, serían dos segundos) después de la conexión, y luego reproduce los tonos 8030.

Respondida el 15/06/2009 a las 22:58
fuente por usuario

votos
-1

No puedes hacer esto. El SDK no le permite controlar la función del teléfono en este nivel de detalle.

Respondida el 25/02/2009 a las 05:00
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more