From eac305c9d7e39e5cdfa194ab4af9288998796ed2 Mon Sep 17 00:00:00 2001
From: Ivan Kohler <ivan@freeside.biz>
Date: Wed, 12 Jul 2017 15:18:09 -0700
Subject: [PATCH 1/1] correctly parse error response from e911 provisioning,
 RT#76262

---
 FS/FS/part_export/vitelity.pm | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/FS/FS/part_export/vitelity.pm b/FS/FS/part_export/vitelity.pm
index 30c68d316..51e134aec 100644
--- a/FS/FS/part_export/vitelity.pm
+++ b/FS/FS/part_export/vitelity.pm
@@ -309,7 +309,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?
-- 
2.20.1