Well, I feel slightly foolish about the post below.
The CANCEL I was seeing was perfectly sensible, as it was being sent
to a second phone registered to the same username, to say "stop
ringing".
However, I am still having the same problem, with no good explanation.
I don't know if the problem lies with openser or asterisk.
But again, it looks like this:
Works:
Box A Box B
----------------- -------------------
pstn ----------> | openser |------| | |
----------------- | | asterisk |
| asterisk |<---- | |
----------------- ------------------
Broken:
Box A Box B
----------------- -------------------
pstn ----------> | openser |----------->| |
----------------- | asterisk |
| asterisk | | |
----------------- ------------------
To be clear, all instances of openser and asterisk are explicitly
bound to public IP addresses, and there are no cases of 127.0.0.1
being used in any config files.
with openser acting as a fowarding proxy between asterisk A and
asterisk B.
If a pstn call coms in to openser and it forwards to asterisk A,
everything works fine.
If openser forwards to asterisk B (whether with a manual forward, a
manual t_relay,
or either forward or t_relay using the dispatcher module), the phone
sends en error message, one rtp packet, and hangs up. Which is
strange because it has already previously responded with a 200 ok sdp
packet.
If the phone is a counterpath eyebeam, it sends 481 Call/Transaction
does not exist.
If the phone is a linksys spa 941, it sends Status: 400 Bad Request.
This suggests to me that the problem does not lie with the phone.
Interestingly, using the spa phone as an example, the call id is the
same on the 400 bad request packet as on the 200 ok sdp packet.
I can send packet logs. Or if there is any other information I can
help you with.
Thank you,
Mark Price
On 4/9/07, Mark Price <markprice(a)gmail.com> wrote:
I'm using openser 1.1.x, and seeing something
rather strange.
We are using openser as a proxy with openser and asterisk on box A,
asterisk on box B.
Openser listens on ports 5060 and 5065.
Asterisk listens on port 5070 on box A and 5060 on box B.
When a call arrives from PSTN, it works fine if I forward to asterisk
in box B.
If I forward to asterisk on box A, everything seems to be going well
and then openser generates a CANCEL to the receiving phone for
seemingly no good reason.
You can see from the packet below that the cancel is being generated
by openser, because of the user agent.
What might cause this?
Thanks,
Mark Price
U 66.129.95.24:5065 -> 71.199.89.40:16742
CANCEL
sip:9043067833@71.199.89.40:16742;rinstance=f5f4de634aa6bff6;transport=udp
SIP/2.0..Via: SIP/2.0/UDP
66.129.95.24:5065;branch=z9hG4bK1c31.2cb72f11.0..From: "Mark Price"
<sip:9046268172@66.129.95.5>;tag=as11c24889..Call-ID:
1a095b0e1901cead54e8d68c63271aad@66.129.95.5..To:
<sip:9043067833@joinuneta.com:5065>..CSeq: 102 CANCEL..User-Agen
t: OpenSer (1.1.0-tls (i386/linux))..Content-Length: 0....
_______________________________________________
Users mailing list
Users(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/users