public function get_phone_by_name($NAME)
    {
        $SEARCH = ['name' => $NAME];
        $BASETIME = $this->microtimeTicks();
        $RETURN = $this->SOAPCLIENT->getPhone($SEARCH);
        $DIFFTIME = $this->microtimeTicks() - $BASETIME;
        // log our soap call
        $this->log_soap_call('getPhone', $DIFFTIME, $SEARCH, $RETURN);
        // Decode the reply into an array of results
        $RETURN = $this->decode_soap_reply($RETURN);
        // Count the number of replies we recieved...
        $COUNT = count($RETURN);
        // It should be EXACTLY one result
        if ($COUNT !== 1) {
            throw new \Exception("Search returned {$COUNT} results, not exactly 1 as expected");
        }
        // Strip off the outer array
        $RETURN = reset($RETURN);

        return $RETURN;
    }