Buenas, podría poner este mensaje tal vez mejor en la lista inglesa, pero
me resulta mas fácil expresarme en Castellano y la verdad es que llevo un
día peleándome con una tontería que tengo resuelta en otra maquina y ahora
no soy capaz a ver donde tengo el problema.
El caso es que en una maquina demo, tengo instalado un kamailio 3.3.4,
instalado por defecto sobre un debian con un apt-get. He configurado el
kamailio.cfg solo para reenviar hacia un trunk exterior, ejemplo
Phone --> Kamailio --> Carrier
La llamada progresa bien, y llega al carrier, pero el ACK que confirma la
recepción del OK del SDP, el teléfono lo envía al Kamailio, pero este no
llega al carrier.
Si me podeis echar una mano os lo agradezco.
Adjunto una captura para que veáis el problema.
Gracias!!!!
Javier
Hola a todos,
Estoy tratando de configurar Kamailio 3.0.0 para que redirija las llamadas
a un buzón de voz basado en SEMS cuando el usuario llamado está ocupado.
Siguiendo las instrucciones de varios ejemplos encontrados en internet, y
del propio script ejemplo de kamailio.cfg, estoy usando las funciones
revert_uri(), rewritehostport() (o reescribiéndo el R-URI manualmente) y
append_branch(), dentro de la failure_route. Aparentemente modifica
correctamente el R-URI y crea la segunda "pata" de la llamada. Sin embargo,
a pesar de que la dirección del R-Uri aparece bien cambiada como decía en
la Request Line, el paquete IP se envía a la dirección IP del destinatario
original:
|Time | 192.168.3.20
| 192.168.0.167 |
| | | 192.168.0.197 |
|5,069 | INVITE SDP ( telephone-event)
| |SIP From: sip:4095@192.168.0.197
To:sip:4440@192.168.0.197
| |(5060) ------------------> (5060) | |
|5,071 | 407 Proxy Authentication Required
| |SIP Status
| |(5060) <------------------ (5060) | |
|5,074 | ACK | | |SIP
Request
| |(5060) ------------------> (5060) | |
|5,076 | INVITE SDP ( telephone-event)
| |SIP From: sip:4095@192.168.0.197
To:sip:4440@192.168.0.197
| |(5060) ------------------> (5060) | |
|5,084 | 100 trying -- your call is important to us
| |SIP Status
| |(5060) <------------------ (5060) | |
|5,085 | | INVITE SDP (
telephone-event) |SIP Request
| | |(5060) ------------------> (5060) |
|5,088 | | 100 Trying| |SIP
Status
| | |(5060) <------------------ (5060) |
|5,088 | | 486 Busy Here |SIP
Status
| | |(5060) <------------------ (5060) |
|5,091 | | ACK | |SIP
Request
| | |(5060) ------------------> (5060) |
|5,101 | | INVITE SDP (
telephone-event) |SIP Request
| | |(5060) ------------------> (5060) |
|5,102 | | 404 Not Found |SIP
Status
| | |(5060) <------------------ (5060) |
|5,102 | | ACK | |SIP
Request
| | |(5060) ------------------> (5060) |
|5,103 | 404 Not Found | |SIP
Status
| |(5060) <------------------ (5060) | |
|5,106 | ACK | | |SIP
Request
| |(5060) ------------------> (5060) | |
Esta es la captura del Invite de la redirección, en el timestamp 5,101
No. Time Source Destination Protocol
Info
1235 5.100698 192.168.0.197 192.168.0.167 SIP/SDP
Request: INVITE sip:voicemail4440@192.168.0.197:5080, with session
description
Frame 1235 (1151 bytes on wire, 1151 bytes captured)
Ethernet II, Src: CadmusCo_96:31:84 (08:00:27:96:31:84), Dst:
Micro-St_6d:77:54 (00:21:85:6d:77:54)
Internet Protocol, Src: 192.168.0.197 (192.168.0.197), Dst: 192.168.0.167
(192.168.0.167)
User Datagram Protocol, Src Port: sip (5060), Dst Port: sip (5060)
Session Initiation Protocol
Request-Line: INVITE sip:voicemail4440@192.168.0.197:5080 SIP/2.0
Method: INVITE
Request-URI: sip:voicemail4440@192.168.0.197:5080
[Resent Packet: True]
[Suspected resend of frame: 1233]
Message Header
Record-Route: <sip:192.168.0.197;lr=on;nat=
yes>
Via: SIP/2.0/UDP 192.168.0.197;branch=z9hG4bKafce.403718a6.1
Via: SIP/2.0/UDP
192.168.57.20;received=192.168.3.20;rport=5060;branch=z9hG4bK0a00030f0000003151ed60b85ec2c3de000000c8
Content-Length: 386
Contact: <sip:4095@192.168.3.20:5060>
Call-ID: 8EAF9EC2-1DD2-11B2-B110-C84E476664B0(a)10.0.3.15
Content-Type: application/sdp
CSeq: 2 INVITE
From: "4095"<sip:4095@192.168.0.197>;tag=121754238352072516
Max-Forwards: 69
To: <sip:4440@192.168.0.197>
User-Agent: SJphone/1.60.299a/L (SJ Labs)
P-App-Name: voicemail
P-App-Param: mod=box;usr= voicemail4440;dom=sipproxy.a.com
;uid=voicemail4440;did=sipproxy.a.com;
Message Body
La configuración que he usado es la siguiente:
# Sample failure route
failure_route[FAIL_ONE] {
#ifdef WITH_NAT
if (is_method("INVITE")
&& (isbflagset("6") || isflagset(5))) {
unforce_rtp_proxy();
}
#endif
if (t_is_canceled()) {
exit;
}
# uncomment the following lines if you want to block client
# redirect based on 3xx replies.
##if (t_check_status("3[0-9][0-9]")
) {
##t_reply("404","Not found");
## exit;
##}
# uncomment the following lines if you want to redirect the failed
# calls to a different new destination
if (t_check_status("486|408")) {
revert_uri();
prefix("voicemail");
remove_hf("P-App-Name");
append_hf("P-App-Name: voicemail\r\n");
append_hf("P-App-Param: mod=box;usr= $rU;dom=sipproxy.a.com
;uid=$rU;did=sipproxy.a.com;\r\n");
$ru = "sip:" + $rU + "@" + "192.168.0.197:5080";
#rewritehostport("192.168.0.197:5080");
#append_branch("sip:4888@192.168.0.102");
append_branch();
# do not set the missed call flag again
t_relay();
}
}
¿Alguien ha tenido un problema similar? Cualquier ayuda será bienvenida.
Saludos.
LAA.