Calculadora básica en Asterisk

CalculadoraHaciendo un ejemplo de cosas tontas que puede hacer Asterisk, se me ha ocurrido un ejemplo curioso y lo pongo aquí por si a alguien le gusta seguir haciendo pruebas.

El funcionamiento es bastante sencillo, marcamos ‘*’ y el primer número, esperamos hasta que nos lo repita y marcamos el segundo número con el que queramos operar y por último seleccionamos la operación utilizando el * como indicador:

* = suma
** = resta
*** = multiplicacion
**** = division

exten=>*,1,Answer()
exten=>*,n,Read(primero)
exten=>*,n,SayNumber(${primero})
exten=>*,n,Read(segundo)
exten=>*,n,SayNumber(${segundo})
exten=>*,n,Read(operacion)
exten=>*,n,GotoIF($[«${operacion}»=»*»]?suma)
exten=>*,n,GotoIF($[«${operacion}»=»**»]?resta)
exten=>*,n,GotoIF($[«${operacion}»=»***»]?multiplicacion)
exten=>*,n,GotoIF($[«${operacion}»=»****»]?division)
exten=>*,n(suma),Set(res=$[${primero}+${segundo}])
exten=>*,n(suma),SayNumber(${res})
exten=>*,n(suma),Hangup()
exten=>*,n(resta),Set(res=$[${primero}-${segundo}])
exten=>*,n(resta),SayNumber(${res})
exten=>*,n(resta),Hangup()
exten=>*,n(multiplicacion),Set(res=$[${primero}*${segundo}])
exten=>*,n(multiplicacion),SayNumber(${res})
exten=>*,n(multiplicacion),Hangup()
exten=>*,n(division),Set(res=$[${primero}/${segundo}])
exten=>*,n(division),SayNumber(${res})
exten=>*,n(division),Hangup()

Así por ejemplo, si queremos restar 245-126 marcamos:

* – Para acceder a la calculadora básica.
245 – Para introducir el primer número.
126 – Para introducir el segundo número.
** – Para seleccionar la operación ‘resta’

Seguro que a más de uno le parece una tontería, y creo además que no admite decimales, igual en una nueva versión… 😀

Inicia la conversación

¡Inicia la conversación!

Sé el primero en compartir tu opinión. Tu comentario puede ayudar a otros.

Si tienes una cuenta en Sinologic, no necesitas rellenar estos campos. Regístrate gratis · Iniciar sesión

Comunidad abierta

Únete a la comunidad Sinologic

Crea tu cuenta gratuita y participa en las conversaciones sobre VoIP, Asterisk, Kamailio y telecomunicaciones IP.

Nombre verificado Tu nombre aparece con insignia de miembro en cada comentario.
🔔
Notificaciones Recibe avisos cuando alguien responda a tus comentarios.
👍
Reacciones Reacciona con emojis a los comentarios de otros usuarios.
👤
Perfil personalizable Avatar, bio, enlaces a tu Twitter, GitHub y Telegram.
📬
Newsletter exclusivaPróximamente Contenido técnico y novedades directamente en tu bandeja.
🧪
Acceso anticipadoPróximamente Prueba herramientas y funciones antes que nadie.