services_available

$enta->services_available ( cli => "02072221122" );

Returns a hash showing line qualification data

get_appointments $enta->get_appointments( cli => "02070010001", date => "2012-01-01", attributes => { ExtensionKit => 1 } );

Returns an array listing available appointment slots or, if it is not possible to obtain appointments, returns a token to poll for the list at a later point.

Required parameters:

cli         Telephone Number
date        Earliest date for appointments

Optional parameters:

attributes  Hash ref of required extensions (see Enta docs)

book_appointment

$enta->book_appointment($tokenid);

Book a specific appointment slot

poll

$enta->poll(token => '12345');

Poll for an appointment slot or appointment confirmation

See get_appointments and book_appointment methods

list_connections

$enta->list_connections(liveorceased=>"live", fields=>"Username,Ref");

Returns a list of connections as an array

pending_orders

$enta->pending_orders();

Returns a list of all pending orders with their status

pstn_pending_orders

$enta->pstn_pending_orders();

Returns a list of all pending PSTN orders

rate_limited

$enta->rate_limited( returntype => "username" );

Returns a list of connections which are currently rate limited

get_blocked

$enta->get_blocked( returntype => "telephone" );

Return a list of connections which are blocked and the reason for the block.

get_bt_faults

$enta->get_bt_faults();

Returns a list of faults open with BT

See Enta docs for params

heavy

$enta->heavy();

Returns a list of heavy users

See Enta docs for more details

regrade_options

$enta->regrade_options( "service-id" => "ADSL12345" );

Returns an array detailing the available regrade options on the service.

Data returned is the same as from services_available

adslchecker

$enta->adslchecker( cli => "02072221122", mac => "LSDA12345523/DF12D" );

Returns details from Enta's interface to the BT ADSL checker. See Enta docs for details of what is returned.

cli parameter is required. mac is optional

username_available

$enta->username_available( username => 'abcdef' );

Returns true if the specified username is available to be used for a customer ADSL login at Enta.

verify_mac

$enta->verify_mac( cli => "02072221111", mac => "ABCD0123456/ZY21X" );

Given a cli and MAC returns 1 if the MAC is valid.

interleaving_status

$enta->interleaving_status( "service-id" => "ADSL12345" );

Returns the current interleaving status if available

interleaving

$enta->interleaving( "service-id" => "ADSL123456", "interleaving" => "No")

Changes the interleaving setting on the given service

stabilityoption

$enta->stabilityoption( "service-id" => "ADSL123456", "option" => "Standard" );

Sets the Stability Option feature on a service

elevatedbestefforts

$enta->elevatedbestefforts( "service-id" => "ADSL123456", "option" => "Yes",
    "fee" => "5.00" );

Enables or disables Elevated Best Efforts on the given service. If the optional "fee" parameter is passed the monthly fee for this option is set accordingly, otherwise it is set to the default charged by Enta.

care_level

