上传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'=>true, 'message'=>'绑定成功,现在你可以发一条消息试试了!');
}else{
$j = array('code'=>false, 'message'=>'绑定失败,请输入正确的信息!');
}
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'=>true, 'message'=>'发送成功!');
}else{
$j = array('code'=>false, 'message'=>'发送失败请稍后再试');
}
}else{
$j= array('code'=>false, 'message'=>'您还未绑定网站或者之前的绑定已失效,请重新绑定!');
}
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'=>true, 'message'=>'发送成功!');
}else{
$j = array('code'=>false, 'message'=>'发送失败请稍后再试');
}
}else{
$j= array('code'=>false, 'message'=>'您还未绑定网站或者之前的绑定已失效,请重新绑定!');
}
echo json_encode($j);
break;
case 'signature':
echo '<meta charset="utf-8" http-equiv="content-type" content="">';
if(!isset($_POST['username'])) {
echo '<form method="post" action="./wechat.php?do=signature"><p>用户名:<input type="text" name="username" value="" /></p><p>密 码:<input type="password" name="password" value="" /></p><p><input type="submit" value="确认" />';
} 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'=>true, 'message'=>'微信机器人平台搭建成功!');
echo json_encode($j);
break;
}
?>
第二步:关注PageCookery微信机器人账号。微信中选择“朋友-添加朋友-查找微信公众账号”,输入pagecookery即可查到机器人账号,添加即可。或者直接扫描下面的二维码即可成功添加。
第三步:绑定自己的网站和账号。首先发送消息“-url 你的网站地址”,会让你跳转到另外一个页面,复制地址到浏览器中打开输入你的账号和密码后会返回识别码,复制识别码到微信中发送过去就完成绑定过程了。具体使用见下图:
第一次关注会提示你绑定网站,输入“-url 你的网站地址”即可完成绑定。
复制地址到浏览器中打开,并输入你的PageCookery账号和密码,网页会返回识别码,复制识别码发送给PageCookery微信机器人即可完成绑定。
我才看见这篇文章,是不是晚了?我好像记得你说过Pagecookery.net域名都转让了,现在访问居然是个岛国站,这机器人还管用不?就算全世界的人都抛弃了Pagecookery,至少我还在用,将来也会!!为了我,你行的,关掉吉泽,赶紧写代码吧~~
@Limory 三年前的文章…你也太挖坟了吧…程序够呛,我都已经忘记公众号后台账号密码了=_=!你要有空你可以自己开发一个,现在微信开发的成本很低。 .net 那个是我没续费被别人买了,我也不知道那个是谁。
请问这个微博机器人程序还可以用吗
@CC 我已经很久都没有用过PageCookery这个程序了,所以也不是很清楚。不过微信机器人的后端程序我是一直在运行着的,所以个人感觉应该是还可以用的,你可以试试。
lz能否搞一个twitter的啊!期待
@Tink这个可以试试~
@公子
哇!太期待了,现在发推是个问题,如果这样解决了那就太爽了啊!要解决无数人的问题!
@Tink想了想,其实不是太好做,主要问题还是在第一次的认证那里,如果本机不破墙的话鸭梨好大啊
@公子
第一次认证破墙那个是没有办法跳过的,oauth认证必须要跳墙,但是既然是推友,那么基本的跳墙应该都能做到吧,用微信发的话,只需要翻一次墙,后面就很方便了呀~
@Tink嗯,然后如果是OAuth2的话Token应该会有一个过期时间,大概一个礼拜一次,也就是说如果这样的话大概要一个礼拜翻一次-_-感觉有点麻烦,我在找找资料的说。
@公子
嗯嗯,谢谢啦!
求Typecho机器人/手机客户端~
@蓝冰额,Typecho要机器人干嘛…不过手机客户端的确需要一个,不过我也不会写啊,囧!
最后一步没收到绑定成功的提示就成功了。。。发信息也没有发送成功的提示。
@kiakia嗯,昨天有看到你的bug,不过表示对这样抽风的问题我也挺爱莫能助的,因为我这边完全是正常的啊T_T…哎!