function invokeGetServiceStatusOutboundService(FBAOutboundServiceMWS_Interface $service, $request) { try { $response = $service->getServiceStatus($request); if ($response->isSetGetServiceStatusResult()) { $getServiceStatusResult = $response->getGetServiceStatusResult(); if ($getServiceStatusResult->isSetStatus()) { $theResult = $getServiceStatusResult->getStatus(); if ($theResult == "GREEN") { $level = "Neutral"; } else { $level = "Bad"; } $category = "Service Status"; $title = "Outbound Shipment Service Status"; AmzFBA_Woo_Log($level, $category, $title, $theResult); } } } catch (FBAOutboundServiceMWS_Exception $ex) { // echo("XML: " . $ex->getXML() . "\n"); $level = "Bad"; $category = "Service Status"; $title = "Outbound Shipment Service Error"; $info = "Caught Exception: " . $ex->getMessage() . " | Response Status Code: " . $ex->getStatusCode() . " | Error Code: " . $ex->getErrorCode() . " | Error Type: " . $ex->getErrorType() . " | Request ID: " . $ex->getRequestId(); AmzFBA_Woo_Log($level, $category, $title, $info); $badResult = "Error getting service status - please see logs. "; SendErrorEmail($category, $info); } catch (Exception $e) { HandleGenericException("Service Status", $e); } if (isset($theResult)) { $returnmessage = "Current service status: " . $theResult; } elseif (isset($badResult)) { $returnmessage = $badResult; } else { $returnmessage = "Could not initiate 'GetServiceStatus'"; } return $returnmessage; }