function GetUserInfo($complex) { global $soap; $soap = true; $xmsUser = $complex->xmsUser; $xmsUser = str_replace('UTF-16', 'UTF-8', $xmsUser); $return = '<?xml version="1.0" encoding="utf-16"?>' . "\n"; try { $xml = new SimpleXMLElement($xmsUser); $user = $xml->userId; $pass = $xml->password; try { $gv = new GoogleVoice($user, $pass); $email = $user; $phone = $gv->getNumber(); $return .= '<userInfo xmlns="http://schemas.microsoft.com/office/Outlook/2006/OMS">'; $return .= '<replyPhone>' . $phone . '</replyPhone>'; $return .= '<smtpAddress>' . $email . '</smtpAddress>'; $return .= '<error code="ok" severity="neutral" />'; $return .= '</userInfo>'; } catch (Exception $e) { $return .= '<userInfo xmlns="http://schemas.microsoft.com/office/Outlook/2006/OMS">'; $return .= '<error code="invalidUser" severity="failure" />'; $return .= '</userInfo>'; } } catch (Exception $e) { $return .= '<userInfo xmlns="http://schemas.microsoft.com/office/Outlook/2006/OMS"><error code="invalidFormat" severity="failure" /></userInfo>'; } return ['GetUserInfoResult' => $return]; }
<?php include '../GoogleVoice.php'; include 'LoginInfo.php'; $gv = new GoogleVoice($username, $password); echo '<pre>'; echo 'Phone Number: ', $gv->getNumber(), "\n\n"; // call a phone from one of your forwarding phones $gv->callNumber('9999999999', '8888888888', 'mobile'); // send an SMS to a phone number $gv->sendSMS('9999999999', 'Sending a message!'); // fetch new voicemails $voicemails = $gv->getNewVoicemail(); $msgIDs = array(); foreach ($voicemails as $s) { preg_match('/\\+1([0-9]{3})([0-9]{3})([0-9]{4})/', $s['phoneNumber'], $match); $phoneNumber = '(' . $match[1] . ') ' . $match[2] . '-' . $match[3]; echo 'Message from: ' . $phoneNumber . ' on ' . $s['date'] . "\n" . $s['message'] . "\n\n"; if (!in_array($s['msgID'], $msgIDs)) { // mark the conversation as "read" in google voice $gv->markSMSRead($s['msgID']); $msgIDs[] = $s['msgID']; } } // get all new SMSs $sms = $gv->getNewSMS(); $msgIDs = array(); foreach ($sms as $s) { preg_match('/\\+1([0-9]{3})([0-9]{3})([0-9]{4})/', $s['phoneNumber'], $match); $phoneNumber = '(' . $match[1] . ') ' . $match[2] . '-' . $match[3]; echo 'Message from: ' . $phoneNumber . ' on ' . $s['date'] . ': ' . $s['message'] . "\n";