如何用微信订阅号远程控制若琪?若琪拓展玩法之一

极客教程

(大发) #1

如何用微信订阅号控制若琪?

有很多开发者问过我这个问题~ 现在这个问题已经由我们的开发者大雄为大家解决了。

以下是由大雄同学为我们授权分享的若琪&微信订阅号的拓展玩法。感谢大雄!

准备物料:

  1. 微信公众号一个(订阅号、服务号皆可,有无认证都行)

  2. 一个能正常访问的域名

  3. 一个有固定ip的服务器

  4. 准备一个FTP上传下载

操作步骤:

  1. 点开基础配置进行配置

  1. 看如下图片说明

12

  1. 打开 Weixin.php 文件把如下的加载参数改下,按照说明要求,如果 id 不知道先把令牌填上去,然后和其他文件一起上传到服务器。
/*加载参数*/
$lingpai="填[2.看上面图片说明]里面的令牌";
$sqid="填你的id,你发消息给你的公众号就可以看到授权ID了,只有授权了才能用,毕竟公众号谁都能发消息";
  1. 打开Get_token.php文件把下面的参数改成你的
$appid = '填开发者id';
$appsecret = '填开发者密钥';
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$appsecret}";
  1. 最后打开zhineng.php文件也将下面参数改成你的
//文本消息处理
function core($wb){
	//执行若琪播放文字
	$sn="填你的若琪sn号";
	$wk="填你webhook后面几个字母";
	if(substr($wb,0,2)=="rq"){
	$b='{"type": "tts","devices": {"sn": "'.$sn.'"},"data":{"text": "'.trim(substr($wb,2,strlen($wb)-2)).'"}}';
	$jg=http("https://homebase.rokid.com/trigger/with/".$wk,"post",$b,null,array("Content-Type: application/json; charset=utf-8"));
	return $jg["body"];
	}
	exit();
	//return "无结果";
}
//语音消息处理
function yuyin($yy){
	require_once "get_token.php";
	//若琪原声播放
	$url= "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={$access_token}&media_id={$yy}";
	$sn="填你的若琪sn号";
	$wk="填你webhook后面几个字母";
	$b='{"type": "audio","devices": {"sn": "'.$sn.'"},"data":{"url": "'.$url.'"}}';
	$a=http("https://homebase.rokid.com/trigger/with/".$wk,"post",$b,null,array("Content-Type: application/json; charset=utf-8"));
	return $a["body"];
}

以上就是简简单单的五步操作,要不要试试看?

欢迎提问,欢迎分享。  

(登陆状态才可下载) 若琪拓展玩法——微信订阅号远程控制.zip (8.4 KB)


(yam.zhang) #2

棒棒棒


(bluescode) #3

哈af :grin:


(ayan.wu) #4

啊啊啊休闲鞋


(7777js) #5

我模仿着用 nodejs 重新实现了一遍,但是发现一个问题。 当调用 webhook 接口时,两种 type 只有 TTS 有效果。 type 为 audio 时接口虽然返回 OK,但板子无法播放音频文件,用的 mp3 文件的 url 用浏览器是可以访问的。

adb shell logcat 能看到日志里面有 homebase 的 audio playback 信息。但是声音播放不出来。 感觉是板子固件有问题,我刷的最新的android版固件。 求助,有人知道怎么解决吗?


(7777js) #6

webhook audio 的问题已经解决, 刷了最新的linux系统,自己好了。 Thanks, 可以用微信控制若琪了.