OpenBTS: 2.8 Instalasi Real Time Asterisk
Konfigurasi Asterisk Realtime
Di bawah ini adalah beberapa langkah untuk membuat Sqlite3 dapat bekerja secara realtime di Asterisk. Ini masih dilakukan secara manual semua, belum ada script yang melakukan hal ini.
Cleaning sebelum Install
Buang sqlite3 dan asterisk. Kita perlu menginstalasi ulang semuanya,
sudo apt-get remove asterisk sqlite3 sudo apt-get autoremove
Instalasi Aplikasi yang dibutuhkan
Compile SQLite
- Download sqlite3 dari
http://www.sqlite.org/download.html http://www.sqlite.org/sqlite-amalgamation-3071300.zip http://www.sqlite.org/sqlite-autoconf-3071300.tar.gz
Sqlite3 harus di combile dengan terdefinisikan SQLITE_ENABLE_COLUMN_METADATA
cp sqlite-autoconf-3071300.tar.gz /usr/local/src/ cd /usr/local/src/ tar zxvf sqlite-autoconf-3071300.tar.gz cd /usr/local/src/sqlite-autoconf-3071300 ./configure CFLAGS="-DSQLITE_ENABLE_COLUMN_METADATA -O2" make clean make all make install
Instalasi Libsqlite & erlang
sudo apt-get install libsqlite3-dev erlang unixodbc unixodbc-dev
Instalasi sqliteodbc
- Download sqliteodbc
http://www.ch-werner.de/sqliteodbc/ http://www.ch-werner.de/sqliteodbc/sqliteodbc-0.95.tar.gz
- Compile
cp sqliteodbc-0.95.tar.gz /usr/local/src/ cd /usr/local/src tar zxvf sqliteodbc-0.95.tar.gz cd /usr/local/src/sqliteodbc-0.95 ./configure make clean make all make make install
(Re)Building Asterisk
Kita perlu membuat ulang Asterisk. Pertama-tama lakukan download dari
http://www.asterisk.org/downloads http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-10.5.1.tar.gz
Compile menggunakan perintah
cp asterisk-10.5.1.tar.gz /usr/local/src/ cd /usr/local/src tar zxvf asterisk-10.5.1.tar.gz cd /usr/local/src/asterisk-10.5.1 ./configure --disable-xmldoc make menuselect
Pastikan ada (*) di
-> Dialplan Functions -> func_odbc -> Utilities -> astdb2sqlite3 -> PBX Modules -> pbx_realtime -> "Resource Modules" -> "res_realtime"
Pastikan tidak ada "XXX" di pilihan Sqlite3 dan ODBC di menu konfigurasi.
selections anywhere in the configuration menus. If you see "XXX" for Sqlite3 or ODBC features anywhere, that means that those packages are not installed correctly (or at least in the way that Asterisk expects to see them). Look at the config.log file for clues. If you are building a full BTS unit, you will need to install Erlang with apt-get install and that will include an ODBC installation that Asterisk likes.
make make install
Yes, you need to rebuild Asterisk. And if you are going to add Speex support, this would be the time to do it. You are supposed to be able to install Speex with apt-get install, but I have not gotten that to work yet. ODBC configuration files
Edit /etc/odbcinst.ini
[SQLite3] Description=SQLite3 ODBC Driver Driver=/usr/local/lib/libsqlite3odbc.so Setup=/usr/local/lib/libsqlite3odbc.so Threading=2
Edit /etc/odbc.ini
[asterisk] Description=SQLite3 database Driver=SQLite3 Database=/var/lib/asterisk/sqlite3dir/sqlite3.db # optional lock timeout in milliseconds Timeout=2000
Link Simbolik
Kita juga perlu membuat simbolik link ke file di tempat ini
/usr/local/etc/odbcinst.ini /usr/local/etc/odbc.ini root/.odbcinst.ini /root/.odbc.ini ~openbts/.odbcinst.ini ~openbts/.odbc.ini
Dengan kata lain, sebagai root lakukan
cd /usr/local/etc; ln -s /etc/odbc.ini; ln -s /etc/odbcinst.ini cd /root; ln -s /etc/odbc.ini .odbc.ini; ln -s /etc/odbcinst.ini .odbcinst.ini cd ~openbts; ln -s /etc/odbc.ini .odbc.ini; ln -s /etc/odbcinst.ini .odbcinst.ini
Kita juga perlu link simbolik untuk home directory asterisk jika asterisk di jalankan sebagai user asterisk:
cd ~asterisk; ln -s /etc/odbc.ini .odbc.ini; ln -s /etc/odbcinst.ini .odbcinst.ini
Standard untuk unit BTS yang terkonfigurasi biasanya menyimpan file "asli" di /usr/local/etc dan membuat link simbolik ke
/etc ~root
If Asterisk is running, modifying these files might make it crash. Be aware of that.
Asterisk configuration files
modules.conf
Autoload must be enabled, plus make sure you're not overriding that by telling it NOT to load particular files, like res_config_odbc.so. The noload is commented out here.
[modules] autoload=yes ; noload => res_config_odbc.so
extconfig.conf
Ini akan meminta asterisk untuk menggunakan odbc untuk realtime sip. Ada sedikit kebingungan apakah kolom ke dua (dalam hal ini, asterisk adalah database, handel odbc database, atau odbc context. Disini dibuat sama agar kita tidak pusing.
[settings] sipusers => odbc,asterisk,sip_buddies sippeers => odbc,asterisk,sip_buddies
Edit res_odbc.conf
Standard konfigirasi odbc. Semua diberi nama "asterisk" untuk menghindari kebingungan.
[asterisk] enabled => yes dsn => asterisk pre-connect => yes
Edit func_odbc.conf
Ini akan memungkinkan kita untuk menggunakan fungsi ODBC_SQL untuk menjalankan perintah SQL di dial plan. Kita menggunakan ini untuk memperoleh nomor SIP setelah diberi extension.
[SQL] dsn=asterisk readsql=${ARG1}
Edit extensions.conf
Berikit adalah bagaimana dialplan menggunakan fungsi ODBC_SQL untuk memperoleh nomor SIP dari extension. Berikut hanya sebuah contoh saja. Gunakan file extensions.conf di openbts/trunk/AsteriskConfigs.
[phones] ; This is the context for handsets provisioned through the realtime database. 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)
Dalam contoh ini, OpenBTS mempunya inbound SIP interface di port 5062 dan context "outbound-trunk" digunakan untuk menangani phone yang tidak di manaje oleh realtime database.
Lokasi database Sqlite3
Path default untuk file realtime database Asterisk adalah
/var/lib/asterisk/sqlite3dir/sqlite3.db.
Ini di tentukan oleh /etc/odbc.ini
File database sqlite3 harus read & write oleh asterisk, smqueue & sipauthserve, DAN directory dimana file tersebut berada HARUS read & write untuk aplikasi Sqlite. Karena sqlite3 akan membuat file temporary di directory tersebut.
Referensi
- http://wush.net/trac/rangepublic/wiki/asteriskConfig
- http://www.voip-info.org/wiki/view/Asterisk+RealTime
- http://wush.net/trac/rangepublic/wiki/sqlie3ODBC
Pranala Menarik
Persiapan
- USRP: High Precision Clock
- USRP: Menyambungkan ClockTamer ke USRP1
- USRP: Kalibrasi ClockTamer
- USRP: ClockTamer Control Protocol
- USRP: Instalasi Board
- OpenBTS: GIT Source Code
OpenBTS 2.6
- GNURadio
- GNURadio: Ubuntu Install
- GNURadio: Ubuntu Install GNURadio 3.4.2 RECOMMENDED
- GNURadio: Ubuntu Install GNURadio 3.4.2 Clock 52MHz RECOMMENDED
- GNURadio: Contoh Aplikasi
- GNURadio: Spectrum Analizer GSM
- GNURadio: Mengubah board RFX1800 menjadi RFX900
- GNURadio: Programming Untuk Pemula
- OpenBTS: Ubuntu Install RECOMMENDED
- OpenBTS: Ubuntu Install OpenBTS 2.6 Clock 52MHz RECOMMENDED
- OpenBTS: Konfigurasi RECOMMENDED
- OpenBTS: Kalibrasi
- OpenBTS: Konfigurasi Asterisk untuk OpenBTS RECOMMENDED
- OpenBTS: Menjalankan smqueue
- OpenBTS: Mengoperasikan BTS RECOMMENDED
- OpenBTS: Tampilan di Nokia saat pakai OpenBTS
- OpenBTS: Operasi 1800 MHz
- OpenBTS: Beberapa Tips
- OpenBTS: USRP2
- OpenBTS: Amplifier
- OpenBTS: SMS
- AirProbe
OpenBTS 2.8
- GNURadio: Ubuntu 11.10 Install NOT RECOMMENED
- GNURadio: Ubuntu 11.10 instalasi menggunakan Repo NOT RECOMMENDED
- GNURadio: Download GNURadio
- GNURadio: Ubuntu 11.10 Instal GNURadio 3.3.0
- GNURadio: Ubuntu 11.10 Instal GNURadio 3.4.2 RECOMMENDED
- GNURadio: Ubuntu 11.10 Instal GNURadio 3.5.0 NOT RECOMMENDED
- GNURadio: Ubuntu 11.10 Instal GNURadio 3.5.3.2 NOT RECOMMENDED
- GNURadio: Ubuntu 11.10 Instal GNURadio 3.6.0 NOT RECOMMENDED
- GNURadio: Ubuntu 11.10 Install dari GIT GNURadio NOT RECOMMENDED
- GNURadio: Ubuntu 11.10 cek USRP Daughter Board
- GNURadio: UHD
- GNURadio: UHD Image
- GNURadio: UHD Identifikasi Device
- OpenBTS: Ubuntu 11.10 Install
- OpenBTS: dari GIT ttsou
- OpenBTS: 2.8 dari SVN Install
- OpenBTS: 2.8 dari SVN Install Clock 52MHz RECOMMENDED
- OpenBTS: 2.8 Instalasi Real Time Asterisk RECOMMENDED
- OpenBTS: 2.8 Konfigurasi
- OpenBTS: Database SQLite
Ettus E110
- OpenBTS: E110 Cara Login
- OpenBTS: E110 Install Image di MicroSD
- OpenBTS: E110 Cek Daughter Board
- OpenBTS: E110 Mengubah Master Clock
- OpenBTS: E110 Kalibrasi Clock
- OpenBTS: E110 Bekerja dengan opkg
- OpenBTS: E110 GNURadio
- OpenBTS: E110 Install UHD Image
- OpenBTS: E110 Instalasi OpenBTS
- OpenBTS: E110 Instalasi OpenBTS 2.6 NOT RECOMMENDED
Lain Lain
- OpenBTS: Materi Magang di ICTWATCH
- OpenBTS: Seminar Outline
- OpenBTS: Workshop Outline
- Membuat Base Station GSM Open Source
- Teknologi Selular
- GSM: Daftar Channel Frekuensi
- Wireless Internet
- OpenBSC
- AirProbe
- Base station subsystem
- GSM
- Asterisk
- Mobile phone
Catatan Legal dan Pendukung
- Siapa Bilang OpenBTS Ilegal?
- OpenBTS: Catatan MNC dan MCC Indonesia
- OpenBTS: Catatan MNC dan MCC COOL
- OpenBTS : Alokasi Frekuensi Operator GSM Indonesia
- GSM: Daftar Channel Frekuensi