Hola,
Quiero compartir una semisolución de un problema que he tenido.
He comprado una Raspberry Pi y he querido utilizar Asterisk con mi cuenta de vozip sobre ADSL de Telefonica.net, creo que los que tienen fibra óptica no les afecta esto.
Por más que busqué, la única solución que daban era utilizar Asterisk 1.4, pero en la distribución esta compilada la 1.8 y he comprobado que pasa desde Asterisk 1.6 en adelante.
Compilé la versión 1.4 con cierta dificultad ya que los codes no estaban preparados para ser compilados en ARM. Pero de todas formas configure mi cuenta y se registró a la primera. Como me dio demasiadas advertencias en la compilación investigué un poco para usar una versión más moderna, ahora utilizo Asterisk 11. En la cadena de registro vi que la versión 1.4 creaba uri=”sip:telefonica.net “ y las demás versiones asignan a uri “sip:sip:telefonica.net” . Por lo que modifique “chan_sip.c” , para que asignara igual que la versión 1.4:
Línea 21779 de chan_sip.c
if (!ast_strlen_zero(p->domain))
snprintf(uri, sizeof(uri), "%s:%s", p->socket.type == AST_TRANSPORT_TLS ? "sips" : "sip", p->domain);
else if (!ast_strlen_zero(p->uri)) ast_copy_string(uri, p->uri, sizeof(uri));
Para que registre mi cuenta he dejado la línea 21780 así:
snprintf(uri, sizeof(uri), "%s", p->domain);
else if (!ast_strlen_zero(p->uri)) ast_copy_string(uri, p->uri, sizeof(uri));
Compilé y ya me registra mi cuenta. Pero ojo supongo que cuando utilice el protocolo TLS no va a funcionar bien. Y se implementó en Asterisk desde la versión 1.6.
Supongo que mi servidor de vozip no soporta dicho protocolo o es un poco delicado a la hora de registrar a un cliente.
Si alguien aporta un poco de luz bienvenida sea.
Saludos.