Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2019-09-02 16:46:17 +0400

olegsenin Gravatar olegsenin

ps_phoneprov RealTime

Доброго времени суток. Пытаюсь в реалтайм затащить автопровижинг телефонов. Но чет не получается.

Что сделано:

extconfig.conf psendpoints => odbc,asterisk psauths => odbc,asterisk psaors => odbc,asterisk psdomainaliases => odbc,asterisk psendpointidips => odbc,asterisk pscontacts => odbc,asterisk psphoneprov => odbc,asterisk


sorcery.conf [respjsip] ; Realtime PJSIP configuration wizard endpoint=realtime,psendpoints auth=realtime,psauths aor=realtime,psaors domainalias=realtime,psdomainaliases contact=realtime,pscontacts [respjsipendpointidentifierip] identify=realtime,psendpointidips [respjsipphoneprovprovider] phoneprov=realtime,ps_phoneprov


CREATE TABLE psphoneprov ( id VARCHAR(40) NOT NULL, endpoint VARCHAR(128) NOT NULL, MAC VARCHAR(48) NOT NULL, PROFILE VARCHAR(128) NOT NULL, ENDPOINTID VARCHAR(40) NOT NULL, AUTHID VARCHAR(40) NOT NULL, TRANSPORTID VARCHAR(40) NOT NULL, OTHERVAR TEXT, UNIQUE(id) );


SELECT * FROM psphoneprov WHERE id LIKE '%' ORDER BY id; +------+----------+--------------+------------------+-------------+---------+---------------+ | id | endpoint | MAC | PROFILE | ENDPOINTID | AUTHID | TRANSPORTID | +------+----------+--------------+------------------+-------------+---------+---------------+ | 2776 | 2776 | 805ec0830055 | yealinkt190053 | 2776 | 2776 | transport-udp | | 2778 | 2778 | 805ec0830054 | yealinkt190053 | 2778 | 2778 | transport-udp | +------+----------+--------------+------------------+-------------+---------+---------------+


phoneprov.conf
[yealinkt190053] yealink/${TOLOWER(${MAC})}.cfg => yealink/yealink-t19.cfg


