[Spce-user] fast way to import a few hundred peering rules

Skyler skchopperguy at gmail.com
Mon Nov 12 18:08:04 EST 2012


Hi Matthew,

 Did this example help you by chance? I am looking to import 300k or so of
peering rules but Perl is not my strength. I'm thinking if this example
from Andreas is used with loop reading from a CSV it could be very useful
as a tool within SPCE.

 Would you mind sharing your final solution?

Skyler

On Mon, Apr 16, 2012 at 2:35 PM, Andreas Granig <agranig at sipwise.com> wrote:

> Ok, actually tried to run it in Perl, here's the syntactically correct
> version
>
> #!/usr/bin/perl -w
> use strict;
> use Sipwise::Provisioning::Voip;
> my $prov = Sipwise::Provisioning::Voip->new();
> my $params = {
>         group_id => 'your peering group id here',
>         data => {
>                 caller_prefix => 'your caller pattern',
>                 callee_prefix => 'your callee prefix',
>                 description   => 'your rule description',
>         },
> };
> eval {
>         my $res = $prov->handle_request('create_peer_rule', {
>                 authentication => {
>                         type=>'admin',
>                         username=>'your admin panel user',
>                         password=>'your admin panel pass',
>                 },
>                 parameters => $params
>         });
> };
> if($@) {
>         if(ref $@ eq 'SOAP::Fault') {
>                 die "ossbss call failed: ". $@->faultstring;
>         } else {
>                 die "ossbss call failed: $@";
>         }
> }
>
> Andreas
>
> On 04/16/2012 11:31 PM, Andreas Granig wrote:
> > Hi Mattew,
> >
> > On 04/15/2012 04:50 PM, Matthew Ogden wrote:
> >> Where can one find the peering rules config files if you want to import
> >> a large number of peering rules into them?
> >
> > There is no such thing as a config file, the data is stored in MySQL.
> > However the intended way is to use either the SOAP interface for mass
> > provisioning, or (even faster, but only works directly on the system),
> > use the ossbss libs in a perl script, like this (just out of my head,
> > really not tested):
> >
> > #!/usr/bin/perl -w
> > use strict;
> > use Sipwise::Provisioning::Voip;
> > my $prov = Sipwise::Provisioning::Voip->new();
> > my $params = {
> >       group_id => your peering group id here,
> >       data => {
> >               caller_prefix => 'your caller pattern',
> >               callee_prefix => 'your callee prefix',
> >               description   => 'your rule description',
> >       },
> > };
> > eval {
> >       my $res = $prov->handle_request('create_peer_rule', {
> >               authentication => {
> >                       type='admin',
> >                       username='your admin panel user',
> >                       password='your admin panel pass',
> >               },
> >               parameters => $params
> >       });
> > };
> > if($@) {
> >       if(ref $@ eq 'SOAP::Fault') {
> >               die "ossbss call failed: ". $@->faultstring;
> >       } else {
> >               die "ossbss call failed: $@";
> >       }
> > }
> >
> > Adapt (and fix) as needed to work in a loop for all your rules.
> >
> > Andreas
> >
> >
> >
> >
> > _______________________________________________
> > Spce-user mailing list
> > Spce-user at lists.sipwise.com
> > http://lists.sipwise.com/listinfo/spce-user
>
>
> _______________________________________________
> Spce-user mailing list
> Spce-user at lists.sipwise.com
> http://lists.sipwise.com/listinfo/spce-user
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sipwise.com/mailman/private/spce-user_lists.sipwise.com/attachments/20121112/b7356ab5/attachment.html>


More information about the Spce-user mailing list