OpenBTS: 2.8 Konfigurasi Subscriber Registery

From OnnoWiki
Revision as of 13:17, 25 June 2012 by Onnowpurbo (talk | contribs)
Jump to navigation Jump to search

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


Catatan Real-Time Asterisk

Di OpenBTS 2.8, kita tidak lagi menggunakan SIP registry internal Asterisk sebagi pengganti HLR. Kita menggunakan komponen baru yang dinamakan subscriber registry, yang berbasis pada database sqlite3 di /var/lob/asterisk/sqlite3dir/sqlite3.db. Database ini berisi tabel SIP user registration dan call routing dalam konfigurasi realtime asterisk. Ada tiga implikasi penting:

  • OpenBTS tidak dapat lagi melakukan pertukaran SIP REGISTER secara langsung dengan Asterisk. Akan tetapi, SIP REGISTER methods akan dikirim ke server baru yang dinamakan sipauthserver, SIP interface dari subscriber registry.
  • OpenBTS handset tidak dapat lagi di provision oleh Asterisk melalui /etc/asterisk/sip.conf. AKan tetapi, OpenBTS handset harus di provision subscriber registry. Jika tidak, maka Asterisk tidak akan mengetahui IP address dari handset.
  • Konfigurasi dialplan sekarang menggunakan database lookup secara explisit melalui interface ODBC untuk melakukan call routing, contoh:
[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)


Beberapa SQLite database penting

Beberapa file SQLite database yang penting

/etc/OpenBTS/OpenBTS.db
/etc/OpenBTS/smqueue.db
/etc/OpenBTS/sipauthserve.db
/var/lib/asterisk/sqlite3dir/sqlite3.db

Edit Menggunakan SQLite Database Browser

Langkah yang perlu dilakukan

sudo su
/usr/local/src/sqlitebrowser/sqlitestudio/sqlitestudio
Sqlitestudio1.png


Edit /etc/OpenBTS/OpenBTS.db

Sqlitestudio-openbtsdb1.png
Sqlitestudio-openbtsdb2.png


Edit /etc/OpenBTS/smqueue.db

Sqlitestudio-smqueue1.png
Sqlitestudio-smqueue2.png

Edit /etc/OpenBTS/sipauthserve.db

Sqlitestudio-sipauthserve1.png
Sqlitestudio-sipauthserve2.png

Edit /var/lib/asterisk/sqlite3dir/sqlite3.db

Sqlitestudio-subscriberregistry2.png
Sqlitestudio-subscriberregistry1.png
Sqlitestudio-subscriberregistry3.png
Sqlitestudio-subscriberregistry4.png


Test Query ke Subscriber Registry di SQLite Database Browser

select dial from dialdata_table where exten = 1111
select ipaddr from sip_buddies where name = IMSI510110301694405


Manajemen Subscriber Registry via Web

WARNING: Cara ini masih gagal total

Jika kita perhatikan baik-baik source code OpenBTS maka ada srmanager.cgi di

/usr/local/src/openbts/subscriberRegistry/trunk/srmanager.cgi

Ini dapat ditampilkan ke web dengan mengarahkan konfigurasi cgi-bin apache

Edit

vi /etc/apache2/sites-enabled/000-default 
ScriptAlias /cgi/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
      AllowOverride None
      Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
      Order allow,deny
      Allow from all
</Directory>

Buat link

cd /usr/lib/cgi-bin/
ln -s /usr/local/src/openbts/subscriberRegistry/trunk/srmanager.cgi



Pranala Menarik

Persiapan

OpenBTS 2.6

OpenBTS 2.8

Multi OpenBTS 2.8

Ettus E110

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah