X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_export%2Fvitelity.pm;h=d715535295a50002eb0758a6675a72dcdeac92da;hb=38e34bbc53a4222c7507e95914e1364a5a74623f;hp=f80ef6d6dfe125b9b1e3f0c71eeb5052dc0b8a58;hpb=9fa1bf13b76c0177a3aa12d70aabe5358a9fa3e5;p=freeside.git diff --git a/FS/FS/part_export/vitelity.pm b/FS/FS/part_export/vitelity.pm index f80ef6d6d..d71553529 100644 --- a/FS/FS/part_export/vitelity.pm +++ b/FS/FS/part_export/vitelity.pm @@ -286,8 +286,8 @@ sub _export_insert { my $cust_main = $svc_phone->cust_svc->cust_pkg->cust_main; - return 'Customer company is required' - unless $cust_main->company; + #return 'Customer company is required' + # unless $cust_main->company; return 'Customer day phone (for contact, not porting) is required' unless $cust_main->daytime; @@ -306,7 +306,7 @@ sub _export_insert { 'partial' => 'no', 'wireless' => 'no', 'carrier' => $svc_phone->lnp_other_provider, - 'company' => $cust_main->company, + 'company' => $cust_main->company || $cust_main->contact, 'accnumber' => $svc_phone->lnp_other_provider_account, 'name' => $svc_phone->phone_name_or_cust, 'streetnumber' => $sa->{number}, @@ -387,7 +387,13 @@ sub _export_insert { my $e911_error = $self->e911_send($svc_phone); - if ( $e911_error =~ /^(missingdata|invalid)/i ) { + if ( $e911_error =~ /status=(missingdata|invalid)/i ) { + + my $status = $1; + if ( $e911_error =~ /error=(.*)/ ) { + $e911_error = "status=$status, error=$1"; + } + #but we already provisioned the DID, so: $self->vitelity_command('removedid', 'did'=> $svc_phone->phonenum,); #and check the results? if it failed, then what? @@ -404,6 +410,7 @@ sub e911_send { return '' if $self->option('disable_e911'); my %location = $svc_phone->location_hash; + $location{'zip'} =~ s/\-\d{4}$//; my %e911send = ( 'did' => $svc_phone->phonenum, 'name' => $svc_phone->phone_name_or_cust, @@ -419,7 +426,7 @@ sub e911_send { my $e911_result = $self->vitelity_command('e911send', %e911send); - unless ( $e911_result =~ /^(missingdata|invalid)/i ) { + unless ( $e911_result =~ /status=(missingdata|invalid)/i ) { warn "Vitelity response: $e911_result" if $self->option('debug'); return ''; }