<?php
require_once ('src/wechat.php');
$wechat = new wechat();
$act = isset($_GET['act'])?$_GET['act']:'index';
session_start();
/*$res = $wechat->getLoginStatus();
print_r($res);die;*/
switch ($act) {
case 'index':
//登录页
$uuid = $wechat->getUuid();
$qrcode = "https://login.weixin.qq.com/qrcode/{$uuid}?t=webwx";
include_once('tpl/qrcode.php');
break;
case 'status':
//获取登录状态
$uuid = $_GET['uuid'];
$res = $wechat->getLoginStatus($uuid);
if($res == 201){
//已扫描,待确认
$data = array('status' => 1);
}elseif (substr_count($res, 'http')) {
//确认成功
$data = array('status' => 2);
}else{
//待扫描
$data = array('status' => 0);
}
$data['msg'] = $res;
exit(json_encode($data));
break;
case 'cookies':
//获取用户uin 和 sid
$url = $_POST['url'];
$wxinfo = $wechat->getCookies($url);
$wxinfo['status'] = 1;

exit(json_encode($wxinfo));
break;
case 'chat':
//主聊天框页面
include_once('tpl/chat.php');
break;
case 'init':
//初使化微信信息
$json_info = $wechat->initWebchat();
exit($json_info);
break;
case 'users':
//获取所有好友列表
$users = $wechat->getContact();
echo $users;
break;
case 'sync':
//服务器同步
$synckey = $_POST['synckey'];
$message = $wechat->wxsync($synckey);

exit($message);
break;
case 'send':
$toUsername = $_POST['toUsername'];
$content = $_POST['content'];

$res = $wechat->sendMessage($toUsername, $content);
exit($res);
break;
case 'avatar':
$uri = $_GET['uri'];
$res = $wechat->getAvatar($uri);
header('Content-Type: image/jpeg');
imagejpeg($res);
break;
case 'tuling':
//图灵机器人接管消息
$toUsername = $_POST['toUsername'];
$content = $_POST['content'];
if($toUsername != $_SESSION['username']){
$mes = $wechat->sendMessageToTuling($content);
$res = $wechat->sendMessage($toUsername, $mes);
//拼接上机器人的回话
$tlCon = json_decode($res,true);
$tlCon['tlc'] = $mes;
$tlCon['status'] = 1;
exit(json_encode($tlCon));
}
exit(json_encode(array('status' => 0)));
break;
default:
# code...
break;
}

?>

微信机器人 index的更多相关文章

  1. 使用nodejs + wecharty打造你的个人微信机器人

    开源地址:https://github.com/isnl/wechat-robot 注: 从2017年6月下旬开始,使用基于web版微信接入方案存在大概率的被限制登陆的可能性. 主要表现为:无法登陆W ...

  2. Golang 微信机器人包

    一. 最近用在学习golang,写了个小工具练练手.通过golang模拟微信网页端,接收微信服务器的消息并定制.可接入图灵机器人的api实现一个微信机器人的小玩具,当然了,可以有更多更好玩的玩法. 二 ...

  3. 这是一款借助chrome 插件的微信机器人

    1.chrome kit微信机器人简介 借助chrome 插件 js注入来实现消息的发送 chrome devtool api的调用来监听https请求 打开微信登录界面,在扫码登录前必须先打开too ...

  4. python使用itchat库实现微信机器人

    itchat是一个开源的微信个人号接口,可以使用该库进行微信网页版中的所有操作,比如:所有好友.添加好友.拉好友群聊.微信机器人等等.详细用户请看文档介绍,在这里. 本文主要使用该库完成一个能够处理微 ...

  5. Python创建微信机器人

    微信,一个日活10亿的超级app,不仅在国内社交独领风骚,在国外社交也同样占有一席之地,今天我们要将便是如何用Python来生成一个微信机器人,突然想起鲁迅先生曾经说过的一句话:因为是微信机器人系列的 ...

  6. 第一讲 新手如何学习HTTP协议之实践项目多开微信机器人

    上一篇做了一个smart qq机器人. 前几天,因为突然上不了  smart qq,以为TX 要抛弃了..所以就没有接着完善smart 机器人.应朋友要求,做一个多开微信. 做了几天已经做好了,理论上 ...

  7. 微信机器人 返现机器人 pc版本 移动版本 java开发 小范省钱

    微信机器人 返现机器人 pc版本 移动版本 java开发 小范省钱 微信搜索微信号 fanli-x 或 扫描下方二维码,可查看效果. 非web版微信,pc/移动版微信 支持新号24小时 不封号! 有任 ...

  8. Python自制微信机器人:群发消息、自动接收好友

    运营公众号也有半年了,今年5月份开始的,之前一直用一款windows工具来运营自动接受好友请求.群发文章.自动回复等操作,但颇有不便. 举几个场景: 突然在外面看到一篇文章很好,临时写了一篇,想群发一 ...

  9. Git操作自动触发企业微信机器人webhook

    [本文出自天外归云的博客园] 背景 在git做一些merge或push的操作,我们希望可以自动在企业微信群发送自定义的通知. 服务代码 这里选用php作为网络服务的开发语言,关键的代码如下(githo ...

随机推荐

  1. 2019-04(1)(Python学习)

    9.1 迭代器 创建迭代器的3种方法: 方法一: 容器对象添加 __iter__() 和 __next__() 方法(Python 2.7 中是 next()):__iter__() 返回迭代器对象本 ...

  2. Max answer(单调栈+ST表)

    Max answer https://nanti.jisuanke.com/t/38228 Alice has a magic array. She suggests that the value o ...

  3. crm开发之用户重置密码

    重置 密码这这功能. 我是没有在,stark组件中. 内置的.所以需要,自己进行定制.也就只是,在已有的增删改查的基础上,再增加一条url  和相对应的  视图函数. 好的是, 我已经预留了,增加的接 ...

  4. Tornado创建一个web服务

    import tornado.web import tornado.ioloop import tornado.httpserver import tornado.options import con ...

  5. MVC4 decimal 精度

    MVC默认为小数点 后2位 更改设置 在我们现在的MovieDBContext类中重载OnModelCreating方法,代码如下所示.public class MovieDBContext : Db ...

  6. 5N - 考试排名

    C++编程考试使用的实时提交系统,具有即时获得成绩排名的特点.它的功能是怎么实现的呢? 我们做好了题目的解答,提交之后,要么“AC”,要么错误,不管怎样错法,总是给你记上一笔,表明你曾经有过一次错误提 ...

  7. filter 全局和局部过滤器

    1,局部过滤器 2,全局过滤器 使用方法相同,在花括号中使用过滤器名或者v-bind中使用

  8. 基于SoftRoCE 了解RDMA

    RDMA是基于IB技术的内存直接传送,无需内核参与,硬件网卡搞定.IB需要HPC领域的专用硬件,ROCE则是RDMA协议在普通以太网卡的实现,RoCEv1是在MAC上的二层封装,局域网内可以,要通过路 ...

  9. L2范数的相关求解

    https://blog.csdn.net/u010725283/article/details/79212762

  10. appium sendkeys 输入数字丢失问题

    参考:https://blog.csdn.net/rainshine1190/article/details/82814503