Difference between revisions of "OpenBTS: RangeNetwork Compile"

From OnnoWiki
Jump to navigation Jump to search
Line 10: Line 10:
 
  apt-get install sqlite3 libsqlite3-dev
 
  apt-get install sqlite3 libsqlite3-dev
  
==Update==
+
==Update Jika di Perlukan==
  
ROOT_OPENBTS berada di /home/openbts/software/public
+
ROOT_OPENBTS berada di /usr/local/src/openbts-2.8.0
  
 
  mkdir -p /OpenBTS/
 
  mkdir -p /OpenBTS/
  mkdir -p /home/openbts/software/public
+
  sudo su
  cd /home/openbts/software
+
  cd /usr/local/src
  svn co http://wush.net/svn/range/software/public public
+
  svn co http://wush.net/svn/range/software/public openbts-2.8.0
  
 
==Install liba53==
 
==Install liba53==
  
  cd /home/openbts/software/public
+
  cd /usr/local/src/openbts-2.8.0/a53/trunk
  cd a53/trunk
+
  make
  sudo make install
+
  make install
  
 
==Stop OpenBTS==
 
==Stop OpenBTS==
Line 34: Line 34:
 
Pada Range Networks RAD1 tidak membutuhkan external dependency & cara compile sangat sederhana:
 
Pada Range Networks RAD1 tidak membutuhkan external dependency & cara compile sangat sederhana:
  
  cd /home/openbts/software/public/openbts/trunk
+
sudo su
 +
  cd /usr/local/src/openbts-2.8.0/openbts/trunk
 
  autoreconf -i
 
  autoreconf -i
 +
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
 
  ./configure
 
  ./configure
 +
make clean
 
  make
 
  make
  
 
Buat link
 
Buat link
  
  cd /home/openbts/software/public/openbts/trunk
+
  cd /usr/local/src/openbts-2.8.0/openbts/trunk
 
  cd apps
 
  cd apps
 
  make
 
  make
Line 48: Line 51:
 
  ln -s ../TransceiverRAD1/fpga.rbf .
 
  ln -s ../TransceiverRAD1/fpga.rbf .
  
  cd /home/openbts/software/public/openbts/trunk/TransceiverRAD1
+
  cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
 
  cp transceiver /OpenBTS/
 
  cp transceiver /OpenBTS/
 
  cp ezusb.ihx /OpenBTS/
 
  cp ezusb.ihx /OpenBTS/
 
  cp fpga.rbf /OpenBTS/
 
  cp fpga.rbf /OpenBTS/
  
  cd /home/openbts/software/public/openbts/trunk/apps
+
  cd /usr/local/src/openbts-2.8.0/openbts/trunk/apps
 
  cp OpenBTS /OpenBTS/
 
  cp OpenBTS /OpenBTS/
 
  cp OpenBTSDo /OpenBTS/
 
  cp OpenBTSDo /OpenBTS/
Line 59: Line 62:
 
  cp runloop.OpenBTS.sh /OpenBTS/
 
  cp runloop.OpenBTS.sh /OpenBTS/
  
 +
mkdir /var/run/OpenBTS/
 +
touch /var/run/OpenBTS/TransactionTable.db
  
 
==Inisialisasi /etc/OpenBTS/OpenBTS.db==
 
==Inisialisasi /etc/OpenBTS/OpenBTS.db==
  
 +
cd /usr/local/src/openbts-2.8.0/openbts/trunk
 
  sudo mkdir /etc/OpenBTS
 
  sudo mkdir /etc/OpenBTS
 +
rm -Rf /etc/OpenBTS/OpenBTS.db
 
  sudo sqlite3 -init ./apps/OpenBTS.example.sql /etc/OpenBTS/OpenBTS.db ".quit"
 
  sudo sqlite3 -init ./apps/OpenBTS.example.sql /etc/OpenBTS/OpenBTS.db ".quit"
  
 
==Build & Install Subscriber Registry dan Sipauthserve==
 
==Build & Install Subscriber Registry dan Sipauthserve==
  
 +
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/configFiles
 +
sudo mkdir /var/lib/asterisk/
 
  sudo mkdir -p /var/lib/asterisk/sqlite3dir
 
  sudo mkdir -p /var/lib/asterisk/sqlite3dir
 +
sudo rm -Rf /var/lib/asterisk/sqlite3dir/sqlite3.db
 +
