FreeSWITCH使用MySQL配置

2021-09-12 04:16:48 字數 3090 閱讀 8155

freeswith預設使用sqlite作為資料庫,但是很多時候我們需要使用mysql等資料庫作為伺服器資料庫使用。這裡以mysql為例介紹相關配置

yum install mysql-connector-odbc.x86_64 unixodbc-devel.x86_64
vim /etc/odbc.ini

[freeswitch]            # mysql的表名字

description = mysql

driver = mysql

server = 127.0.0.1 # mysql所在的位址

socket = /var/lib/mysql/mysql.sock

port = 3306

password = 123456 # 資料庫密碼

database = freeswitch # 資料庫是freeswitch

option = 67108864

charset = utf8

vim /etc/odbcinst.ini

[mysql]

description = odbc for mysql

driver = /usr/lib64/libmyodbc5.so

setup = /usr/lib64/libodbcmys.so

driver64 = /usr/lib64/libmyodbc5.so

setup64 = /usr/lib64/libodbcmys.so

fileusage = 1

如果你的伺服器沒有安裝mysql可以按照下述方法安裝,如果已經有了資料庫,則跳過這個步驟。

因為筆者使用的系統是centos 7所以推薦使用mariadb替代mysql

yum install mysql.x86_64 mysql-connector-odbc.x86_64 mysql-devel.x86_64 mysql-libs.x86_64 mysql-server.x86_64  perl-dbd-mysql.x86_64

// 用 mariadb 替代 mysql

yum install mariadb mariadb-server

systemctl start mariadb

systemctl enable mariadb

mysql_secure_installation

yum install mariadb-devel

初始化資料庫後建立freeswitch資料庫create database freeswitch;

接下來測試odbc是否正常

isql -v freeswitch
如果登陸成功,那麼就說明是ok的。此時的mysql資料庫裡面的表還是空的。

回到編譯目錄,重新編譯,加入--enable-core-odbc-support引數。

./configure --enable-core-odbc-support

make

&&make

install

這裡的資料庫賬號root密碼123456

找到相應的檔案按照如下配置:

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="core-db-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

>

name

="delete-all-outbound-member-on-startup"

value

="false"

/>

name

="odbc-dsn"

value

="freeswitch:root:123456"

/>

settings

>

cmd=

"set"

data

="json_db_handle=odbc://freeswitch:root:123456"

/>

重啟freeswitch基本流程就完成了。

freeswitch 使用記錄

當新建 new 乙個channel時,它首先會進行初始化 init 然後進入路由 routing 階段,也就是我們 查詢解析dialplan的階段。在這裡,要注意乙個專門的術語 hunting 在傳統的交換機裡,它譯為選線,在這 裡我就譯為選路吧 找到合適的路由入口後,hunting會執行 exec...

freeswitch 使用外部directory

freeswitch 例子中提供了靜態檔案的directory 實際應用中都是從資料庫載入的 配置方法如下 1.首先要開啟 mod xml curl 模組 quote quote 2.配置 xml curl.conf檔案 配置了乙個 dialplan閘道器和乙個directory 閘道器 quote...

FreeSWITCH使用mysql儲存使用者

為什麼80 的碼農都做不了架構師?freeswitch預設是採用 directory資料夾下的xml來配置使用者的,對於後期開發來說是非常不方便的,所以本文來實現使用mysql來儲存使用者,並用lua指令碼來接管使用者驗證,步驟如下 一 配置odbc 二 建立資料庫 建立使用者表 create ta...