• Tidak ada hasil yang ditemukan

Langkah – Langkah Konfigurasi ARA pada Asterisk

2.6 Asterisk Realtime Architecture ( ARA )

2.6.1 Langkah – Langkah Konfigurasi ARA pada Asterisk

Untuk dapat menggunakan teknik ARA pada Asterisk, diperlukan suatu

driver yang digunakan untuk koneksi Asterisk dengan database, yaitu asterisk-addons. Sebelum driver ini digunakan, maka perlu di compile terlebih dahulu dengan perintah sebagai berikut :

Proses compile asterisk-addons tersebut, akan menambahkan modules res_config_mysql.so dan cdr_mysql.so pada direktori /usr/lib/asterisk/modules .Kedua buah modules ini berguna untuk koneksi Asterisk dengan database

khususnya databaseMySQL. Setelah kedua modules tersebut ditambahkan, maka perlu untuk meng-copy file res_mysql.conf.sample dan cdr_mysql.conf.sample

yang berasal dari {asterisk-addons-direktori} menuju ke direktori /etc/asterisk.

Perintahnya adalah sebagai berikut :

Setelah dipastikan bahwa file res_mysql.conf dan cdr_mysql.conf ter-copy

pada direktori /etc/asterisk, maka langkah selanjutnya adalah melakukan

konfigurasi pada beberapa file konfigurasi antara lain : 1. Konfigurasi file res_mysql.conf

Konfigurasi ini dilakukan untuk mengkoneksikan antara Asterisk dengan

database yang digunakan. Konfigurasi yang digunakan misalkan saja sebagai berikut :

Shell > cd {asterisk-addons-direktory}

Shell > cp res_mysql.conf.sample /etc/asterisk/res_mysql.conf Shell > cp cdr_mysql.conf.sample /etc/asterisk/cdr_mysql.conf Shell > cd {asterisk-addons-direktory}

Konfigurasi diatas, menyimpan informasi tentang host / IP address,

nama database, nama user dari database, password user database, nomor

port yang digunakan.

2. Konfigurasi file cdr_mysql.conf

Konfigurasi ini dilakukan untuk mengkoneksikan antara Asterisk dengan tabel yang digunakan untuk menyimpan data call detail record. Konfigurasi yang digunakan misalkan saja sebagai berikut :

Gambar 2.18 Contoh Konfigurasi file cdr_mysql.conf

Konfigurasi diatas, menyimpan informasi tentang host / IP address,

nama database, nama tabel yang digunakan, nama user dari database, password user database, nomor port yang digunakan.

3. Konfigurasi file extconfig.conf

Konfigurasi ini dilakukan agar Asterisk dengan menggunakan teknik

Asterisk Realtime dapat mengkonfigurasi sippeers / sipusers, voicemail, dan

extensions ( DialPlan ) melalui database MySQL. Konfigurasi tersebut

[global] hostname=127.0.0.1 dbname= asteriskrealtime table=cdr password=mypass user=myuser port=3306 sock=/var/lib/mysql/mysql.sock userfield=1 [general] dbhost = 127.0.0.1 dbname = asteriskrealtime dbuser = myuser dbpass = mypass dbport = 3306 dbsock = /tmp/mysql.sock

masing – masing digunakan untuk otentikasi users / pendaftaran nomor

telepon, konfigurasi fasilitas voicemail, dan pengaturan nomor Dial

( DialPlan ). Format untuk konfigurasi ini adalah sebagai berikut :

[settings]

file.conf => driver,database[,table]

Contoh konfigurasi pada fileextconfig.conf :

Gambar 2.19 Contoh Konfigurasi file extconfig.conf

4. Konfigurasi file extensions.conf

Konfigurasi ini dilakukan agar Asterisk dapat membaca data konfigurasi

DialPlan pada tabel yang ada di database. Konfigurasi yang digunakan misalkan saja sebagai berikut :

Gambar 2.20 Contoh Konfigurasi file extensions.conf

Konfigurasi diatas berarti bahwa seluruh panggilan ( call ) pada context asterisk-users, akan dibaca secara Realtime dengan context home

dengan nama family extensions ( nama family ini sama dengan nama family

yang digunakan pada file extconfig.conf untuk pengaturan DialPlan ).

Setelah mengkonfigurasi file – file seperti diatas, maka langkah selanjutnya adalah membuat tabel yang akan digunakan untuk menyimpan data konfigurasi. Tabel – tabel yang akan digunakan merupakan tabel standard yang dapat dikenali oleh sistem Asterisk. Perintah SQL untuk membuat tabel – tabel tersebut antara lain sebagai berikut ( diambil dari site www.voip-info.org) :

