PageCookery微信机器人

提醒:本文最后更新于 4102 天前,文中所描述的信息可能已发生改变,请谨慎使用。

上传API文件到网站,微信添加PageCookery公共账号即可使用(下面有详细使用教程说明)。本机器人建立初功能比较薄弱,仅有绑定账号,发表状态功能,后续博主会再接再厉增加更多功能的。个人认为此微信公共账号变相地解决了PageCookery的手机客户端的问题。本账号还处于婴儿阶段,并未作过多的测试,欢迎大家反馈。

使用教程:

第一步:下载wechat.php并上传到PageCookery的根目录(请保证文件名为wechat.php)

wechat.php源代码(请自行保存以下代码并上传至PageCookery根目录):

<?php 
include"config.php";
function sql_query($sqlcon){
	$con=mysql_connect(DATABASE_HOST,DATABASE_USER,DATABASE_PSSWORD);
	mysql_select_db(DATABASE_DB_NAME);
	mysql_query("SET NAMES 'utf8'");
	$result=mysql_query($sqlcon);
	mysql_close($con);
	return $result;
}
if(!isset($_GET['do'])) $_GET['do'] = '';
switch($_GET['do']){
	case'auth':
		$user=sql_query("SELECT * FROM user WHERE id= '".$_POST['usr']."'");
		$user=mysql_fetch_array($user);
		$pwd=md5($user['username'].$user['password']);
		if($pwd===$_POST['auth']){
			$j = array('code'=&gt;true, 'message'=&gt;'绑定成功,现在你可以发一条消息试试了!');
		}else{
			$j = array('code'=&gt;false, 'message'=&gt;'绑定失败,请输入正确的信息!');
		}
		echo json_encode($j);
	break;
	case 'post':
		$user=sql_query("SELECT * FROM user WHERE id= '".$_POST['usr']."'");
		$user=mysql_fetch_array($user);
		$pwd=md5($user['username'].$user['password']);
		if($pwd===$_POST['auth']){
			$userid=$_POST['usr'];
			$content=$_POST['content'];
			$time=time();
			$res=sql_query("INSERT INTO entry VALUES ('','0','$content','$time','微信','$userid')");
			if($res){
				$j = array('code'=&gt;true, 'message'=&gt;'发送成功!');
			}else{
				$j = array('code'=&gt;false, 'message'=&gt;'发送失败请稍后再试');
			}
		}else{
			$j= array('code'=&gt;false, 'message'=&gt;'您还未绑定网站或者之前的绑定已失效,请重新绑定!');
		}
		echo json_encode($j);
	break;
	case 'postfromgtalk':
		$user=sql_query("SELECT * FROM user WHERE id= '".$_POST['usr']."'");
		$user=mysql_fetch_array($user);
		$pwd=md5($user['username'].$user['password']);
		if($pwd===$_POST['auth']){
			$userid=$_POST['usr'];
			$content=$_POST['content'];
			$time=time();
			$res=sql_query("INSERT INTO entry VALUES ('','0','$content','$time','Gtalk','$userid')");
			if($res){
				$j = array('code'=&gt;true, 'message'=&gt;'发送成功!');
			}else{
				$j = array('code'=&gt;false, 'message'=&gt;'发送失败请稍后再试');
			}
		}else{
			$j= array('code'=&gt;false, 'message'=&gt;'您还未绑定网站或者之前的绑定已失效,请重新绑定!');
		}
		echo json_encode($j);
	break;
	
	case 'signature':	
		echo '&lt;meta charset="utf-8" http-equiv="content-type" content=""&gt;';
		if(!isset($_POST['username'])) {
			echo '&lt;form method="post" action="./wechat.php?do=signature"&gt;&lt;p&gt;用户名:&lt;input type="text" name="username" value="" /&gt;&lt;/p&gt;&lt;p&gt;密&nbsp;&nbsp;码:&lt;input type="password" name="password" value="" /&gt;&lt;/p&gt;&lt;p&gt;&lt;input type="submit" value="确认" /&gt;';
		} else {
			$user=sql_query("SELECT * FROM user WHERE username = '".$_POST['username']."'");
			$user=mysql_fetch_array($user);
			if(md5($_POST['password']) === $user['password']) {
				$sig = $user['id'].md5($user['username'].$user['password']);
				echo '你的识别码是"'.$sig.'",请发送"-sig '.$sig.'"给PageCookery微信机器人完成绑定!';
			} else {
				echo '用户名或密码错误!';
			}
		}
	break;
	default:
		$j = array('code'=&gt;true, 'message'=&gt;'微信机器人平台搭建成功!');
		echo json_encode($j);
	break;
}
?>

