美文网首页
百度地图API和图灵机器人API

百度地图API和图灵机器人API

作者: 大笨蛋就是我呀 | 来源:发表于2019-01-25 17:49 被阅读0次

    在接收普通消息地理位置消息location时,先设置好我们要接收一下经度和维度

    //定义$longitude与$latitude接收用户发送的经纬度消息

                    $latitude = $postObj->Location_X;

                    $longitude = $postObj->Location_Y;

    之后定义好回复的类型为text,回复内容为文本消息,如

    $msgType="text";//回复类型

    $contentStr="你发送的是地理信息"; //回复内容

    接着,可以在根服务器下创建一个dt.php文件,打开,编写

    //定义接口请求地址

    $url = "http://api.map.baidu.com/telematics/v3/reverseGeocoding?location={$longitude},{$latitude}&coord_type=gcj02&output=json&ak=UKw0fMoMhVgh6ZKiK5BEnZU3EflOEc87";

    //模拟http中的get请求

    $str = file_get_contents($url);

    //转换json格式数据为数组或对象

    $json=json_decode($str);

    dump($json);

    其中,http://api.map.baidu.com/telematics/v3/reverseGeocoding?location={$longitude},{$latitude}&coord_type=gcj02&output=json&ak=UKw0fMoMhVgh6ZKiK5BEnZU3EflOEc87为接口API url地址,并模拟get请求的方式去请求这个地址,返回的是一个json数据,这里在地址中已经通过output=json参数设置好,默认是xml数据,最后,将返回的信息进行格式化,其中,json_decode($str);返回的是一个对象,后面加个参数,json_decode($str,true);,为true的话返回的是一个数组。然后可通过dump();函数来打印下结果,效果可通过localhost//dt.php来查看。location={$longitude},{$latitude},2个是经度,维度,这个是我们在初始化地图消息的时候就已经接收到的值。

    查看出结果后就证明API接口是通的,之后,把它放到要回复的设置中,并在回复内容中调出{{$json->description}信息,如下图所示

    elseif($msgType=="location"){

       //回复类型

                      $msgType="text";

       //定义接口请求地址

    $url = "http://api.map.baidu.com/telematics/v3/reverseGeocoding?location={$longitude},{$latitude}&coord_type=gcj02&output=json&ak=UKw0fMoMhVgh6ZKiK5BEnZU3EflOEc87";

    //模拟http中的get请求

    $str = file_get_contents($url);

    //转换json格式数据为数组或对象

    $json=json_decode($str);

                      //回复内容

                      $contentStr="你发送的是地理信息,你的位置:{$json->description}";

                      //格式化字符串<br />

                        $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);

                        //返回XML数据给手机端<br />

                        echo $resultStr; 

                  }

    至此,地图API接口已完成

    说明:这里的百度地图API,我是用的百度的车联网API,链接地址:http://lbsyun.baidu.com/index.php?title=car/guide/introduction

    进去之后,可找到接口说明下的反Geocoding,

    其中,URL中AK由上面的获取密钥可得

    点开后,创建个应用就行,因为我做的是公众号,所以,这里我创建

    的应用类别为小程序

    图灵机器人和这个类似,其中,API接口我用的是v1.0版本,url为

    http://www.tuling123.com/openapi/api?key=你的密钥&info=你要发送的消息

    其中,你要发送的消息可用{$keyword}来替换,意为用户输入的关键字,key的话去官网申请一下

    http://www.tuling123.com,注册后登陆,创建个机器人,就会获得自己的一个key。

    相关文章

      网友评论

          本文标题:百度地图API和图灵机器人API

          本文链接:https://www.haomeiwen.com/subject/pnhvjqtx.html