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

Не работает скрипт AGI (Radius_auth)

0

Добрый день! Пытаюсь настроить аутентификацию через Radius. Аккаунтинг работает без проблем, а аутентификация не хочет! При чем ошибок не выдает вообще:

> -- Executing [84956477777@sip_auth:1] AGI("SIP/1001-00000004", "agi-rad-auth.agi,Mode=Account&Username= 1001 ") in new stack <p>
    -- Launched AGI Script /var/lib/asterisk/agi-bin/agi-rad-auth.agi <p>
<SIP/1001-00000004>AGI Tx >> agi_request: agi-rad-auth.agi <p>
<SIP/1001-00000004>AGI Tx >> agi_channel: SIP/1001-00000004 <p>
<SIP/1001-00000004>AGI Tx >> agi_language: en <p>
...
<SIP/1001-00000004>AGI Tx >> agi_accountcode: <p>
<SIP/1001-00000004>AGI Tx >> agi_threadid: 140464187651840 <p>
<SIP/1001-00000004>AGI Tx >> agi_arg_1: Mode=Account&Username= 1001 <p>
<SIP/1001-00000004>AGI Tx >> <p>
    -- <SIP/1001-00000004>AGI Script agi-rad-auth.agi completed, returning 0

Подскажите почему нет ответа через STDOUT (AGI Rx <<)??

Скрипт взят вот от сюда Вот его начало:

use Crypt::CBC;
use Asterisk::AGI;
use Authen::Radius;
use Digest::MD5 qw(md5_hex);

my $return_code;

my $credit_time = -1;
my $timeout = -1;
my $credit_amount;
my $hangup = 1;
my $call_setup = 1;

$AGI = new Asterisk::AGI;
my %input = $AGI->ReadParse();

return $todecode;
$AGI->verbose("AGI Environment Dump:", 3);
foreach my $i (sort keys %input) {
        $AGI->verbose(" -- $i = $input{$i}", 3);
return $todecode;
}



my %params;
my(@pairs) = split(/[&;]/,$ARGV[0]);
my($param,$value);
foreach (@pairs) {
    ($param,$value) = split('=',$_,2);
    $param = unescape($param);
    $value = unescape($value);
    $params{$param}=$value;
}

Все модули подгружены. На соседней машине этот же скрипт аутентификации работает. Не могу разобраться, ошибок вообще не выдает!

Помогите, пжл.

удалить закрыть спам изменить тег редактировать

спросил 2012-09-24 17:18:21 +0400

Anatoly_anso Gravatar Anatoly_anso
1 2 1

обновил 2012-09-24 18:26:13 +0400

zzuz Gravatar zzuz flag of Russian Federation
6744 2 6 69
http://line24.ru/

Comments

спрашивали же недавно... с теми симптомами в платный саппорт.

komrad123 ( 2012-09-24 17:43:15 +0400 )редактировать

Отредактировал , но не понял что такое "пжл". Видимо значит "Помогите , Плохие Жирные Люди." Хам.

zzuz ( 2012-09-24 18:27:34 +0400 )редактировать

прям этот же ? с return сразу после readparse да еще без всяких процедур ?

komrad123 ( 2012-09-24 18:35:21 +0400 )редактировать

да да. Автор видимо так , от балды прерисовал. Щедрый , еще ничего не принял , а уже отдает)

zzuz ( 2012-09-24 18:38:59 +0400 )редактировать

return это я приресовал. Пытался понять, доходит он до туда или нет. В конце концов выяснилось, ты хоть что там приресуй он все равно скажет completed. Если в начале убрать подгрузку модуля ( use Asterisk::AGI;) то Rx начинает появляться. Может подмена какая-нить осуществляется...

Anatoly_anso ( 2012-09-25 09:40:22 +0400 )редактировать

Мистика. Если Вам простой пример не даётся , то может ну его?

zzuz ( 2012-09-25 10:15:11 +0400 )редактировать

дебаг делается так. в скрипт делаете $AGI->verbose("something"). в астериске включает agi set debug on

meral ( 2012-09-25 15:22:24 +0400 )редактировать

1 Ответ

0

вы же используете не астериск а внешний неработающий скрипт.

откройте скрипт и найдите в чем дело.

не можете разобраться - в раздел бизнес или в форум по перлу. хотя вас там тоже отошлют кудато.скорее всего на мануалы по дебагу или в университет.

ссылка удалить спам редактировать

ответил 2012-09-24 18:26:13 +0400

meral Gravatar meral flag of Ukraine
21228 23 18 169
http://pro-sip.net/

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2012-09-24 17:18:21 +0400

Просмотрен: 363 раз

Обновлен: Sep 24 '12

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