[settings] sipusers => mysql,asteriskrealtime,sip_buddies sippeers => mysql,asteriskrealtime,sip_buddies extensions => mysql,asteriskrealtime,extensions voicemail => mysql,asteriskrealtime,voicemessages [asterisk-users] switch => Realtime/home@extensions

1. Tabel sip_buddies

Tabel ini digunakan untuk menyimpan data konfigurasi users / peers.

Perintah SQL untuk membuat tabel sip_buddies adalah sebagai berikut : CREATE TABLE `sip_buddies` (

`id` int(11) NOT NULL auto_increment, `name` varchar(80) NOT NULL default '', `host` varchar(31) NOT NULL default '', `nat` varchar(5) NOT NULL default 'no',

`type` enum('user','peer','friend') NOT NULL default 'friend', `accountcode` varchar(20) default NULL,

`amaflags` varchar(13) default NULL, `callgroup` varchar(10) default NULL, `callerid` varchar(80) default NULL, `cancallforward` char(3) default 'yes', `canreinvite` char(3) default 'yes', `context` varchar(80) default NULL, `defaultip` varchar(15) default NULL, `dtmfmode` varchar(7) default NULL, `fromuser` varchar(80) default NULL, `fromdomain` varchar(80) default NULL, `insecure` varchar(4) default NULL, `language` char(2) default NULL, `mailbox` varchar(50) default NULL, `md5secret` varchar(80) default NULL, `deny` varchar(95) default NULL, `permit` varchar(95) default NULL, `mask` varchar(95) default NULL,

`musiconhold` varchar(100) default NULL, `pickupgroup` varchar(10) default NULL, `qualify` char(3) default NULL,

`regexten` varchar(80) default NULL, `restrictcid` char(3) default NULL, `rtptimeout` char(3) default NULL, `rtpholdtimeout` char(3) default NULL, `secret` varchar(80) default NULL, `setvar` varchar(100) default NULL, `disallow` varchar(100) default 'all',

`allow` varchar(100) default 'g729;ilbc;gsm;ulaw;alaw', `fullcontact` varchar(80) NOT NULL default '',

`ipaddr` varchar(15) NOT NULL default '',

`port` smallint(5) unsigned NOT NULL default '0', `regseconds` int(11) NOT NULL default '0',

`username` varchar(80) NOT NULL default '', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`), KEY `name_2` (`name`) )

TYPE=MyISAM ROW_FORMAT=DYNAMIC;

2. Tabel extensions_table

Tabel ini di gunakan untuk menyimpan data untuk pengaturan DialPlan

Perintah SQL untuk membuat tabel extensions_table adalah sebagai berikut :

3. Tabel voicemail_users

Tabel ini digunakan untuk menyimpan informasi client yang dapat

menggunakan fasilitas voicemail pada Asterisk.

Perintah SQL untuk membuat tabel voicemail_users adalah sebagai berikut :

4. Tabel CDR ( Call Detail Record )

Tabel ini digunakan untuk menyimpan data catatan pembicaraan ( komunikasi ) yang terjadi pada Asterisk.

Perintah SQL untuk membuat tabel cdr adalah sebagai berikut : CREATE TABLE `extensions_table` (

`id` int(11) NOT NULL auto_increment, `context` varchar(20) NOT NULL default '', `exten` varchar(20) NOT NULL default '', `priority` tinyint(4) NOT NULL default '0', `app` varchar(20) NOT NULL default '', `appdata` varchar(128) NOT NULL default '', PRIMARY KEY (`context`,`exten`,`priority`), KEY `id` (`id`)

) TYPE=MyISAM;

Gambar 2.22 Perintah SQL untuk membuat tabel extensions_table

CREATE TABLE `voicemail_users` (

`uniqueid` int(11) NOT NULL auto_increment, `customer_id` int(11) NOT NULL default '0', `context` varchar(50) NOT NULL default '', `mailbox` int(5) NOT NULL default '0', `password` varchar(4) NOT NULL default '0', `fullname` varchar(50) NOT NULL default '', `email` varchar(50) NOT NULL default '', `pager` varchar(50) NOT NULL default '', `stamp` timestamp(14) NOT NULL,

PRIMARY KEY (`uniqueid`),

KEY `mailbox_context` (`mailbox`,`context`) ) TYPE=MyISAM;

Dokumen terkait