第二步:关注PageCookery微信机器人账号。微信中选择“朋友-添加朋友-查找微信公众账号”,输入pagecookery即可查到机器人账号,添加即可。或者直接扫描下面的二维码即可成功添加。
PageCookery微信机器人

第三步:绑定自己的网站和账号。首先发送消息“-url 你的网站地址”,会让你跳转到另外一个页面,复制地址到浏览器中打开输入你的账号和密码后会返回识别码,复制识别码到微信中发送过去就完成绑定过程了。具体使用见下图:

第一次关注会提示你绑定网站,输入“-url 你的网站地址”即可完成绑定。
绑定账号成功绑定账号成功

复制地址到浏览器中打开,并输入你的PageCookery账号和密码,网页会返回识别码,复制识别码发送给PageCookery微信机器人即可完成绑定。
绑定账号成功绑定账号成功绑定账号成功

如果发送错误的识别码过去,机器人会提示绑定失败。
绑定账号成功

绑定账号完成后直接输入消息就可以发布状态了。
发布状态

Avatar
怡红公子 擅长前端和 Node.js 服务端方向。热爱开源时常在 Github 上活跃,也是博客爱好者,喜欢将所学内容总结成文章分享给他人。

15 评论

Limory Chrome31.0 Windows XP
2016-05-06 14:31:35 回复

我才看见这篇文章,是不是晚了?我好像记得你说过Pagecookery.net域名都转让了,现在访问居然是个岛国站,这机器人还管用不?就算全世界的人都抛弃了Pagecookery,至少我还在用,将来也会!!为了我,你行的,关掉吉泽,赶紧写代码吧~~

公子 Chrome49.0 Mac OS 10.11.5
2016-05-07 01:56:54 回复

@Limory 三年前的文章…你也太挖坟了吧…程序够呛,我都已经忘记公众号后台账号密码了=_=!你要有空你可以自己开发一个,现在微信开发的成本很低。 .net 那个是我没续费被别人买了,我也不知道那个是谁。

CC IE11.0 Windows 8.1
2014-05-24 14:02:33 回复

请问这个微博机器人程序还可以用吗

公子 Chrome35.0 Windows 7
2014-05-24 15:15:13 回复

@CC 我已经很久都没有用过PageCookery这个程序了,所以也不是很清楚。不过微信机器人的后端程序我是一直在运行着的,所以个人感觉应该是还可以用的,你可以试试。

Tink Chrome26.0 Windows 7
2013-05-05 10:11:25 回复

lz能否搞一个twitter的啊!期待

公子 Chrome25.0 Windows 7
2013-05-05 11:45:19 回复

@Tink这个可以试试~

Tink Chrome26.0 Windows 7
2013-05-05 11:47:40 回复

@公子

哇!太期待了,现在发推是个问题,如果这样解决了那就太爽了啊!要解决无数人的问题!

公子 Chrome25.0 Windows 7
2013-05-05 11:51:10 回复

@Tink想了想,其实不是太好做,主要问题还是在第一次的认证那里,如果本机不破墙的话鸭梨好大啊

Tink Chrome26.0 Windows 7
2013-05-05 11:53:44 回复

@公子

第一次认证破墙那个是没有办法跳过的,oauth认证必须要跳墙,但是既然是推友,那么基本的跳墙应该都能做到吧,用微信发的话,只需要翻一次墙,后面就很方便了呀~

公子 Chrome25.0 Windows 7
2013-05-05 12:02:56 回复

@Tink嗯,然后如果是OAuth2的话Token应该会有一个过期时间,大概一个礼拜一次,也就是说如果这样的话大概要一个礼拜翻一次-_-感觉有点麻烦,我在找找资料的说。

Tink Chrome26.0 Windows 7
2013-05-05 12:06:20 回复

@公子

嗯嗯,谢谢啦!

蓝冰 Chrome23.0 Windows 7
2013-02-01 13:21:32 回复

求Typecho机器人/手机客户端~

公子 Chrome24.0 Linux x86_64
2013-02-01 14:22:36 回复

@蓝冰额,Typecho要机器人干嘛…不过手机客户端的确需要一个,不过我也不会写啊,囧!

kiakia Chrome24.0 Windows 7
2013-01-25 15:48:08 回复

最后一步没收到绑定成功的提示就成功了。。。发信息也没有发送成功的提示。

公子 Chrome24.0 Linux x86_64
2013-01-26 00:56:48 回复

@kiakia嗯,昨天有看到你的bug,不过表示对这样抽风的问题我也挺爱莫能助的,因为我这边完全是正常的啊T_T…哎!