Судя по логам core set debug 5 module reload respjsipphoneprovprovider.so таблица со значениями читается, даже отрабатывает функция: pbxvariables.c:503 aststrsubstitutevariablesfull: Evaluating 'TOLOWER(${MAC})' (from 'TOLOWER(${MAC})}.cfg' len 15 .... pbxvariables.c:379 aststrretrievevariable: Result of 'MAC' is '805ec0830055'

Но вот phoneprov show routes показывает в Dynamic routes пустоту.

При указании в sorcery.conf [respjsipphoneprovprovider] phoneprov=config,pjsip.conf,criteria=type=phoneprov и core restart now (просто core reload результата не дает) Dynamic routes показывает Provider Profile Relative URI Template
res
pjsipphoneprov yealinkt190053 yealink/.cfg yealink/yealink-t19.cfg

После core reload Dynamic routes

Provider Profile Relative URI Template
respjsipphoneprov_ yealinkt190053 yealink/805ec0830055.cfg yealink/yealink-t19.cfg

Шо за бред - не понятно :(

ps_phoneprov RealTime

Доброго времени суток. Пытаюсь в реалтайм затащить автопровижинг телефонов. Но чет не получается.

Что сделано:

extconfig.conf psendpoints => odbc,asterisk psauths => odbc,asterisk psaors => odbc,asterisk psdomainaliases => odbc,asterisk psendpointidips => odbc,asterisk pscontacts => odbc,asterisk psphoneprov => odbc,asterisk


sorcery.conf [respjsip] ; Realtime PJSIP configuration wizard endpoint=realtime,psendpoints auth=realtime,psauths aor=realtime,psaors domainalias=realtime,psdomainaliases contact=realtime,pscontacts [respjsipendpointidentifierip] identify=realtime,psendpointidips [respjsipphoneprovprovider] phoneprov=realtime,ps_phoneprov


CREATE TABLE psphoneprov ( id VARCHAR(40) NOT NULL, endpoint VARCHAR(128) NOT NULL, MAC VARCHAR(48) NOT NULL, PROFILE VARCHAR(128) NOT NULL, ENDPOINTID VARCHAR(40) NOT NULL, AUTHID VARCHAR(40) NOT NULL, TRANSPORTID VARCHAR(40) NOT NULL, OTHERVAR TEXT, UNIQUE(id) );


SELECT * FROM psphoneprov ps_phoneprov WHERE id LIKE '%' ORDER BY id; id;

+------+----------+--------------+------------------+-------------+---------+---------------+ | id | endpoint | MAC | PROFILE | ENDPOINTID | AUTHID | TRANSPORTID | +------+----------+--------------+------------------+-------------+---------+---------------+ | 2776 | 2776 | 805ec0830055 | yealinkt190053 | 2776 | 2776 | transport-udp | | 2778 | 2778 | 805ec0830054 | yealinkt190053 t19_0053 | 2778 | 2778 | transport-udp | +------+----------+--------------+------------------+-------------+---------+---------------+


phoneprov.conf
[yealinkt190053] yealink/${TOLOWER(${MAC})}.cfg => yealink/yealink-t19.cfg


Судя по логам core set debug 5 module reload respjsipphoneprovprovider.so таблица со значениями читается, даже отрабатывает функция: pbxvariables.c:503 aststrsubstitutevariablesfull: Evaluating 'TOLOWER(${MAC})' (from 'TOLOWER(${MAC})}.cfg' len 15 .... pbxvariables.c:379 aststrretrievevariable: Result of 'MAC' is '805ec0830055'

Но вот phoneprov show routes показывает в Dynamic routes пустоту.

При указании в sorcery.conf [respjsipphoneprovprovider] phoneprov=config,pjsip.conf,criteria=type=phoneprov и core restart now (просто core reload результата не дает) Dynamic routes показывает Provider Profile Relative URI Template
res
pjsipphoneprov yealinkt190053 yealink/.cfg yealink/yealink-t19.cfg

После core reload Dynamic routes

Provider Profile Relative URI Template
respjsipphoneprov_ yealinkt190053 yealink/805ec0830055.cfg yealink/yealink-t19.cfg

Шо за бред - не понятно :(

ps_phoneprov RealTime

Доброго времени суток. Пытаюсь в реалтайм затащить автопровижинг телефонов. Но чет не получается.

получается. Что сделано:

extconfig.conf
psendpoints ps_endpoints => odbc,asterisk
psauths ps_auths => odbc,asterisk
psaors ps_aors => odbc,asterisk
psdomainaliases ps_domain_aliases => odbc,asterisk
psendpointidips ps_endpoint_id_ips => odbc,asterisk
pscontacts ps_contacts => odbc,asterisk
psphoneprov => odbc,asterisk


**ps_phoneprov => odbc,asterisk** sorcery.conf [respjsip] [res_pjsip] ; Realtime PJSIP configuration wizard endpoint=realtime,psendpoints auth=realtime,psauths aor=realtime,psaors domainalias=realtime,psdomainaliases contact=realtime,pscontacts [respjsipendpointidentifierip] identify=realtime,psendpointidips [respjsipphoneprovprovider] phoneprov=realtime,ps_phoneprov

endpoint=realtime,ps_endpoints auth=realtime,ps_auths aor=realtime,ps_aors domain_alias=realtime,ps_domain_aliases contact=realtime,ps_contacts [res_pjsip_endpoint_identifier_ip] identify=realtime,ps_endpoint_id_ips [res_pjsip_phoneprov_provider] phoneprov=realtime,ps_phoneprov

CREATE TABLE psphoneprov ps_phoneprov (
  id VARCHAR(40) NOT NULL,
  endpoint VARCHAR(128) NOT NULL,
  MAC VARCHAR(48) NOT NULL,
  PROFILE VARCHAR(128) NOT NULL,
  ENDPOINTID ENDPOINT_ID VARCHAR(40) NOT NULL,
  AUTHID AUTH_ID VARCHAR(40) NOT NULL,
  TRANSPORTID TRANSPORT_ID VARCHAR(40) NOT NULL,
  OTHERVAR TEXT,
  UNIQUE(id)
);

);

SELECT * FROM ps_phoneprov WHERE id LIKE '%' ORDER BY id;

id; +------+----------+--------------+------------------+-------------+---------+---------------+ | id | endpoint | MAC | PROFILE | ENDPOINTID | AUTHID | TRANSPORTID ENDPOINT_ID | AUTH_ID | TRANSPORT_ID | +------+----------+--------------+------------------+-------------+---------+---------------+ | 2776 | 2776 | 805ec0830055 | yealinkt190053 yealink_t19_0053 | 2776 | 2776 | transport-udp | | 2778 | 2778 | 805ec0830054 | yealinkt19_0053 yealink_t19_0053 | 2778 | 2778 | transport-udp | +------+----------+--------------+------------------+-------------+---------+---------------+

+------+----------+--------------+------------------+-------------+---------+---------------+

phoneprov.conf 
[yealinkt190053]
[yealink_t19_0053] yealink/${TOLOWER(${MAC})}.cfg => yealink/yealink-t19.cfg

yealink/yealink-t19.cfg

Судя по логам

core set debug 5
module reload respjsipphoneprovprovider.so
res_pjsip_phoneprov_provider.so

таблица со значениями читается, даже отрабатывает функция: pbxvariables.c:503 aststrsubstitutevariablesfull: функция:

pbx_variables.c:503 ast_str_substitute_variables_full: Evaluating 'TOLOWER(${MAC})' (from 'TOLOWER(${MAC})}.cfg' len 15
 ....
pbxvariables.c:379 aststrretrievevariable: pbx_variables.c:379 ast_str_retrieve_variable: Result of 'MAC' is '805ec0830055'

'805ec0830055'

Но вот

phoneprov show routes

показывает в Dynamic routes пустоту.

При указании в sorcery.conf [respjsipphoneprovprovider] sorcery.conf

[res_pjsip_phoneprov_provider]
phoneprov=config,pjsip.conf,criteria=type=phoneprov

и

core restart now now

(просто core reload результата не дает) дает)

Dynamic routes показывает показывает

Provider             Profile              Relative URI                              Template 
res
pjsipphoneprov yealinkt190053 res_pjsip_phoneprov_ yealink_t19_0053 yealink/.cfg yealink/yealink-t19.cfg

yealink/yealink-t19.cfg

После core reload reload

Dynamic routes

routes Provider Profile Relative URI Template
respjsipphoneprov_ yealinkt190053
res_pjsip_phoneprov_ yealink_t19_0053 yealink/805ec0830055.cfg yealink/yealink-t19.cfg

yealink/yealink-t19.cfg

Т.е. типа из конфига все работает, а из БД нет. Шо за бред - не понятно :(

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.