Freeside:4:Documentation:Developer/FS/deploy zone

From Freeside
Jump to: navigation, search

NAME

FS::deploy_zone - Object methods for deploy_zone records

SYNOPSIS

 use FS::deploy_zone;

 $record = new FS::deploy_zone \%hash;
 $record = new FS::deploy_zone { 'column' => 'value' };

 $error = $record->insert;

 $error = $new_record->replace($old_record);

 $error = $record->delete;

 $error = $record->check;

DESCRIPTION

An FS::deploy_zone object represents a geographic zone where a certain kind of service is available. Currently we store this information to generate the FCC Form 477 deployment reports, but it may find other uses later.

FS::deploy_zone inherits from FS::Record. The following fields are currently supported:

zonenum
primary key
description
Optional text describing the zone.
agentnum
The agent that serves this zone.
censusyear
The census map year for which this zone was last updated. May be null for zones that contain no census blocks (mobile zones, or fixed zones that haven't had their block lists filled in yet).
dbaname
The name under which service is marketed in this zone. If null, will default to the agent name.
zonetype
The way the zone geography is defined: "B" for a list of census blocks (used by the FCC for fixed broadband service), "P" for a polygon (for mobile services). See FS::deploy_zone_block and FS::deploy_zone_vertex. Note that block-type zones are still allowed to have a vertex list, for use by the map editor.
technology
The FCC technology code for the type of service available.
spectrum
For mobile service zones, the FCC code for the RF band.
adv_speed_up
For broadband, the advertised upstream bandwidth in the zone. If multiple speed tiers are advertised, use the highest.
adv_speed_down
For broadband, the advertised downstream bandwidth in the zone.
cir_speed_up
For broadband, the contractually guaranteed upstream bandwidth, if that type of service is sold.
cir_speed_down
For broadband, the contractually guaranteed downstream bandwidth, if that type of service is sold.
is_consumer
'Y' if this service is sold for consumer/household use.
is_business
'Y' if this service is sold to business or institutional use. Not mutually exclusive with is_consumer.
is_broadband
'Y' if this service includes broadband Internet.
is_voice
'Y' if this service includes voice communication.
active_date
The date this zone became active.
expire_date
The date this zone became inactive, if any.

METHODS

new HASHREF
Creates a new zone. To add the zone to the database, see "insert".
insert ELEMENTS
Adds this record to the database. If there is an error, returns the error, otherwise returns false.
delete
Delete this record from the database.
replace OLD_RECORD
Replaces the OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.
check
Checks all fields to make sure this is a valid zone record. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.
deploy_zone_block
Returns the census block records in this zone, in order by census block number. Only appropriate to block-type zones.
deploy_zone_vertex
Returns the vertex records for this zone, in order by sequence number.
vertices_json
Returns the vertex list for this zone, as a JSON string of
[ [ latitude0, longitude0 ], [ latitude1, longitude1 ] ... ]

SUBROUTINES

process_batch_import JOB, PARAMS; process_block_lookup JOB, ZONENUM
Look up all the census blocks in the zone's footprint, and insert them. This will replace any existing block list.

BUGS

SEE ALSO

FS::Record

POD ERRORS

Hey! The above document had some coding errors, which are explained below:

Around line 285:
You forgot a '=back' before '=head2'
Around line 450:
You forgot a '=back' before '=head1'