`
天梯梦
  • 浏览: 13748067 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

基于PHP的Google Voice 短信API

 
阅读更多

1. 简单类

 

class.googlevoice.php

 

<?PHP
/*
Version     0.2
License     This code is released under the MIT Open Source License. Feel free to do whatever you want with it.
Author      lostleon@gmail.com, http://www.lostleon.com/
LastUpdate  05/28/2010
*/
class GoogleVoice
{
    public $username;
    public $password;
    public $status;
    private $lastURL;
    private $login_auth;
    private $inboxURL = 'https://www.google.com/voice/m/';
    private $loginURL = 'https://www.google.com/accounts/ClientLogin';
    private $smsURL = 'https://www.google.com/voice/m/sendsms';

    public function __construct($username, $password)
    {
        $this->username = $username;
        $this->password = $password;
    }

    public function getLoginAuth()
    {
        $login_param = "accountType=GOOGLE&Email={$this->username}&Passwd={$this->password}&service=grandcentral&source=com.lostleon.GoogleVoiceTool";
        $ch = curl_init($this->loginURL);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2_1 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5H11 Safari/525.20");
        curl_setopt($ch, CURLOPT_REFERER, $this->lastURL);
        curl_setopt($ch, CURLOPT_POST, "application/x-www-form-urlencoded");
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $login_param);
        $html = curl_exec($ch);
        $this->lastURL = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
        curl_close($ch);
        $this->login_auth = $this->match('/Auth=([A-z0-9_-]+)/', $html, 1);
        return $this->login_auth;
    }

    public function get_rnr_se()
    {
        $this->getLoginAuth();
        $ch = curl_init($this->inboxURL);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $headers = array("Authorization: GoogleLogin auth=".$this->login_auth, 'User-Agent: Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2_1 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5H11 Safari/525.20');
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        $html = curl_exec($ch);
        $this->lastURL = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
        curl_close($ch);
        $_rnr_se = $this->match('!<input.*?name="_rnr_se".*?value="(.*?)"!ms', $html, 1);
        return $_rnr_se;
    }

    public function sms($to_phonenumber, $smstxt)
    {
        $_rnr_se = $this->get_rnr_se();
        $sms_param = "id=&c=&number=".urlencode($to_phonenumber)."&smstext=".urlencode($smstxt)."&_rnr_se=".urlencode($_rnr_se);
        $ch = curl_init($this->smsURL);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $headers = array("Authorization: GoogleLogin auth=".$this->login_auth, 'User-Agent: Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2_1 like Mac OS X; en-us) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5H11 Safari/525.20');
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_REFERER, $this->lastURL);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $sms_param);      
        $this->status = curl_exec($ch);
        $this->lastURL = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
        curl_close($ch);
        return $this->status;
    }

    private function match($regex, $str, $out_ary = 0)
    {
        return preg_match($regex, $str, $match) == 1 ? $match[$out_ary] : false;
    }
}
?>
 

实例:

 

<?
require 'class.googlevoice.php';
$gv = new GoogleVoice("GmailAccount", "GmailPassword");
$gv->sms("PhoneNumber", "TextMsg");
echo $gv->status;
?>
 

来源: http://code.google.com/p/phpgooglevoice/

 

 

2.  尝试附件

 

来源: http://sudocode.net/download/sources/script-gvoicesms-send-php

 

 

 

分享到:
评论

相关推荐

    基于PHP的Google Voice 短信发送接口PHP开源版 支持群发.zip

    【标题】中的“基于PHP的Google Voice 短信发送接口PHP开源版 支持群发”表明这是一个使用PHP编程语言开发的项目,其主要功能是实现通过Google Voice服务发送短信,并且支持短信的群发功能。这个开源版本意味着源...

    基于PHP的GoogleVoice短信发送接口开源版源码.zip

    "基于PHP的GoogleVoice短信发送接口开源版源码.zip"这个标题指出,这是一个使用PHP编程语言开发的项目,目的是实现一个能够发送短信的接口,该接口是与GoogleVoice服务相连接的。GoogleVoice是一个由Google提供的...

    基于PHP的GoogleVoice短信发送接口PHP开源版支持群发源码.zip

    【标题】中的“基于PHP的GoogleVoice短信发送接口PHP开源版支持群发源码”指出,这是一个使用PHP编程语言开发的GoogleVoice短信发送系统。这个系统不仅提供了单个短信发送的功能,还支持短信的群发操作,且源代码是...

    基于PHP的Google Voice 短信发送接口开源版.zip

    【标题】中的“基于PHP的Google Voice 短信发送接口开源版”表明这是一个使用PHP编程语言实现的项目,它提供了与Google Voice服务交互的能力,尤其是用于发送短信的功能。Google Voice是一个电话管理服务,允许用户...

    PHP实例开发源码——Google Voice 短信发送接口开源版.zip

    总的来说,这个开源项目为学习者提供了一个实际的PHP与Web服务交互的示例,特别是使用Google Voice API发送短信的实现,有助于提升开发者在API集成、PHP编程以及Web服务交互方面的技能。通过分析和研究这个项目,...

    PHP实例开发源码—Google Voice 短信发送接口PHP开源版 支持群发.zip

    开发者或学习者可以通过下载和解压这个压缩包,来查看和理解如何通过PHP与Google Voice API进行交互,以及如何实现群发短信的功能。 虽然没有具体的标签,但我们可以推断这个项目可能涉及以下关键知识点: 1. **...

    GOOGLE VOICE无限短信接口 程序 v2.0.zip

    【谷歌语音(GOOGLE VOICE)无限短信接口程序 V2.0】 谷歌语音是一个由Google提供的电话服务,它允许用户发送和接收短信、打电话以及管理多个电话号码。在这个V2.0版本的程序中,开发者提供了更强大的功能,使得与...

    PHP实例开发源码—Google Voice 短信发送接口开源版.zip

    【标题】"PHP实例开发源码—Google Voice 短信发送接口开源版.zip" 提供的是一款基于PHP实现的Google Voice短信发送接口的开源代码。Google Voice是Google推出的一款虚拟电话服务,允许用户通过一个统一的电话号码...

    GOOGLE VOICE无限短信接口 v1.0.zip

    在这个“GOOGLE VOICE无限短信接口 v1.0.zip”压缩包中,包含了一个PHP源码实现,用于利用Google Voice API发送无限量的短信。以下是关于这个接口及相关知识点的详细解释: 1. **Google Voice服务**:Google Voice...

    GOOGLE VOICE无限短信接口+程序 v2.0

    在本项目"GOOGLE VOICE无限短信接口+程序 v2.0"中,我们将探讨如何利用PHP源代码实现与Google Voice服务的交互,以实现无限发送短信的功能。 首先,理解Google Voice API的工作原理至关重要。该API基于RESTful架构...

    PHP实例开发源码——Google Voice 短信发送接口PHP开源版 支持群发.zip

    【标题】"PHP实例开发源码——Google Voice 短信发送接口PHP开源版 支持群发.zip" 涉及的知识点主要集中在PHP编程语言、Google Voice服务以及短信发送接口的实现。PHP是一种广泛使用的开源脚本语言,特别适合于Web...

    Google Voice 短信发送接口PHP开源版 支持群发 v1.0.rar

    Google Voice 短信发送接口PHP开源版,如果需要群发多帐号用英文逗号(,)分隔(86159..,86159..),消息内容不支持中文,当您输入中文的时候系统会自动转换为拼音(为了区分是拼音,拼音首字母大写),保证消息能正常发送...

    Google Voice 短信发送接口PHP开源版 支持群发 v1.0

    【Google Voice 短信发送接口PHP开源版 支持群发 v1.0】是一个基于PHP编写的程序,用于通过Google Voice服务发送短信,并且具备群发功能。这个开源项目为开发者提供了一种集成Google Voice短信服务到他们自己的应用...

    Google Voice 带群发的PHP短信发送接口

    内容索引:PHP源码,其它类别,API,飞信 Google Voice 带群发的PHP版短信发送接口,如果一次发送较多,请使用英文逗号隔离开,所需PHP扩展:curl ,编码均为GBK,程序不支持发送中文,因此会自动转换中文为拼音,此...

    语音识别php文件

    在本案例中,我们关注的是一个名为"GoogleVoiceApi"的文件,这可能是用于调用谷歌语音识别API的PHP类或脚本。 谷歌语音识别API是谷歌云平台的一部分,提供了强大的语音转文本服务。它能够处理多种语言,支持实时和...

    google-translate-voice-download:这是一个PHP脚本,用于下载Google翻译语音mp3文件

    标题中的“google-translate-voice-download”是一个PHP项目,它的主要功能是下载Google翻译服务中的语音合成(TTS,Text-to-Speech)音频文件,这些文件通常以MP3格式存储。这个脚本允许用户获取特定文本在不同语言...

    Laravel开发-googlespeech

    在本文中,我们将深入探讨如何在 Laravel 框架中集成 Google Speech API,实现文本到语音的转换。Laravel 是一个流行的 PHP 框架,以其优雅的语法和强大的功能深受开发者喜爱。而 Google Speech API 提供了高效、...

    Voice-Assistant-Modular-Adapter-ECEN403-SeniorDesign

    【标题】"Voice-Assistant-Modular-Adapter-ECEN403-SeniorDesign" 指的可能是一个基于语音助手的模块化适配器项目,该项目可能是为电子工程专业(ECEN403)的高级设计课程而创建的。这个项目的核心目标可能涉及设计...

    online-debate-system:使用Google语音识别API通过情感分析来预测“运动”和“反对运动”

    使用Web Speech API的具有语音识别功能的在线辩论系统。 它使用PHP库进行情感分析,将语音转换为文本,并预测“运动”和“反对运动” 。 链接 有用的链接 要求 该项目的源代码是用PHP 。 因此,您将需要WAMP/...

    Chatwave:基于XMPP和服务器端PHP的Android移动应用程序。 它涉及向您的朋友发送声音

    Chatwave是一款基于XMPP协议和服务器端PHP技术构建的Android移动应用程序,专为用户提供声音消息发送功能。在本文中,我们将深入探讨Chatwave的核心技术、实现原理以及涉及到的关键知识点。 首先,让我们了解一下...

Global site tag (gtag.js) - Google Analytics