OpenBTS: 2.8 Konfigurasi Subscriber Registery

From OnnoWiki
Revision as of 14:12, 23 June 2012 by Onnowpurbo (talk | contribs) (New page: Sumber: http://wush.net/trac/rangepublic/wiki/P2.8Differences Real-Time Asterisk In P2.8, OpenBTS no longer uses Asterisk's internal SIP registry as an HLR replacement. Instead, it uses...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Sumber: http://wush.net/trac/rangepublic/wiki/P2.8Differences


Real-Time Asterisk

In P2.8, OpenBTS no longer uses Asterisk's internal SIP registry as an HLR replacement. Instead, it uses a new component called the subscriber registry, based on an sqlite3 database at /var/lob/asterisk/sqlite3dir/sqlite3.db. This database includes tables for both SIP user registration and call routing in a configuration called realtime asterisk. There are three important implications:

  • OpenBTS no longer performs SIP REGISTER exchanges with Asterisk directly. Instead, SIP REGISTER methods are sent to a new server called sipauthserver, the SIP interface of the subscriber registry.
  • OpenBTS handsets can no longer be provisioned into Asterisk through /etc/asterisk/sip.conf. Instead, they must be provisioned into the subscriber registry. Otherwise, Asterisk has no way to know the registered IP address of the handset.
  • The dialplan configuration now uses explicit database lookups through the ODBC interface to route calls. For example:
[phones]
; This is the context for handsets provisioned through the realtime database.
; This assumes that OpenBTS units all are running their SIP interfaces on port 5062.
exten => _N.,1,Set(Name=${ODBC_SQL(select dial from dialdata_table where exten = \"${EXTEN}\")})
exten => _N.,n,GotoIf($["${Name}" = ""] ?outbound-trunk,${EXTEN},1)
exten => _N.,n,Set(IPAddr=${ODBC_SQL(select ipaddr from sip_buddies where name = \"${Name}\")})
exten => _N.,n,GotoIf($["${IPAddr}" = ""] ?outbound-trunk,${EXTEN},1)
exten => _N.,n,Dial(SIP/${Name}@${IPAddr}:5062)