sudo sqlite3 -init subscriberRegistryInit.sql /var/lib/asterisk/sqlite3dir/sqlite3.db ".quit"
  
  cd /home/openbts/software/public/subscriberRegistry/trunk
+
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
 
  make
 
  make
 
   
 
   
  cd /home/openbts/software/public/subscriberRegistry/trunk
+
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
 
  cp comp128 /usr/local/bin/
 
  cp comp128 /usr/local/bin/
 
  cp comp128 /OpenBTS/  
 
  cp comp128 /OpenBTS/  
Line 78: Line 89:
 
  cp runloop.sipauthserve.sh /OpenBTS/
 
  cp runloop.sipauthserve.sh /OpenBTS/
  
  cd /home/openbts/software/public/subscriberRegistry/trunk
+
  cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
 
  sudo sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
 
  sudo sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
 +
 +
atau
 +
 +
mkdir /etc/OpenBTS
 +
rm -Rf /etc/OpenBTS/sipauthserve.db
 +
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
 +
sudo sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db ".quit"
 +
 +
  
 
==Build & Install Smqueue==
 
==Build & Install Smqueue==
  
 
+
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk
  cd /home/openbts/software/public/smqueue/trunk
 
 
  autoreconf -i
 
  autoreconf -i
  ./configure
+
  ./configure  
  make
+
  make clean
 +
make
 +
make install
  
  cd /home/openbts/software/public/smqueue/trunk
+
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk
 +
rm -Rf /etc/OpenBTS/smqueue.db
 
  sudo sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
 
  sudo sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
  
  cd /home/openbts/software/public/smqueue/trunk/smqueue
+
  cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue
 
  cp runloop.smqueue.sh /OpenBTS/
 
  cp runloop.smqueue.sh /OpenBTS/
 
  cp smqueue /OpenBTS/
 
  cp smqueue /OpenBTS/

Revision as of 19:20, 16 February 2014

Install Pendukung

apt-get update
sudo apt-get install autoconf libtool libosip2-dev libortp-dev \
libusb-1.0-0-dev g++ erlang libreadline6-dev libboost-all-dev \
cmake build-essential subversion libncurses5-dev libncurses5
rm /usr/local/bin/sqlite3
apt-get install sqlite3 libsqlite3-dev

Update Jika di Perlukan

ROOT_OPENBTS berada di /usr/local/src/openbts-2.8.0

mkdir -p /OpenBTS/
sudo su
cd /usr/local/src
svn co http://wush.net/svn/range/software/public openbts-2.8.0

Install liba53

cd /usr/local/src/openbts-2.8.0/a53/trunk
make
make install

Stop OpenBTS

cd /home/openbts
killBTS

Building OpenBTS

Pada Range Networks RAD1 tidak membutuhkan external dependency & cara compile sangat sederhana:

sudo su
cd /usr/local/src/openbts-2.8.0/openbts/trunk
autoreconf -i
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig/
./configure
make clean
make

Buat link

cd /usr/local/src/openbts-2.8.0/openbts/trunk
cd apps
make
ln -s ../TransceiverRAD1/transceiver .
ln -s ../TransceiverRAD1/ezusb.ihx .
ln -s ../TransceiverRAD1/fpga.rbf .
cd /usr/local/src/openbts-2.8.0/openbts/trunk/TransceiverRAD1
cp transceiver /OpenBTS/
cp ezusb.ihx /OpenBTS/
cp fpga.rbf /OpenBTS/
cd /usr/local/src/openbts-2.8.0/openbts/trunk/apps
cp OpenBTS /OpenBTS/
cp OpenBTSDo /OpenBTS/
cp OpenBTSCLI /OpenBTS/
cp runloop.OpenBTS.sh /OpenBTS/
mkdir /var/run/OpenBTS/
touch /var/run/OpenBTS/TransactionTable.db

Inisialisasi /etc/OpenBTS/OpenBTS.db

cd /usr/local/src/openbts-2.8.0/openbts/trunk
sudo mkdir /etc/OpenBTS
rm -Rf /etc/OpenBTS/OpenBTS.db
sudo sqlite3 -init ./apps/OpenBTS.example.sql /etc/OpenBTS/OpenBTS.db ".quit"

Build & Install Subscriber Registry dan Sipauthserve

cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/configFiles
sudo mkdir /var/lib/asterisk/
sudo mkdir -p /var/lib/asterisk/sqlite3dir
sudo rm -Rf /var/lib/asterisk/sqlite3dir/sqlite3.db
sudo sqlite3 -init subscriberRegistryInit.sql /var/lib/asterisk/sqlite3dir/sqlite3.db ".quit"
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk/
make

cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
cp comp128 /usr/local/bin/
cp comp128 /OpenBTS/ 
cp sipauthserve /OpenBTS/
cp runloop.sipauthserve.sh /OpenBTS/
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
sudo sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db ".quit"

atau

mkdir /etc/OpenBTS
rm -Rf /etc/OpenBTS/sipauthserve.db
cd /usr/local/src/openbts-2.8.0/subscriberRegistry/trunk
sudo sqlite3 -init sipauthserve.example.sql /etc/OpenBTS/sipauthserve.db ".quit"


Build & Install Smqueue

cd /usr/local/src/openbts-2.8.0/smqueue/trunk
autoreconf -i
./configure 
make clean
make 
make install
cd /usr/local/src/openbts-2.8.0/smqueue/trunk
rm -Rf /etc/OpenBTS/smqueue.db
sudo sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"
cd /usr/local/src/openbts-2.8.0/smqueue/trunk/smqueue
cp runloop.smqueue.sh /OpenBTS/
cp smqueue /OpenBTS/

Menjalankan OpenBTS

Pastikan Yate sudah di Instalasi.

Lakukan di tiga (3) windows yang berbeda

cd /home/openbts/software/public/subscriberRegistry/trunk/
./sipauthserve &
cd /home/openbts/software/public/smqueue/trunk/smqueue/
./smqueue &
# /etc/init.d/asterisk restart
cd /usr/local/src/yate
rm -Rf /var/log/yate
rm -Rf /var/log/VBTS.log 
./run -t -l /var/log/yate -vvvv -c /usr/local/etc/yate -m /usr/local/lib/yate -e /usr/local/share/yate -d
mkdir /var/run/OpenBTS/
touch /var/run/OpenBTS/TransactionTable.db
cd /home/openbts/software/public/openbts/trunk/apps
./OpenBTS &

Inisialisasi SubscriberRegistry

sudo su
sqlite3 /var/lib/asterisk/sqlite3dir/sqlite3.db
DELETE from DIALDATA_TABLE where ID = 1;
DELETE from DIALDATA_TABLE where ID = 2;
DELETE from DIALDATA_TABLE where ID = 3;
DELETE from DIALDATA_TABLE where ID = 4;
DELETE from DIALDATA_TABLE where ID = 5;
DELETE from DIALDATA_TABLE where ID = 6;

DELETE from SIP_BUDDIES where ID = 1;
DELETE from SIP_BUDDIES where ID = 2;
DELETE from SIP_BUDDIES where ID = 3;
DELETE from SIP_BUDDIES where ID = 4;
DELETE from SIP_BUDDIES where ID = 5;
DELETE from SIP_BUDDIES where ID = 6;

INSERT INTO dialdata_table (exten, dial) VALUES ('2001', 'IMSI001010000000001');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values  ('IMSI001010000000001','IMSI001010000000001','2001','127.0.0.1','friend','phones','dynamic');

INSERT INTO dialdata_table (exten, dial) VALUES ('2002', 'IMSI001010000000002');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values ('IMSI001010000000002','IMSI001010000000002','2002','127.0.0.1','friend','phones','dynamic');

INSERT INTO dialdata_table (exten, dial) VALUES ('2003', 'IMSI510110052460084');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values ('IMSI510110052460084','IMSI510110052460084','2003','127.0.0.1','friend','phones','dynamic');

INSERT INTO dialdata_table (exten, dial) VALUES ('2004', 'IMSI510112410440152');
insert into sip_buddies (name,username,callerid,ipaddr,type,context,host) values ('IMSI510112410440152','IMSI510112410440152','2004','127.0.0.1','friend','phones','dynamic');

Referensi


Pranala Menarik

Persiapan

Script

OpenBTS 2.6

OpenBTS 2.8

Multi OpenBTS 2.8

OpenBTS 3.1.x

Ettus E110

Ettus N210

RangeNetworks

GPRS

Briker OpenBTS

FreeSWITCH OpenBTS

Power Amplifier

Lain Lain

Catatan Legal dan Pendukung

Catatan Sejarah

Dokumentasi Video

Perjuangan OpenBTS