diff options
author | Ivan Kohler <ivan@freeside.biz> | 2015-07-21 19:16:20 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2015-07-21 19:16:20 -0700 |
commit | a634ad8132ac08e2ce1f4c43019bfb104a8456c1 (patch) | |
tree | f2d1b8151c6c851c718c4593772ba486db3d62cd | |
parent | dba9cc11f7ad2337506e40ed2aa6bc9e890cc977 (diff) |
self-service API list_contacts doc, RT#37372
-rw-r--r-- | FS/FS/ClientAPI/MyAccount/contact.pm | 2 | ||||
-rwxr-xr-x | bin/xmlrpc-list_contacts | 28 | ||||
-rw-r--r-- | fs_selfservice/FS-SelfService/SelfService.pm | 40 |
3 files changed, 69 insertions, 1 deletions
diff --git a/FS/FS/ClientAPI/MyAccount/contact.pm b/FS/FS/ClientAPI/MyAccount/contact.pm index 5690f86..31bbb0c 100644 --- a/FS/FS/ClientAPI/MyAccount/contact.pm +++ b/FS/FS/ClientAPI/MyAccount/contact.pm @@ -82,7 +82,7 @@ sub list_contacts { #TODO: contact phone numbers 'comment' => $_->comment, 'selfservice_access' => $_->selfservice_access, - 'disabled' => $contact->disabled, + #'disabled' => $contact->disabled, }; } $cust_main->cust_contact ); diff --git a/bin/xmlrpc-list_contacts b/bin/xmlrpc-list_contacts new file mode 100755 index 0000000..ffe2a31 --- /dev/null +++ b/bin/xmlrpc-list_contacts @@ -0,0 +1,28 @@ +#!/usr/bin/perl + +use strict; +use Frontier::Client; +use Data::Dumper; + +my( $email, $password ) = @ARGV; + +my $uri = new URI 'http://localhost:8080/'; + +my $server = new Frontier::Client ( 'url' => $uri ); + +my $login_result = $server->call( + 'FS.ClientAPI_XMLRPC.login', + 'email' => $email, + 'password' => $password, +); +die $login_result->{'error'}."\n" if $login_result->{'error'}; + +my $list_result = $server->call( + 'FS.ClientAPI_XMLRPC.list_contacts', + 'session_id' => $login_result->{'session_id'}, +); +die $list_result->{'error'}."\n" if $list_result->{'error'}; + +print Dumper($list_result); + +1; diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm index 06dcc2b..e01d17b 100644 --- a/fs_selfservice/FS-SelfService/SelfService.pm +++ b/fs_selfservice/FS-SelfService/SelfService.pm @@ -1375,6 +1375,46 @@ error message, or empty on success. =item list_contacts +Takes a hash reference as parameter with a single key, B<session_id>. + +Returns a hash reference with two parameters: B<error>, which contains an error +message, or empty on success, and B<contacts>, a list of contacts. + +B<contacts> is an array reference of hash references (i.e. an array of structs, + in XML-RPC). Each hash reference (struct) has the following keys: + +=over4 + +=item contactnum + +=item class + +Contact class name (contact type). + +=item first + +First name + +=item last + +Last name + +=item title + +Position ("Director of Silly Walks"), NOT honorific ("Mr." or "Mrs.") + +=item emailaddress + +Comma-separated list of email addresses + +=item comment + +=item selfservice_access + +Y when enabled + +=back + =item edit_contact Updates information for the currently-logged in contact, or (optionally) the |