Asterisk com PostgreSQL e unixodbc
Olá caros. Aqui estou para contribuir com este tutorial que considero importante saber, para os amantes do Asterisk. Ele permite usar configuração dinâmica e melhor interação com PHP, ASP ou qualquer outro recurso que manipule banco de dados via Web. Espero que seja útil para a galera!
Parte 2: Configuração
Agora para criar a base de dados do asterisk, siga os seguintes passos:
# su postgres -c "/usr/local/pgsql/bin/createdb asterisk"
# su postgres -c "psql -d asterisk"
asterisk=# create user asterisk
asterisk=# ALTER DATABASE asterisk OWNER TO asterisk
asterisk=# \q
Pronto, já existe uma base de dados. Agora vamos fazer a integração com o asterisk.
Teremos agora que criar tabelas referentes aos confs do asterisk. Cada tabela terá como campos as opções de cada arquivo. Por exemplo, a tabela sip terá como campo os seguintes nomes: name; secret, host...
Agora edite o arquivo extconfig.conf substituindo as seguintes linhas:
sipusers => odbc,asterisk
sippeers => odbc,asterisk
Por:
# su postgres -c "/usr/local/pgsql/bin/createdb asterisk"
# su postgres -c "psql -d asterisk"
asterisk=# create user asterisk
asterisk=# ALTER DATABASE asterisk OWNER TO asterisk
asterisk=# \q
Pronto, já existe uma base de dados. Agora vamos fazer a integração com o asterisk.
Teremos agora que criar tabelas referentes aos confs do asterisk. Cada tabela terá como campos as opções de cada arquivo. Por exemplo, a tabela sip terá como campo os seguintes nomes: name; secret, host...
Agora edite o arquivo extconfig.conf substituindo as seguintes linhas:
sipusers => odbc,asterisk
sippeers => odbc,asterisk
Por:
sipusers => odbc,asterisk,sip
sippeers => odbc,asterisk,sip
sippeers => odbc,asterisk,sip
Isso fará com que o asterisk tente comunicação pelo driver odbc, na base de dados asterisk, para buscar informações na tabela sip. O arquivo sip.conf pode-se deixar apenas as configurações gerais, já que as configurações de cada usuário estará no postgres.
Agora temos que configurar para que o asterisk consiga se comunicar com o driver unixodbc e este com o postgres.