<div dir="ltr"><div><div>Kamailio (192.168.182.1) and Asterisk (192.168.182.24) realtime integration by <a href="http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb">http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb</a>.<br>
<br></div><div>Kamailio have a public interface also.<br></div><div> <br><br><br>Grep from debug on kamailio 4.2.1 on call from asterisk extensions/peers:<br><br>Mar 19 14:51:50 netbox /usr/sbin/kamailio[547784]: DEBUG: usrloc [udomain.c:602]: db_load_urecord(): aor <a href="mailto:101@192.168.182.1">101@192.168.182.1</a> not found in table location<br>
Mar 19 14:51:50 netbox /usr/sbin/kamailio[547784]: DEBUG: registrar [lookup.c:158]: lookup(): '<a href="mailto:101@192.168.182.1">101@192.168.182.1</a>' Not found in usrloc<br><br>Mar 19 14:51:50 netbox /usr/sbin/kamailio[547785]: DEBUG: usrloc [udomain.c:602]: db_load_urecord(): aor <a href="mailto:102@192.168.182.1">102@192.168.182.1</a> not found in table location<br>
Mar 19 14:51:50 netbox /usr/sbin/kamailio[547785]: DEBUG: registrar [lookup.c:158]: lookup(): '<a href="mailto:102@192.168.182.1">102@192.168.182.1</a>' Not found in usrloc<br><br></div><br><br><br>Kamailio forwards registration to Asterisk and store location of peer with domain name sip.domain.tld. But Asterisk dials peer to peer in local dialplan - to IP of kamailio.<br>
<br>asterisk1*CLI> sip show peers<br>Name/username Host Dyn Forcerport Comedia ACL Port Status Description Realtime<br>101/101 192.168.182.1 D No No A 5060 Unmonitored Cached RT<br>
102/102 192.168.182.1 D No No A 5060 Unmonitored Cached RT<br><br><br><br><br><br>asterisk1*CLI> sip show peer 102<br>
<br><br> * Name : 102<br> Description :<br> Realtime peer: Yes, cached<br> Secret : <Not set><br> MD5Secret : <Not set><br> Remote Secret: <Not set><br> Context : ext-local<br>
Record On feature : automon<br> Record Off feature : automon<br> Subscr.Cont. : <Not set><br> Language :<br> Tonezone : <Not set><br> AMA flags : Unknown<br> Transfer mode: open<br> CallingPres : Presentation Allowed, Not Screened<br>
FromUser : 102<br> FromDomain : <a href="http://sip.domain.com">sip.domain.com</a> Port 5060<br> Callgroup :<br> Pickupgroup :<br> Named Callgr :<br> Nam. Pickupgr:<br> MOH Suggest :<br> Mailbox :<br>
VM Extension : asterisk<br> LastMsgsSent : 6/0<br> Call limit : 0<br> Max forwards : 0<br> Dynamic : Yes<br> Callerid : "" <><br> MaxCallBR : 384 kbps<br> Expire : 252<br> Insecure : no<br>
Force rport : No<br> Symmetric RTP: No<br> ACL : Yes<br> DirectMedACL : No<br> T.38 support : No<br> T.38 EC mode : Unknown<br> T.38 MaxDtgrm: -1<br> DirectMedia : Yes<br> PromiscRedir : No<br> User=Phone : No<br>
Video Support: No<br> Text Support : No<br> Ign SDP ver : No<br> Trust RPID : No<br> Send RPID : No<br> Path support : No<br> Path : N/A<br> Subscriptions: Yes<br> Overlap dial : No<br> DTMFmode : rfc2833<br>
Timer T1 : 500<br> Timer B : 32000<br> ToHost :<br> Addr->IP : <a href="http://192.168.182.1:5060">192.168.182.1:5060</a><br> Defaddr->IP : (null)<br> Prim.Transp. : UDP<br> Allowed.Trsp : UDP<br>
Def. Username: 102<br> SIP Options : (none)<br> Codecs : (gsm|ulaw|alaw|h263|testlaw)<br> Codec Order : (none)<br> Auto-Framing : No<br> Status : Unmonitored<br> Useragent : kamailio (4.1.2 (x86_64/linux))<br>
Reg. Contact : <a href="http://sip:102@192.168.182.1:5060">sip:102@192.168.182.1:5060</a><br> Qualify Freq : 60000 ms<br> Keepalive : 0 ms<br> Sess-Timers : Accept<br> Sess-Refresh : uas<br> Sess-Expires : 1800 secs<br>
Min-Sess : 90 secs<br> RTP Engine : asterisk<br> Parkinglot :<br> Use Reason : No<br> Encryption : No<br><br><br><br><br>/etc/asterisk/extensions.conf:<br><br>...<br>[ext-local]<br>; our phones use 3 digit extensions, starting with 1<br>
exten => _1XX,1,DumpChan(verbose)<br>exten => _1XX,n,Dial(SIP/${EXTEN})<br>exten => _1XX,n,Voicemail(${EXTEN},u)<br>exten => _1XX,n,Hangup<br>exten => _1XX,101,Voicemail(${EXTEN},b)<br>exten => _1XX,102,Hangup<br>
<br></div><div><br><br><br>Also strabge why I see user.pub.lic in Variables on channel during call:<br>...<br>SIPCALLID=GOB1.VSLU0SOTjG-u8jjarzXv.lJTjin<br>SIPDOMAIN=<a href="http://netbox.teleservice.com.ua">netbox.teleservice.com.ua</a><br>
SIPURI=sip:101@user.pub.lic.ip:35835<br><br><br></div><div><br><br>Do I need rewrite To header with change IP to domain name? Maybe in this section:<br><br>#!ifdef WITH_ASTERISK<br># Test if coming from Asterisk<br>route[FROMASTERISK] {<br>
if($si==$sel(cfg_get.asterisk.bindip)<br> && $sp==$sel(cfg_get.asterisk.bindport))<br> return 1;<br> return -1;<br>}<br><br><br></div></div>