Curl 允许pjsip中的任何用户

Curl 允许pjsip中的任何用户,curl,asterisk,pjsip,asterisk-realtime,Curl,Asterisk,Pjsip,Asterisk Realtime,我试图将配置从chan_sip切换到pjsip,但遇到了一些问题 旧的sip.conf autocreatepeer=yes context=unauthenticated qualify=yes allowguest=yes 这使我可以使用登录myuser@domain,我将能够在sip show peers中查找myuser 我尝试了以下方法,但全部失败: [anonymous] type=endpoint context=unauthenticated 结果:登录失败:匿名用户没有AO

我试图将配置从chan_sip切换到pjsip,但遇到了一些问题

旧的sip.conf

autocreatepeer=yes
context=unauthenticated
qualify=yes
allowguest=yes
这使我可以使用登录myuser@domain,我将能够在sip show peers中查找myuser

我尝试了以下方法,但全部失败:

[anonymous]
type=endpoint
context=unauthenticated
结果:登录失败:匿名用户没有AOR

[anonymous@domain]
type=endpoint
context=unauthenticated
[anonymous@domain]
type=endpoint
aors=anonymous
context=unauthenticated
[anonymous]
type=aor
max_contacts=999
结果:登录失败:匿名用户没有AOR

[anonymous@domain]
type=endpoint
context=unauthenticated
[anonymous@domain]
type=endpoint
aors=anonymous
context=unauthenticated
[anonymous]
type=aor
max_contacts=999
结果:登录适用于anonymous@domain,但登录失败myuser@domain:没有myuser的AOR

[mylogins]
type=identify
match=0.0.0.0/0
endpoint=mylogins
[mylogins]
type=auth
auth_type=userpass
password=...
username=...
[mylogins]
type=endpoint
context=unauthenticated
auth=mylogins
结果:登录失败:mylogins没有AOR

我如何允许“匿名”登录,以及以后如何通过他们的登录(在本例中是myuser)在某处找到对等方/端点/aor?
或者,可以通过脚本“实时”吗?

让它与一些大规模的实时黑客一起工作

extconfig.conf:

ps_endpoints => curl,http://localhost/cgi-bin/pjsip.pl?endp
ps_aors => curl,http://localhost/cgi-bin/pjsip.pl?aor
#!/usr/bin/perl
use strict;
use warnings;

print "Content-type: text/html\n\n";
my $request = join("", <STDIN>);
my $reqType = $ENV{"QUERY_STRING"};

exit 0 unless $request =~ /id=(.+?)(?:%40|$)/ || $1 eq "anonymous";

print "id=$1&type=endpoint&aors=$1&context=unauthenticated&auth=mylogins&disallow=all&allow=alaw,g729,ulaw\n" if $reqType eq "endp/single";
print "id=$1&max_contacts=1\n" if $reqType eq "aor/single";
pjsip.pl:

ps_endpoints => curl,http://localhost/cgi-bin/pjsip.pl?endp
ps_aors => curl,http://localhost/cgi-bin/pjsip.pl?aor
#!/usr/bin/perl
use strict;
use warnings;

print "Content-type: text/html\n\n";
my $request = join("", <STDIN>);
my $reqType = $ENV{"QUERY_STRING"};

exit 0 unless $request =~ /id=(.+?)(?:%40|$)/ || $1 eq "anonymous";

print "id=$1&type=endpoint&aors=$1&context=unauthenticated&auth=mylogins&disallow=all&allow=alaw,g729,ulaw\n" if $reqType eq "endp/single";
print "id=$1&max_contacts=1\n" if $reqType eq "aor/single";
#/usr/bin/perl
严格使用;
使用警告;
打印“内容类型:text/html\n\n”;
我的$request=join(“,”);
my$reqType=$ENV{“QUERY_STRING”};
除非$request=~/id=(.+?)(?:%40 |$)/| |$1 eq“匿名”,否则退出0;
如果$reqType eq“endp/single”,则打印“id=$1&type=endpoint&aors=$1&context=unauthenticated&auth=mylogins&disallow=all&allow=alaw,g729,ulaw\n”;
如果$reqType eq“aor/single”,则打印“id=$1&max_contacts=1\n”;