Buenas,
En otra máquina de pruebas con Asterisk
1.8.2.3:
-Dialplan simple:
exten => _X.,1,NoOp(Llamada pra ${EXTEN})
exten => _X.,n,Dial(SIP/${EXTEN})
-Peers en sip.conf:
[usuario](!)
type=friend
secret=1234
host=dynamic
disallow=all
allow=alaw
context=remoteParty
;;Lo interesante:
;sendrpid=yes ;; => sendrpid=rpid
sendrpid=yes
directmedia=update
;directrtpsetup=yes
dtmfmode=rfc2833
[100](usuario)
[200](usuario)
[300](usuario)
-Llamada de 100 a 200 y después 100 transfiere a 300 -> No hay UPDATE
de CLID!!!! (No se como lo haces...) :P
-Llamada de 100 a 200 y después 200 transfiere a 300 -> UPDATE de CLID
correcto, con el correspondiente SIP UPDATE.
Te pego un trozo de la traza SIP (con Ngrep) del instante en el que se
confirma la Xfer.
U
10.10.0.177:5063 ->
10.10.0.165:5060
REFER
sip:1...@10.10.0.165:5060 SIP/2.0.
Via: SIP/2.0/UDP 10.10.0.177:5063;branch=z9hG4bK-127877ab.
From: <
sip:2...@10.10.0.177>;tag=27cccb20bc6792cai3.
To: "100" <
sip:1...@10.10.0.165>;tag=as5c51b1ea.
Referred-By: <
sip:2...@10.10.0.165>.
Call-ID:
11e0dd3543d69a44...@10.10.0.165:5060.
CSeq: 102 REFER.
Max-Forwards: 70.
Contact: <
sip:2...@10.10.0.177:5063>.
Refer-To: <
sip:3...@10.10.0.165?Replaces=9c5dccba-
c9dbf1e6%4010.10.0.177%3Bfrom-tag%3Db8ea2eaaec3178b6o3%3Bto-tag
%3Das60e8839a>.
User-Agent: Cisco/SPA504G-7.4.3.
Content-Length: 0.
.
U
10.10.0.165:5060 ->
10.10.0.177:5063
SIP/2.0 202 Accepted.
Via: SIP/2.0/UDP
10.10.0.177:5063;branch=z9hG4bK-127877ab;received=10.10.0.177.
From: <
sip:2...@10.10.0.177>;tag=27cccb20bc6792cai3.
To: "100" <
sip:1...@10.10.0.165>;tag=as5c51b1ea.
Call-ID:
11e0dd3543d69a44...@10.10.0.165:5060.
CSeq: 102 REFER.
Server: Asterisk PBX 1.8.2.3.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY,
INFO, PUBLISH.
Supported: replaces, timer.
Contact: <
sip:1...@10.10.0.165:5060>.
Content-Length: 0.
.
U
10.10.0.165:5060 ->
10.10.0.177:5063
NOTIFY
sip:2...@10.10.0.177:5063 SIP/2.0.
Via: SIP/2.0/UDP 10.10.0.165:5060;branch=z9hG4bK19772c6b.
Max-Forwards: 70.
From: "100" <
sip:1...@10.10.0.165>;tag=as5c51b1ea.
To: <
sip:2...@10.10.0.177>;tag=27cccb20bc6792cai3.
Contact: <
sip:1...@10.10.0.165:5060>.
Call-ID:
11e0dd3543d69a44...@10.10.0.165:5060.
CSeq: 103 NOTIFY.
User-Agent: Asterisk PBX 1.8.2.3.
Event: refer;id=102.
Subscription-state: terminated;reason=noresource.
Content-Type: message/sipfrag;version=2.0.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY,
INFO, PUBLISH.
Supported: replaces, timer.
Content-Length: 16.
.
SIP/2.0 200 OK.
U
10.10.0.165:5060 ->
10.10.0.177:5063
BYE
sip:2...@10.10.0.177:5063 SIP/2.0.
Via: SIP/2.0/UDP 10.10.0.165:5060;branch=z9hG4bK234066d9.
Max-Forwards: 70.
From: "300" <
sip:3...@10.10.0.165>;tag=as60e8839a.
To: <
sip:2...@10.10.0.165>;tag=b8ea2eaaec3178b6o3.
Call-ID:
9c5dccba...@10.10.0.177.
CSeq: 102 BYE.
User-Agent: Asterisk PBX 1.8.2.3.
Proxy-Authorization: Digest username="200", realm="asterisk",
algorithm=MD5, uri="10.10.0.165", nonce="",
response="eda523f9a8f4f7f8e747f003843b0fba".
X-Asterisk-HangupCause: Normal Clearing.
X-Asterisk-HangupCauseCode: 16.
Content-Length: 0.
.
U
10.10.0.165:5060 ->
10.10.0.142:5064
UPDATE
sip:3...@10.10.0.142:5064 SIP/2.0.
Via: SIP/2.0/UDP 10.10.0.165:5060;branch=z9hG4bK54fc847d.
Max-Forwards: 70.
From: "200" <
sip:2...@10.10.0.165>;tag=as4e16ecc6.
To: <
sip:3...@10.10.0.142:5064>;tag=21a4719cbfa891bfi4.
Contact: <
sip:2...@10.10.0.165:5060>.
Call-ID:
4cb9feb305510fee...@10.10.0.165:5060.
CSeq: 103 UPDATE.
User-Agent: Asterisk PBX 1.8.2.3.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY,
INFO, PUBLISH.
Supported: replaces, timer.
Remote-Party-ID: "100" <sip:
1...@10.10.0.165>;party=calling;privacy=off;screen=no.
Content-Type: application/sdp.
Content-Length: 261.
.
v=0.
o=root 1194507612 1194507613 IN IP4 10.10.0.165.
s=Asterisk PBX 1.8.2.3.
c=IN IP4 10.10.0.165.
t=0 0.
m=audio 18294 RTP/AVP 8 101.
a=rtpmap:8 PCMA/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-16.
a=silenceSupp:off - - - -.
a=ptime:20.
a=sendrecv.
U
10.10.0.177:5063 ->
10.10.0.165:5060
SIP/2.0 200 OK.
To: <
sip:2...@10.10.0.177>;tag=27cccb20bc6792cai3.
From: "100" <
sip:1...@10.10.0.165>;tag=as5c51b1ea.
Call-ID:
11e0dd3543d69a44...@10.10.0.165:5060.
CSeq: 103 NOTIFY.
Via: SIP/2.0/UDP 10.10.0.165:5060;branch=z9hG4bK19772c6b.
Server: Cisco/SPA504G-7.4.3.
Content-Length: 0.
.
U
10.10.0.177:5063 ->
10.10.0.165:5060
SIP/2.0 200 OK.
To: <
sip:2...@10.10.0.165>;tag=b8ea2eaaec3178b6o3.
From: "300" <
sip:3...@10.10.0.165>;tag=as60e8839a.
Call-ID:
9c5dccba...@10.10.0.177.
CSeq: 102 BYE.
Via: SIP/2.0/UDP 10.10.0.165:5060;branch=z9hG4bK234066d9.
Server: Cisco/SPA504G-7.4.3.
Content-Length: 0.
.
U
10.10.0.142:5064 ->
10.10.0.165:5060
SIP/2.0 200 OK.
To: <
sip:3...@10.10.0.142:5064>;tag=21a4719cbfa891bfi4.
From: "200" <
sip:2...@10.10.0.165>;tag=as4e16ecc6.
Call-ID:
4cb9feb305510fee...@10.10.0.165:5060.
CSeq: 103 UPDATE.
Via: SIP/2.0/UDP 10.10.0.165:5060;branch=z9hG4bK54fc847d.
Contact: <
sip:3...@10.10.0.142:5064>.
Server: Cisco/SPA509G-7.4.3.
Content-Length: 210.
Content-Type: application/sdp.
.
v=0.
o=- 114590764 114590765 IN IP4 10.10.0.142.
s=-.
c=IN IP4 10.10.0.142.
t=0 0.
m=audio 16028 RTP/AVP 8 101.
a=rtpmap:8 PCMA/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-15.
a=ptime:30.
a=sendrecv.
En los casos en los que transfiere el que hace la primera llamada no
he conseguido hacer funcionar el updateo del CLID. Ni siquiera
haciendo transferencias semi-atendidas (confirmar xfer en el ringing).
Seguiré mirando...
Un saludo.
> INVITE
sip:pruebas...@192.168.19.96:5060 SIP/2.0'
> Via: SIP/2.0/UDP 192.168.19.20:37444;branch=z9hG4bK57f5e4ea'
> Max-Forwards: 70'
> From: "Alberto" <
sip:pruebas...@192.168.19.20:37444>;tag=as2ae36194'
> To: <
sip:pruebas...@192.168.19.96:5060>;tag=8b526c7cdb9b6bf4i0'
> Contact: <
sip:pruebas...@192.168.19.20:37444>'
> Call-ID:
31caa1127c1f843a52d15d956d110...@192.168.19.20:37444'
> CSeq: 103 INVITE'
> User-Agent: Asterisk PBX 1.8.2.2'
> Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY,
> INFO,
> PUBLIS
> H'
> Supported: replaces, timer'
> P-Asserted-Identity: "Manolo" <
sip:699999...@192.168.19.20>'