$enta->carei_level( "service-id" -> "ADSL12345", "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.

enhanced_care

$enta-enhanced_care( "service-id" => "ADSL123456", "option" => "On",
    "fee" => "15.00" );

Enables or disabled Enhanced Care on a given service. If the optional "fee" parameter is passed the monthly fee for this option is set accordingly, otherwise it is set to the default charged by Enta.

modifylinefeatures

$enta->modifylinefeatures(
    "Ref" => "ADSL123456", "Username" => "abcdef", 
    "Telephone" => "02071112222", "LineFeatures" => {
        "Interleaving" => "No", 
        "StabilityOption" => "Standard", 
        "ElevatedBestEfforts" => "Yes", 
        "ElevatedBestEffortsFee" => "15.00", 
        "MaintenanceCategory" => "4",
        "MaintenanceCategoryFee" => "25.00"
    } );

Modify the Enta service reference specificed in either Ref, Username or Telephone. Parameters are as per the Enta documentation

Returns a hash containing details of the new settings resulting from the change(s) made - ie:

%return = { interleaving => "No" };

order_updates_since

$enta->order_updates_since( "date" => "2009-12-01" );

Returns all the BT order updates since the given date

getbtfeed

$enta->getbtfeed( "days" => 5 );

Returns a list of events that have occurred on all orders over the number of days specified.

Parameters:

days : The number of days up to the current date to get reports for

The return is an date/time sorted array of hashes each of which contains the following fields: order-id date name value

update_contact

$enta->update_contact( "service-id" => "ADSL12345", 
                        email => 'me@example.com',
                        telday => '02070020011',
                        televe => '02080020011' );

Updates the given contact details. Returns true if updated.

You can use this to change the email address, daytime telephone number and evening telephone number of the contact for the given service.

update_price

$enta->update_price("service-id" => "ADSL1234", period-fee => 19.99);

Updates the price charged for a given service

cease

$enta->cease( "service-id" => "ADSL12345", "crd" => "1970-01-01" );

Places a cease order to terminate the ADSL service completely.

request_mac

$enta->request_mac( "service-id" => 'ADSL12345');

Obtains a MAC for the given service.

Returns a hash comprising: mac, expiry-date if the MAC is available or submits a request for the MAC which can be obtained later.

auth_log

$enta->auth_log( "service-id" => 'ADSL12345' );

Gets the most recent authentication attempt log.

max_reports

$enta->max_reports( "service-id" => "ADSL12345" );

Returns the ADSL MAX reports for connections which are based upon ADSL MAX

order_eventlog_history

$enta->order_eventlog_history( username => "myusername" );

Gets the provisioning history for a specified customer order.

Takes "username" as parameter.

Returns an array, each element of which details an order update.

getadslinstall

$enta->getadslinstall( username => "username", dateformat => "%d %b %Y" );

Get's the provisioning history for the specified customer

Returns an array, each element of which is a hash detailing an update as follows:

date name value

service_view

$enta->service_details( "service-id" => 'ADSL12345' );

Returns the ADSL service details

service_details

$enta->service_details( "service-id" => 'ADSL12345' );

Returns the ADSL service details

adslaccount

$enta->adslaccount( "service-id" => "ADSL12345" );

Returns details for the given service

order

$enta->order(
    # Customer details
    forename => "Clara", surname => "Trucker", company => "ABC Ltd",
    building => "123", street => "Pigeon Street", city => "Manchester", 
    county => "Greater Manchester", postcode => "M1 2JX",
    telephone => "01614960213", email => "clare@example.com",
    # 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 Enta.

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

llu_order

$enta->llu_order(...)

Place an order for an LLU service. See Enta docs for details

terms_and_conditions

Returns the URI where the T&C for Entanet services is located.

product_change

Not implemented in Enta API Yet

regrade

Not Implemented in Enta API Yet

usage_summary

$enta->usage_summary( "service-id" => "ADSL12345", "year" => '2009', "month" => '01' );

Returns a summary of usage in the given month

usage_history

$enta->usage_history( startdatetime => '2010-01-01', enddatetime => '2010-12-01');

usage_history_detail

 $enta->usage_history_detail( "service-id" => "ADSL12345", 
     startday => '2009-12-01', endday => '2010-02-01',
     dateformat => "%a, %d %m %Y");

 $enta->usage_history_detail( "service-id" => "ADSL12345", 
     day => '2010-02-01' );

Returns usage details for each day in a period or each 10 minute period in a day if called with day as the parameter.

Parameters:

service-id : Service identifier (or ref, username or telephone)
startday   : Start date in ISO format
endday     : End data in ISO format
day        : Date in ISO format
dateformat : Format string per strftime. Defaults to ISO. (Optional)

Either the startday and endday parameters or the day parameter must be passed.

Returns an array, each element of which is a hash containing usage details for either a day or a 10 minute interval.

Data returned per a day has the following keys:

date        : Date formatted for presentation ( eg Mon, 22 Feb 2010 )
totaldown   : Total number of bytes downloaded
totalup     : Total number of bytes uploaded
peakdown    : Bytes downloaded during peak period
peakup      : Bytes uploaded during peak period

Data returned per 10 minute interval for a day:

time    : Time at end of measured time interval
down    : bytes downloaded during interval
up      : bytes uploaded during interval

allowance

$enta->allowance( "service-id" => "ADSL12345" );

Returns details of the customers bandwidth usage allowance including overall allowance and any overusage (topup or payg) allowances on the account.

session_log

$enta->session_log( "service-id" => "ADSL12345", "days" => 5 );

Returns details of recent ADSL sessions - optionally specifying the number of days for how recent.

connectionhistory

$enta->connectionhistory( "service-id" => "ADSL12345", "days" => 5 );

Returns details of recent ADSL sessions - optionally specifying the number of days for how recent.

first_crd

$enta->first_crd();

Returns the first date an order may be placed for.