Hi,
I was trying to get click-to-dial working from SERweb and it was failing for unclear reasons. I then experimented with the "ctd.sh" script, which does the same thing as the SERweb PHP code. I found that it would fail during the 'dummy invite' stage, returning an odd error if I used a URI which used a SIP domain/realm, but would work fine if I used the IP address of the SIP proxy as the domain. i.e.:
./ctd.sh sip:joebob@mydomain.com sip:billybob@mydomain.com <- fails ./ctd.sh sip:joebob@1.2.3.4 sip:billybob@mydomain.com <- succeeds
The reply from SER would be "500 fifo_uac: no mem for hf block" . The log file would have these errors:
ERROR: mk_proxy: could not resolve hostname: "mydomain.com" ERROR: uri2proxy: bad host name in URI sip:joebob@mydomain.com ERROR: uri2sock: Can't create a dst proxy ERROR: get_hf_block: send_sock failed ERROR: fifo_uac: no mem for hf block
So it appears that SER didn't understand that the URI's domain was itself, even though there's a host alias line in the ser.cfg file listing "mydomain.com" as an alias for this host. It's as if it thinks it needed to relay the transaction to another SIP router, and look up an IP to do so. If "mydomain.com" were placed in /etc/hosts as an alias for the system SER was running on, or if a DNS SRV entry for the SIP domain were created pointing to the SER system, voila, the "sip:user@domain" form would work just fine.
Is this a bug ? I think SER isn't checking SER host aliases against the SIP domain if the SIP request comes in via the fifo t_uac_dlg() command.
I'm using the SER release 0.8.11-r1, aka the "stable CVS" release.
TIA, Jim