$murphx->services_available( cli => "02071112222" );
Returns an hash showing the available services and line qualifications as follows:
( qualification => { classic => '2048000', max => '4096000', 2plus => '5120000', fttc => { 'up' => '6348800', 'down' => '27750400' }, 'first_date' => '2011-03-01' }, product_id => { 'first_date' => '2011-03-01', 'max_speed' => '4096000', 'product_name' => 'DSL Product Name' }, ... )
$murphx->modify( "service-id" => "12345", "client-ref" => "myref", "prod-id" => "1000", "crd" => "2009-12-31", "care-level" => "standard" "inclusive-transfer" => "3", "test-mode" = "N" );
Modify the service specificed in service-id. Parameters are as per the Murphx documentation
Returns order-id for the modify order.
$murphx->change_password( "service-id" => "12345", "password" => "secret" );
Changes the password for the ADSL login on the given service.
Requires service-id and password
Returns 1 for successful password change.
$murphx->woosh_response( "12345" );
Obtains the results of a Woosh test, previously requested using request_woosh(). Takes the ID of the woosh test as its only parameter. Note that this will only return results for completed Woosh tests. Use woosh_list() to determine if the woosh test is completed.
Returns an hash containing a hash for each set of test results. See Murphx documentation for details of the test result fields.
$murphx->woosh_list( "12345" );
Obtain a list of all woosh tests requested for the given service-id and their status.
Requires service-id as the single parameter.
Returns an array, each element of which is a hash containing the following fields for each requested Woosh test:
service-id woosh-id start-time stop-time status
The array elements are sorted by date with the most recent being first.
$murphx->request_woosh( "service-id" => "12345", "fault-type" => "EPP", "has-worked" => "Y", "disruptive" => "Y", "fault-time" => "2007-01-04 15:33:00");
Alias to woosh_request_oneshot
$murphx->woosh_request_oneshot( "service-id" => "12345", "fault-type" => "EPP", "has-worked" => "Y", "disruptive" => "Y", "fault-time" => "2007-01-04 15:33:00");
Places a request for Woosh test to be run on the given service. Parameters are passed as a hash which must contain:
service-id - ID of the service fault-type - Type of fault to check. See Murphx documentation for available types has-worked - Y if the service has worked in the past, N if it has not disruptive - Y to allow Woosh to run a test which will be disruptive to the service. fault-time - date and time (ISO format) the fault occured
Returns a scalar which is the id of the woosh test. Use woosh_response with this id to get the results of the Woosh test.
$murphx->order_updates_since( "date" => "2007-02-01 16:10:05" );
Alias to order_eventlog_changes
$murphx->order_eventlog_changes( "date" => "2007-02-01 16:10:05" );
Returns a list of events that have occurred on all orders since the provided date/time.
The return is an date/time sorted array of hashes each of which contains the following fields: order-id date name value
$murphx->auth_log( "service-id" => '12345', "rows" => "5" );
Alias for service_auth_log
$murphx->service_auth_log( "service-id" => '12345', "rows" => "5" );
Gets the last n rows, as specified in the rows parameter, of authentication log entries for the service
Returns an array, each element of which is a hash containing: auth-date, username, result and, if the login failed, error-message
$murphx->session_log( { } );
Alias for service_session_log
$murphx->service_session_log( "session-id" => "12345", "rows" => "5" );
Gets the last entries in the session log for the service. The number of entries is specified in the "rows" parameter.
Returns an array each element of which is a hash containing:
start-time stop-time download upload termination-reason
$murphx->usage_summary( "service-id" =>'12345', "year" => '2009', "month" => '01' );
Alias for service_usage_summary()
$murphx->service_usage_summary( "service-id" =>'12345', "year" => '2009', "month" => '01' );
Gets a summary of usage in the given month. Inputs are service-id, year, month.
Returns a hash with the following fields:
year, month, username, total-sessions, total-session-time, total-input-octets, total-output-octets
Input octets are upload bandwidth. Output octets are download bandwidth.
Be warned that the total-input-octets and total-output-octets fields returned appear to be MB rather than octets contrary to the Murphx documentation.
$murphx->service_terminate_session( "12345" );
Terminates the current session on the given service-id.
Returns 1 if successful
$murphx->cease( "service-id" => 12345, "reason" => "This service is no longer required" "client-ref" => "ABX129", "crd" => "1970-01-01", "accepts-charges" => 'Y' );
Places a cease order to terminate the ADSL service completely. Takes input as a hash.
Required parameters are : service-id, crd, client-ref
Returns order-id which is the ID of the cease order for tracking purposes.
$murphx->requestmac( "service-id" => '12345', "reason" => "EU wishes to change ISP" );
Obtains a MAC for the given service. Parameters are service-id and reason the customer wants a MAC.
Returns a hash comprising: mac, expiry-date
$murphx->service_status( "12345" );
Gets the current status for the given service id.
Returns a hash containing:
live, username, ip-address, session-established, session-start-date, ping-test, average-latency
$murphx->service_history( "12345" );
Returns the full history for the given service as an array each element of which is a hash:
order-id name date value
$murphx->service_eventlog_history( "12345" );
$murphx->services_history( "start-date" => "2007-01-01", "stop-date" => "2007-02-01" );
Returns an array each element of which is a hash continaing the following data:
service-id order-id date name value
$murphx->service_eventlog_changes( "start-date" => "2007-01-01", "stop-date" => "2007-02-01" );
$murphx->order_status( '12345' );
Gets status of an order. Input is the order-id from Murphx
Returns a hash containing a hash order and a hash customer The order hash contains:
order-id, service-id, client-ref, order-type, cli, service-type, service, username, status, start, finish, last-update
The customer hash contains:
forename, surname, address, city, county, postcode, telephone, building
$murphx->service_view ( "service-id" => '12345' );
Combines the data from service_details, service_history and service_options
Returns a hash as follows:
%service = ( "service-details" => { service-id => "", product-id => "", ... }, "service-options" => { "speed-limit" => "", "suspended" => "", ... }, ""service-history" => { [ { "event-date" => "", ... }, ... ] }, "customer-details" => { "title" => "", "forename", ... } )
See Murphx documentation for full details
$murphx->service_details( '12345' );
Obtains details of the service identified by "service-id" from Murphx
Returns a hash with details including (but not limited to): activation-date, cli, care-level, technology-type, service-id username, password, live, product-name, ip-address, product-id cidr
$murphx->interleaving_status( "service-id" => 12345 );
Returns current interleaving status if available or undef;
If not undef status can be one of:
'opt-in', 'opt-out' or 'auto'
$murphx->order_history( 12345 );
Alias to order_eventlog_history
order_eventlog_history
$murphx->order_eventlog_history( 12345 );
Gets order history
Returns an array, each element of which is a hash showing the next update in date sorted order. The hash keys are date, name and value.
$murphx->services_overusage( "period" => "", "limit" => "100" );
Returns an array each element of which is a hash detailing each service which has exceeded its usage cap. See the Murphx documentation for details.
$murphx->speed_limit_status( 12345 );
Returns either a hash reference or a description of the speed limit status.
$murphx->speed_limit_enable( "service-id" => 12345, "upstream-limit" => "768", "downstream-limit" => "768", );
Set speed limits for the given service.
$murphx->speed_limit_disable( 12345 );
Turn off speed limits for the given service.
$murphx->service_unsuspend( 12345 );
Unsuspend this broadband service.
$murphx->service_suspend( "service-id" => 12345, reason => "I don't like them");
Suspend this broadband service for the given reason.
$murphx->walledgarden_status( "service-id" => 12345 );
Returns true is the current service is subject to walled garden restrictions or undef if not.
$murphx->walledgarden_enable( "service-id" => 12345, "ip-address" -> '192.168.1.1' );
Redirects all (http and https) traffic to the specified IP address
$murphx->walledgarden_disable( "service-id" => 12345 );
Disables the "walled garden" restriction on the service
$murphx->change_carelevel( "service-id" -> 12345, "care-level" => "enhanced" );
Changes the care-level associated with a given service.
care-level can be set to either standard or enhanced.
Returns true is successful.
$murphx->carei_level( "service-id" -> 12345, "care-level" => "enhanced" );
$murphx->service_actions( "service-id" -> 12345 );
Returns a hash detailing which actions can be taken on the given service.
Each action has a corresponding function in this module.
$murphx->product_details( $product-id );
Returns full product details for the given product id
$murphx->customer_details($serviceId);
Returns the customer details for a given service ID
$murphx->case_new( "service-id" => 12345, "service-type" => "adsl", "username" => "username@realm", "cli" => "02071112222", "os" => "Linux", "hardware-product" => "Other", "problem-type" => "Connection", "experienced" => "2010-01-01", "reported" => "User does not have sync", "priority" => "High" );
$murphx->case_view( "case-id" => "12345" );
Returns a hash containing details of an existing case
$murphx->case_search( "service-id" => 12345 );
Returns basic details of all cases matching a given search.
Search parameters can include the following (and must include at least one of them):
case-id, service-id, customer-id, service-type, username, partial-cli, engineer, problem-type, priority or status
Returns an array, each element of which is a hash providing basic details of the case. Use case_view and case_history to get more details.
$murphx->case_history( "case-id" => "12345" );
Returns a full history for the given case-id.
Return is an array, each element of which is a hash detailing a specific update to the case.
$murphx->case_update( "case-id" => "12345", "priority" => "High", "reason" => "More information about problem" );
Updates the given case with update given in "reason".
Returns 1 if update completed.
$murphx->regrade_options( "service-id" => "12345" );
Returns an array containing details of the regrade options avaiulable on the given service using the module. Each element of the array is a hash with the same specification as returned by services_available
$murphx->regrade( "service-id" => "12345", "prod-id" => 1595, "crd" => "2010-02-01" );
Places an order to regrade the specified service to the defined prod-id on the crd specified. Use regrade_options first to determine which products are available and the earliest crd available.
The parameters you may pass to this function are the same as for the modify function. See Murphx documentation for details.
$murphx->order( # Customer details forename => "Clara", surname => "Trucker", building => "123", street => "Pigeon Street", city => "Manchester", county => "Greater Manchester", postcode => "M1 2JX", telephone => "01614960213", # Order details clid => "01614960213", "client-ref" => "claradsl", "prod-id" => $product, crd => $leadtime, username => "claraandhugo", password => "skyr153", "care-level" => "standard", realm => "surfdsl.net" );
Submits an order for DSL to be provided to the specified phone line. Note that all the parameters above must be supplied. CRD is the requested delivery date in YYYY-mm-dd format; you are responsible for computing dates after the minimum lead time. The product ID should have been supplied to you by Murphx.
Additional parameters are listed below and described in the integration guide:
title street company mobile email fax sub-premise fixed-ip routed-ip allocation-size hardware-product max-interleaving test-mode inclusive-transfer
If a mac and losing-isp is passed, then the order is understood as a migration rather than a provision.
mac
losing-isp
Returns a hash describing the order.
Returns the terms-and-conditions to be presented to the user for signup of a broadband product.
$murphx->first_crd( "order-type" => "provide", "product-id" => "1595" );
Returns the first possible date in ISO format an order of the specified may be placed for.
Required Parameters:
order-type : provide, migrate in, modify or cease product-id : the Murphx product ID
$murphx->leadtime( "order-type" => "provide", "product-id" => "1595" );
Returns a hash detailing the leadtime and first date for an order of the given type and for the given product.
Returns:
leadtime : number of leadtime days first-date-int : first date as seconds since unix epoch first-date-text : first date in ISO format
To install Net::DSLProvider, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::DSLProvider
CPAN shell
perl -MCPAN -e shell install Net::DSLProvider
For more information on module installation, please visit the detailed CPAN module installation guide.