PostgreSQL

From Yate Documentation
Revision as of 13:41, 27 March 2013 by Dana (Talk | contribs)

Jump to: navigation, search

This module is used to make the connection between Yate and a PostgreSQL database.

When using this module for storing CDRs, also read [call.cdr] section in Register.

Contents

Check if module is loaded

Note: Check if module PostGreSQL is loaded. It is required to be loaded so that Yate can connect to database.

Verify module loading when starting Yate

When Yate starts you can see a list of modules that are loaded. If PostGreSQL does not appear, you must install the devel packages, then reload Yate.

./run -vvvvv -CDo
..........
Loaded module PostgreSQL
.......

Verify module loading from rmanager

Another way to check if module is loaded is from telnet, use command status check if pgsqldb is in the list:

 %%+status                                                             
 ...............
name=pgsqldb,type=database,format=Total|Failed|Errors|AvgExecTime;conns=0,failed=0
............
%%-status

Or simply type after command status the name of the module like this:

status pgsqldb
%%+status:pgsqldb
name=pgsqldb,type=database,format=Total|Failed|Errors|AvgExecTime;conns=0,failed=0
%%-status

Configuration

pgsqldb.conf

[general]
; This section is special - holds settings common to all connections

; priority: int: Handler priority
;priority=100
 

; Each other section in this file describes a database connection

;[default]
; The section name is used as the database connection name

; autostart: bool: Automatically initiate the connection on startup
;autostart=yes

; timeout: int: Query timeout in milliseconds
;timeout=10000

; retry: int: How many times to retry the connection or query
;retry=5

; encoding: string: Character set encoding used to communicate with the server
;  If not set will match the encoding of server side database
;encoding=

; connection: string: Ready-built client connection string for PQconnectStart
;  If this is not set the string is built from the following pieces
;  Take care if you set this - it will override anything that follows
 ;connection=

; host: string: PostgreSQL server to connect to
;host=localhost

; port: int: Port on which the server is listening for connections
;port=5432

; database: string: Name of the database to use in queries
;database=yate

; user: string: Username to use to access the database
;user=postgres

; password: string: Password to authenticate the user to the database server
;password=

Example

Example of configuring an PostGreSQL database account in file pgsqldb.conf:

[yateadmin]
host=localhost
database=yateadmin
user=postgres
password=yate_admin

This is where a new connection is made.
You can have multiple connections to different databases.
The name between [] will be used in other configuration files to set the used account.

If you need to store CDRs, you will have to use register.conf file, so that Yate will know which connection to make.

register.conf

[general]
account=yateadmin


See also

Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers