diff options
author | Ivan Kohler <ivan@freeside.biz> | 2017-09-13 14:40:45 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2017-09-13 14:40:45 -0700 |
commit | 7ec949f0738b27d5445ddde765f7f0d3e69918ce (patch) | |
tree | bfa7023ed01495c6926f00c02537d55a5f766dcd /FS/FS/part_export | |
parent | 98f1a645e6a298a2efcc27ccbd705be1971a0ae3 (diff) |
fiber and DSL http exports, RT#75932
Diffstat (limited to 'FS/FS/part_export')
-rw-r--r-- | FS/FS/part_export/acct_http.pm | 14 | ||||
-rw-r--r-- | FS/FS/part_export/broadband_http.pm | 9 | ||||
-rw-r--r-- | FS/FS/part_export/dsl_http.pm | 72 | ||||
-rw-r--r-- | FS/FS/part_export/fiber_http.pm | 73 | ||||
-rw-r--r-- | FS/FS/part_export/http.pm | 17 |
5 files changed, 170 insertions, 15 deletions
diff --git a/FS/FS/part_export/acct_http.pm b/FS/FS/part_export/acct_http.pm index 414350b..b84e008 100644 --- a/FS/FS/part_export/acct_http.pm +++ b/FS/FS/part_export/acct_http.pm @@ -69,10 +69,16 @@ tie %options, 'Tie::IxHash', 'no_machine' => 1, 'notes' => <<'END' Send an HTTP or HTTPS GET or POST to the specified URL on account addition, -modification and deletion. For HTTPS support, -<a href="http://search.cpan.org/dist/Crypt-SSLeay">Crypt::SSLeay</a> -or <a href="http://search.cpan.org/dist/IO-Socket-SSL">IO::Socket::SSL</a> -is required. +modification and deletion. +<p>Each "Data" option takes a list of <i>name value</i> pairs on successive +lines. +<ul><li><i>name</i> is an unquoted, literal string without whitespace.</li> +<li><i>value</i> is a Perl expression that will be evaluated. If it's a +literal string, it must be quoted. This expression has access to the +svc_acct object as '$svc_x' (or '$new' and '$old' in "Replace Data") +and the customer record as '$cust_main'.</li></ul> +If "Success Regexp" is specified, the response from the server will be +tested against it to determine if the export succeeded.</p> END ); diff --git a/FS/FS/part_export/broadband_http.pm b/FS/FS/part_export/broadband_http.pm index 097ff34..cc1e450 100644 --- a/FS/FS/part_export/broadband_http.pm +++ b/FS/FS/part_export/broadband_http.pm @@ -58,15 +58,12 @@ tie %options, 'Tie::IxHash', %info = ( 'svc' => 'svc_broadband', - 'desc' => 'Send an HTTP or HTTPS GET or POST request, for accounts.', + 'desc' => 'Send an HTTP or HTTPS GET or POST request, for wireless broadband services.', 'options' => \%options, 'no_machine' => 1, 'notes' => <<'END' -<p>Send an HTTP or HTTPS GET or POST to the specified URL on account addition, -modification and deletion. For HTTPS support, -<a href="http://search.cpan.org/dist/Crypt-SSLeay">Crypt::SSLeay</a> -or <a href="http://search.cpan.org/dist/IO-Socket-SSL">IO::Socket::SSL</a> -is required.</p> +<p>Send an HTTP or HTTPS GET or POST to the specified URL on wireless broadband service addition, +modification and deletion. <p>Each "Data" option takes a list of <i>name value</i> pairs on successive lines. <ul><li><i>name</i> is an unquoted, literal string without whitespace.</li> diff --git a/FS/FS/part_export/dsl_http.pm b/FS/FS/part_export/dsl_http.pm new file mode 100644 index 0000000..ac61ec8 --- /dev/null +++ b/FS/FS/part_export/dsl_http.pm @@ -0,0 +1,72 @@ +package FS::part_export::dsl_http; +use base qw( FS::part_export::http ); + +use Tie::IxHash; + +tie our %options, 'Tie::IxHash', + 'method' => { label =>'Method', + type =>'select', + #options =>[qw(POST GET)], + options =>[qw(POST)], + default =>'POST' }, + 'url' => { label => 'URL', default => 'http://', }, + 'ssl_no_verify' => { label => 'Skip SSL certificate validation', + type => 'checkbox', + }, + 'insert_data' => { + label => 'Insert data', + type => 'textarea', + default => join("\n", + ), + }, + 'delete_data' => { + label => 'Delete data', + type => 'textarea', + default => join("\n", + ), + }, + 'replace_data' => { + label => 'Replace data', + type => 'textarea', + default => join("\n", + ), + }, + 'suspend_data' => { + label => 'Suspend data', + type => 'textarea', + default => join("\n", + ), + }, + 'unsuspend_data' => { + label => 'Unsuspend data', + type => 'textarea', + default => join("\n", + ), + }, + 'success_regexp' => { + label => 'Success Regexp', + default => '', + }, +; + +%info = ( + 'svc' => 'svc_dsl', + 'desc' => 'Send an HTTP or HTTPS GET or POST request, for DSL services.', + 'options' => \%options, + 'no_machine' => 1, + 'notes' => <<'END' +Send an HTTP or HTTPS GET or POST to the specified URL on account addition, +modification and deletion. +<p>Each "Data" option takes a list of <i>name value</i> pairs on successive +lines. +<ul><li><i>name</i> is an unquoted, literal string without whitespace.</li> +<li><i>value</i> is a Perl expression that will be evaluated. If it's a +literal string, it must be quoted. This expression has access to the +svc_dsl object as '$svc_x' (or '$new' and '$old' in "Replace Data") +and the customer record as '$cust_main'.</li></ul> +If "Success Regexp" is specified, the response from the server will be +tested against it to determine if the export succeeded.</p> +END +); + +1; diff --git a/FS/FS/part_export/fiber_http.pm b/FS/FS/part_export/fiber_http.pm new file mode 100644 index 0000000..38b23c4 --- /dev/null +++ b/FS/FS/part_export/fiber_http.pm @@ -0,0 +1,73 @@ +package FS::part_export::fiber_http; +use base qw( FS::part_export::http ); + +use Tie::IxHash; + +tie our %options, 'Tie::IxHash', + 'method' => { label =>'Method', + type =>'select', + #options =>[qw(POST GET)], + options =>[qw(POST)], + default =>'POST' }, + 'url' => { label => 'URL', default => 'http://', }, + 'ssl_no_verify' => { label => 'Skip SSL certificate validation', + type => 'checkbox', + }, + 'insert_data' => { + label => 'Insert data', + type => 'textarea', + default => join("\n", + ), + }, + 'delete_data' => { + label => 'Delete data', + type => 'textarea', + default => join("\n", + ), + }, + 'replace_data' => { + label => 'Replace data', + type => 'textarea', + default => join("\n", + ), + }, + 'suspend_data' => { + label => 'Suspend data', + type => 'textarea', + default => join("\n", + ), + }, + 'unsuspend_data' => { + label => 'Unsuspend data', + type => 'textarea', + default => join("\n", + ), + }, + 'success_regexp' => { + label => 'Success Regexp', + default => '', + }, +; + +%info = ( + 'svc' => 'svc_fiber', + 'desc' => 'Send an HTTP or HTTPS GET or POST request, for FTTx services.', + 'options' => \%options, + 'no_machine' => 1, + 'notes' => <<'END' +Send an HTTP or HTTPS GET or POST to the specified URL on account addition, +modification and deletion. +<p>Each "Data" option takes a list of <i>name value</i> pairs on successive +lines. +<ul><li><i>name</i> is an unquoted, literal string without whitespace.</li> +<li><i>value</i> is a Perl expression that will be evaluated. If it's a +literal string, it must be quoted. This expression has access to the +svc_fiber object as '$svc_x' (or '$new' and '$old' in "Replace Data") +and the customer record as '$cust_main'.</li></ul> +If "Success Regexp" is specified, the response from the server will be +tested against it to determine if the export succeeded.</p> +END +); + +1; + diff --git a/FS/FS/part_export/http.pm b/FS/FS/part_export/http.pm index 42a35cb..43ccfc5 100644 --- a/FS/FS/part_export/http.pm +++ b/FS/FS/part_export/http.pm @@ -59,14 +59,21 @@ tie %options, 'Tie::IxHash', %info = ( 'svc' => 'svc_domain', - 'desc' => 'Send an HTTP or HTTPS GET or POST request', + 'desc' => 'Send an HTTP or HTTPS GET or POST request, for domains1', 'options' => \%options, 'no_machine' => 1, 'notes' => <<'END' -Send an HTTP or HTTPS GET or POST to the specified URL. For HTTPS support, -<a href="http://search.cpan.org/dist/Crypt-SSLeay">Crypt::SSLeay</a> -or <a href="http://search.cpan.org/dist/IO-Socket-SSL">IO::Socket::SSL</a> -is required. +Send an HTTP or HTTPS GET or POST to the specified URL on domain addition, +modification and deletion. +<p>Each "Data" option takes a list of <i>name value</i> pairs on successive +lines. +<ul><li><i>name</i> is an unquoted, literal string without whitespace.</li> +<li><i>value</i> is a Perl expression that will be evaluated. If it's a +literal string, it must be quoted. This expression has access to the +svc_domain object as '$svc_x' (or '$new' and '$old' in "Replace Data") +and the customer record as '$cust_main'.</li></ul> +If "Success Regexp" is specified, the response from the server will be +tested against it to determine if the export succeeded.</p> END ); |