可爱猫插件 雅爱HTTP_API插件 可爱猫微信全能机器人

2020-05-18  阅读 374 次

自己整的可爱猫插件,雅爱HTTP_API插件,与官方的HTTP插件差不多改进了一些地方。可爱猫是微信全能机器人,入群欢迎语,定时群发,自动回复,群管理,签到,护群,指令踢人,监测退群、邀请统计、入群口令等数十项强大功能,支持二次开发,支持定制。

下载可爱猫:可爱猫4.4.1含开发包 可爱猫微信全能机器人

雅爱HTTP_API插件支持图片、表情、文件、视频等,先上个图:

雅爱笔记_www.5devip.com

雅爱HTTP_API插件功能:具体查看Api接口文档,标记有“限测版”表示可能用不了,因为到目前为止官方没有正式发布这个功能。

Api接口 php版,基本与官方的一致。

<?php
/** 
* @name Api接口
* @link www.5devip.com
* @bug反馈 新功能定制请联系QQ:1334588325
*/
/**
* @todo 接口列表
发送文本消息              send_text_msg()
发送群消息并艾特某人      send_group_at_msg()
发送图片消息              send_image_msg()
发送视频消息              send_video_msg()
发送文件消息              send_file_msg()
发送动态表情              send_emoji_msg()
发送分享链接              send_link_msg()
发送音乐消息              send_music_msg()
取指定登录账号的昵称      get_robot_name()
取指定登录账号的头像      get_robot_headimgurl()    限测版
取登录账号列表            get_logged_account_list()
取好友列表                get_friend_list()
取群聊列表                get_group_list()
取群成员资料              get_group_member()    限测版
取群成员列表              get_group_member_list()
接收好友转账              accept_transfer()
同意群聊邀请              agree_group_invite()    限测版
同意好友请求              agree_friend_verify()
修改好友备注              modify_friend_note()
删除好友                  delete_friend()    限测版
踢出群成员                remove_group_member()
修改群名称                modify_group_name()
修改群公告                modify_group_notice()
建立新群                  building_group()    限测版
退出群聊                  quit_group()    限测版
邀请加入群聊              invite_in_group()
*/
define("API_KEY","www.ccvok.com");
define("API_URL","http://127.0.0.1:6060/post?key=".API_KEY);
/**  
* 发送文字消息(好友或者群)
* @access public 
* @param  string $robwxid 登录账号id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $msg     消息内容 
* @return string json_string
*/
function send_text_msg($robwxid, $to_wxid, $msg){
	$data = array();
	$data['type'] = 100;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = rawurlencode($msg); // 发送内容
	$data['to_wxid'] = $to_wxid;     // 对方id
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}

/**  
* 名片消息
* @access public 
* @param  string $robwxid 登录账号id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $msg     名片格式数据 
* @return string json_string
*/
function mingpianxiaoxi_msg($robwxid, $to_wxid, $card_data){
	$data = array();
	$data['type'] = 42;             // Api数值(可以参考 - api列表demo)
	$data['to_wxid'] = $to_wxid;     // 对方id (支持好友/群ID)
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$data['card_data']  = $card_data; // 名片格式数据
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}

/**  
* 发送群消息并艾特某人
* @param  string $robwxid 账户id,用哪个账号去发送这条消息
* @param  string $from_wxid 群id
* @param  string $final_from_wxid 艾特的id,群成员的id ,发送消息用户的ID
* @param  string $final_from_name 艾特的昵称,群成员的昵称,发送消息用户名
* @param  string $msg     消息内容 
*/
function send_group_at_msg($robwxid, $from_wxid, $final_from_wxid, $final_from_name, $msg){
	$data = array();
	$data['type'] = 102;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = rawurlencode($msg); // 消息内容
	$data['group_wxid'] = $from_wxid;     // 群id
	$data['member_wxid'] = $final_from_wxid;     // 艾特的id,群成员的id
	$data['member_name'] = $final_from_name;     // 艾特的昵称,群成员的昵称
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 发送图片消息 
* @access public 
* @param  string $robwxid 登录账号id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $path    图片的绝对路径 如下:
1、发送网络图片,需要编码如rawurlencode('https://yaaibk.com/zb_users/theme/ccvok_zsy/image/logo1.png')
2、发送本地图片,需要编码如rawurlencode('E:\Program Files\图片\1.png')
*/
function send_image_msg($robwxid, $to_wxid, $path){
	$data = array();
	$data['type'] = 103;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = rawurlencode($path);           // 发送的图片的绝对路径
	$data['to_wxid'] = $to_wxid;     // 对方id
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 发送视频消息 
* @access public 
* @param  string $robwxid 账户id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $path    视频的绝对路径 (参考图片)
* @return string json_string
*/
function send_video_msg($robwxid, $to_wxid, $path){
	$data = array();
	$data['type'] = 104;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = rawurlencode($path);          // 发送的视频的绝对路径
	$data['to_wxid'] = $to_wxid;     // 对方id
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 发送文件消息 
* @access public 
* @param  string $robwxid 账户id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $path    文件的绝对路径 (参考图片)
* @return string json_string
*/
function send_file_msg($robwxid, $to_wxid, $path){
	$data = array();
	$data['type'] = 105;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = rawurlencode($path);          // 发送的文件的绝对路径
	$data['to_wxid'] = $to_wxid;     // 对方id(默认发送至来源的id,也可以发给其他人)
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 发送动态表情
* @access public 
* @param  string $robwxid 账户id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $path    动态表情文件(通常是gif)的绝对路径 (发送图片消息一样)
*/
function send_emoji_msg($robwxid, $to_wxid, $path){
	$data = array();
	$data['type'] = 106;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = rawurlencode($path);          // 发送的动态表情的绝对路径
	$data['to_wxid'] = $to_wxid;     // 对方id(默认发送至来源的id,也可以发给其他人)
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 发送分享链接
* @access public 
* @param  string $robwxid    账户id,用哪个账号去发送这条消息
* @param  string $to_wxid    对方的id,可以是群或者好友id 
* @param  string $title      链接标题 
* @param  string $text       链接内容 
* @param  string $target_url 跳转链接 允许空参数
* @param  string $pic_url    图片链接 允许空参数
* @param  string $icon_url;  图标的链接 允收空参数
* @return string json_string
*/
function send_link_msg($robwxid, $to_wxid, $title, $text, $target_url, $pic_url,$icon_url){
	// 封装链接结构体
	$data = array();
	$data['type'] = 107;
	$data['title'] = $title;
	$data['text']  = $text;
	$data['target_url']   = $target_url;
	$data['pic_url']   = $pic_url;
	$data['icon_url']  = $icon_url;   // 图标的链接
	$data['to_wxid'] = $to_wxid;     // 对方id(默认发送至来源的id,也可以发给其他人)
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 发送音乐分享
* @access public 
* @param  string $robwxid 账户id,用哪个账号去发送这条消息
* @param  string $to_wxid 对方的id,可以是群或者好友id 
* @param  string $name    歌曲名字 
* @return string json_string
*/
function send_music_msg($robwxid, $to_wxid, $name){
	$data = array();
	$data['type'] = 108;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = $name;           // 歌曲名字
	$data['to_wxid'] = $to_wxid;     // 对方id(默认发送至来源的id,也可以发给其他人)
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取指定登录账号的昵称
* @access public 
* @param  string $robwxid 账户id
* @return string 账号昵称
*/
function get_robot_name($robwxid){
	$data = array();
	$data['type'] = 201;             // Api数值(可以参考 - api列表demo)
	$data['robot_wxid'] = $robwxid;  // 账户id
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取指定登录账号的头像	(限测版 失败)
* @access public 
* @param  string $robwxid 账户id
* @return string 头像http地址
*/
function get_robot_headimgurl($robwxid){
	$data = array();
	$data['type'] = 202;             // Api数值(可以参考 - api列表demo)
	$data['robot_wxid'] = $robwxid;  // 账户id
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取登录账号列表
* @access public 
* @param  string $robwxid 账户id
* @return string 当前框架已登录的账号信息列表
可以获取到名称,图片,微信号等
*/
function get_logged_account_list(){
	$data = array();
	$data['type'] = 203;             // Api数值(可以参考 - api列表demo)
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取好友列表(只能获取到数量)
* @access public 
* @param  string $robwxid    账户id
* @param  string $is_refresh 是否刷新
* @return string 当前框架已登录的账号信息列表
*/
function get_friend_list($robwxid='', $is_refresh=0){
	$data = array();
	$data['type'] = 204;                // Api数值(可以参考 - api列表demo)
	$data['robot_wxid'] = $robwxid;     // 账户id(可选,如果填空字符串,即取所有登录账号的好友列表,反正取指定账号的列表)
	$data['is_refresh'] = $is_refresh;  // 是否刷新列表,0 从缓存获取 / 1 刷新并获取
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取群聊列表 (只能获取到群数量)
* @access public 
* @param  string $robwxid    账户id
* @param  string $is_refresh 是否刷新
* @return string 当前框架已登录的账号信息列表
*/
function get_group_list($robwxid='', $is_refresh=0){
	$data = array();
	$data['type'] = 205;                // Api数值(可以参考 - api列表demo)
	$data['robot_wxid'] = $robwxid;     // 账户id(可选,如果填空字符串,即取所有登录账号的好友列表,反正取指定账号的列表)
	$data['is_refresh'] = $is_refresh;  // 是否刷新列表,0 从缓存获取 / 1 刷新并获取
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取群成员列表,获取群有多少个人(只能获取到群数量)
* @access public 
* @param  string $robwxid    账户id
* @param  string $group_wxid 群id 
* @param  string $is_refresh 是否刷新
* @return string 当前框架已登录的账号信息列表
*/
function get_group_member_list($robwxid, $group_wxid, $is_refresh=0){
	$data = array();
	$data['type'] = 206;                // Api数值(可以参考 - api列表demo)
	$data['robot_wxid'] = $robwxid;     // 账户id
	$data['group_wxid'] = $group_wxid;  // 群id
	$data['is_refresh'] = $is_refresh;  // 是否刷新列表,0 从缓存获取 / 1 刷新并获取
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 取群成员资料(限测版 失败)
* @access public 
* @param  string $robwxid     账户id
* @param  string $group_wxid  群id 
* @param  string $member_wxid 群成员id 
* @return string json_string
*/
function get_group_member($robwxid, $group_wxid, $member_wxid){
	$data = array();
	$data['type'] = 207;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid'] = $robwxid;       // 账户id,取哪个账号的资料
	$data['group_wxid'] = $group_wxid;    // 群id
	$data['member_wxid'] = $member_wxid;  // 群成员id
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 接收好友转账 (未测试)
* @access public 
* @param  string $robwxid     账户id
* @param  string $friend_wxid 朋友id 
* @param  string $json_string 转账事件原消息
* @return string json_string
*/
function accept_transfer($robwxid, $friend_wxid, $json_string){
	$data = array();
	$data['type'] = 301;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['friend_wxid'] = $friend_wxid;  // 朋友id
	$data['msg']  = $json_string;         // 转账事件原消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 同意群聊邀请 (未测试 限测版)
* @access public 
* @param  string $robwxid     账户id
* @param  string $json_string 同步消息事件中群聊邀请原消息
* @return string json_string
*/
function agree_group_invite($robwxid, $json_string){
	$data = array();
	$data['type'] = 302;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['msg']  = $json_string;         // 同步消息事件中群聊邀请原消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 同意好友请求 (未测试)
* @access public 
* @param  string $robwxid     账户id
* @param  string $json_string 好友请求事件中原消息
* @return string json_string
*/
function agree_friend_verify($robwxid, $json_string){
	$data = array();
	$data['type'] = 303;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['msg']  = $json_string;         // 好友请求事件中原消息
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 修改好友备注
* @access public 
* @param  string $robwxid     账户id
* @param  string $friend_wxid 好友id
* @param  string $note 新备注(空字符串则是删除备注)
* @return string json_string
*/
function modify_friend_note($robwxid, $friend_wxid, $note){
	$data = array();
	$data['type'] = 304;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['friend_wxid'] = $friend_wxid;  // 朋友id
	$data['msg']  = $note;               // 新备注(空字符串则是删除备注)
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 删除好友 (未测试 限测版)
* @access public 
* @param  string $robwxid     账户id
* @param  string $friend_wxid 好友id
* @return string json_string
*/
function delete_friend($robwxid, $friend_wxid){
	$data = array();
	$data['type'] = 305;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['friend_wxid'] = $friend_wxid;  // 朋友id
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 踢出群成员 (未测试)
* @access public 
* @param  string $robwxid     账户id
* @param  string $group_wxid  群id
* @param  string $member_wxid 群成员id
* @return string json_string
*/
function remove_group_member($robwxid, $group_wxid, $member_wxid){
	$data = array();
	$data['type'] = 306;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['group_wxid']  = $friend_wxid;  // 群id
	$data['member_wxid'] = $member_wxid;  // 群成员id
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 修改群名称
* @access public 
* @param  string $robwxid     账户id
* @param  string $group_wxid  群id
* @param  string $group_name  新群名
* @return string json_string
*/
function modify_group_name($robwxid, $group_wxid, $group_name){
	$data = array();
	$data['type'] = 307;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['group_wxid']  = $group_wxid;  // 群id
	$data['group_name']  = $group_name;   // 新群名
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 修改群公告
* @access public 
* @param  string $robwxid     账户id
* @param  string $group_wxid  群id
* @param  string $notice      新公告
* @return string json_string
*/
function modify_group_notice($robwxid, $group_wxid, $content){
	$data = array();
	$data['type'] = 308;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;      // 账户id
	$data['group_wxid']  = $group_wxid;  // 群id
	$data['content']      = $content;       // 新公告
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 建立新群 (未测试 限测版)
* @access public 
* @param  string $robwxid     账户id
* @param  array  $friends     三个人及以上的好友id数组,['wxid_1xxx', 'wxid_2xxx', 'wxid_3xxx', 'wxid_4xxx']
* @return string json_string
*/
function building_group($robwxid, $friends){
	$data = array();
	$data['type'] = 309;              // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;  // 账户id
	$data['friends']     = $friends;  // 好友id数组
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 退出群聊	(限测版 失败)
* @access public 
* @param  string $robwxid     账户id
* @param  string $group_wxid  群id
* @return string json_string
*/
function quit_group($robwxid, $group_wxid){
	$data = array();
	$data['type'] = 310;                // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']  = $robwxid;    // 账户id
	$data['group_wxid']  = $group_wxid; // 群id
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**  
* 邀请加入群聊
* @access public 
* @param  string $robwxid     账户id
* @param  string $group_wxid  群id
* @param  string $friend_wxid 要邀请的好友ID
* @return string json_string
*/
function invite_in_group($robwxid, $group_wxid, $friend_wxid){
	$data = array();
	$data['type'] = 311;                  // Api数值(可以参考 - api列表demo)
	$data['robot_wxid']   = $robwxid;     // 账户id
	$data['group_wxid']   = $group_wxid;  // 群id
	$data['friend_wxid']  = $friend_wxid; // 要邀请的好友ID
	$response = array('data' => json_encode($data));
	$url = API_URL;
	return sendSGHttp($url, $response,'post');
}
/**
 * 执行一个 HTTP 请求,仅仅是post组件,其他语言请自行替换即可
 * @param  string $url 执行请求的url地址
 * @param  mixed  $params  表单参数
 * @param  int    $timeout 超时时间
 * @param  string $method  请求方法 post / get
 * @return array  结果数组
 */
function sendSGHttp($url, $params, $method = 'get', $timeout = 3)
{
    if (null == $url) return null;
    $curl = curl_init();
    if ('get' == $method) {//以GET方式发送请求
        curl_setopt($curl, CURLOPT_URL, $url);
    } else {//以POST方式发送请求
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_POST, 1);//post提交方式
        curl_setopt($curl, CURLOPT_POSTFIELDS, $params);//设置传送的参数
    }
    curl_setopt($curl, CURLOPT_HEADER, false);//设置header
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//要求结果为字符串且输出到屏幕上
    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout);//设置等待时间
    $res = curl_exec($curl);//运行curl
    $err = curl_error($curl);
    if (false === $res || !empty($err)) {
        $Errno = curl_errno($curl);
        $Info = curl_getinfo($curl);
        curl_close($curl);
        //print_r($Info);
        return $err. ' result: ' . $res . 'error_msg: '.$Errno;
    }
    curl_close($curl);//关闭curl
    return $res;
}
?>

将上面的代码保存为5devip.com.php

将下面的代码保存为ccvok.com.php

<?php
/** 
* 接收消息demo(php版)支持图片、表情、文件、视频等
* bug反馈 请联系QQ 1334588325 QQ群 953418367
* www.5devip.com
 */
date_default_timezone_set('PRC');
include '5devip.com.php';

$type = $_POST['leixing'];//事件类型(事件列表可参考 - 事件列表demo)
$msg_type = $_POST['msg_type'];//消息类型(仅在私聊和群消息事件中,代表消息形式,如文字消息、语音、等等)
$from_wxid = $_POST['from_wxid'];	//发消息的人的id 
$nickname  = urldecode($_POST['from_name']);  // 发消息的人昵称,需要转码
$final_from_wxid = $_POST['final_from_wxid'];//群消息,1级来源为群id,2级来源为发消息的成员id,私聊事件下都一样)
$final_from_name = urldecode($_POST['final_from_name']);//群消息来源昵称
$robwxid   = $_POST['robot_wxid'];	  //当前登录的账号机器人id
$msg  = urldecode($_POST['msg']);//消息内容


//下面简单举例,分别在群里和私聊里发帮助或者图片看看效果
if($type=="100"){//私聊消息
	if($msg=="帮助"){
		echo send_text_msg($robwxid, $from_wxid, "雅爱社区为你服务!");
	}else if($msg=="图片"){
		$path="http://www.ccvok.com/images/img/quanmeizi_logo_1.png";
		echo send_image_msg($robwxid, $from_wxid, $path);
	}

}else if($type=="200"){//群消息
	if($msg=="帮助"){
		echo send_text_msg($robwxid, $from_wxid, "群消息:雅爱社区为你服务!");
	}else if($msg=="图片"){
		$path="http://www.ccvok.com/images/img/logo_1.png";
		echo send_image_msg($robwxid, $from_wxid, $path);
	}
}
?>

使用方法,先安装好我的插件,然后将上面的两个PHP文件复制到你的本地服务器里并配置“雅爱HTTP_API插件”,将消息回调地址里填写“ccvok.com.php”文件路径,如“http://127.0.0.1/ccvok.com.php”。重启插件即可使用了。可以分别在群里和私聊里发送帮助或者图片看看效果。

// 以下为消息事件type值一览表,具体可查看接收过程demo

【事件数值】             【事件描述】
100                       私聊消息
200                       群聊消息
300                       暂无
400                       群成员增加
410                       群成员减少
500                       收到好友请求
600                       二维码收款
700                       收到转账
800                       软件开始启动
900                       新的账号登录完成
910                       账号下线

关于编码问题

(JAVA)编码乱码可以 换个http请求库试下

下面简单举例

<?php
/** 
测试方法, 自己电脑上安装phpStudy等可以用的PHP调试环境。
以phpStudy为例,将此文件放到www文件夹里,然后在浏览器里输入http://127.0.0.1/a.php浏览器会显示OK两个字表示调试环境成功可以下一步了
在可爱猫插件里 消息回调地址填写http://127.0.0.1/a.php并保存然后重载一下插件即可

到微信里 分别在 群里 和 私聊 里发帮助或者图片看看效果
 */
error_reporting(E_ERROR | E_WARNING | E_PARSE);
date_default_timezone_set('PRC');

$type = $_POST['leixing'];//事件类型(事件列表可参考 - 事件列表demo)
$msg_type = $_POST['msg_type'];//消息类型(仅在私聊和群消息事件中,代表消息形式,如文字消息、语音、等等)
$from_wxid = $_POST['from_wxid'];	//发消息的人的id 
$nickname  = urldecode($_POST['from_name']);  // 发消息的人昵称,需要转码
$final_from_wxid = $_POST['final_from_wxid'];//群消息,1级来源为群id,2级来源为发消息的成员id,私聊事件下都一样)
$final_from_name = urldecode($_POST['final_from_name']);//群消息来源昵称
$robwxid   = $_POST['robot_wxid'];	  //当前登录的账号机器人id
$msg  = urldecode($_POST['msg']);//消息内容


//下面简单举例,分别在群里和私聊里发帮助或者图片看看效果
if($type=="100"){//私聊消息
	if($msg=="帮助"){
		echo send_text_msg($robwxid, $from_wxid, "雅爱社区为你服务!");
	}else if($msg=="图片"){
		$path="https://www.ccvok.com/images/img/quanmeizi_logo_1.png";
		echo send_image_msg($robwxid, $from_wxid, $path);
	}

}else if($type=="200"){//群消息
	if($msg=="帮助"){
		echo send_text_msg($robwxid, $from_wxid, "群消息:雅爱社区为你服务!");
	}else if($msg=="图片"){
		$path="https://www.ccvok.com/images/img/logo_1.png";
		echo send_image_msg($robwxid, $from_wxid, $path);
	}
}else{
	echo 'OK';
}

function send_text_msg($robwxid, $to_wxid, $msg){
	// 封装返回数据结构
	$data = array();
	$data['type'] = 100;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = urlencode($msg); // 发送内容
	$data['to_wxid'] = $to_wxid;     // 对方id
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));

	// 调用Api组件
	$url = 'http://127.0.0.1:6060/post';
	return sendSGHttp($url, $response,'post');
}
function send_image_msg($robwxid, $to_wxid, $path){
	// 封装返回数据结构
	$data = array();
	$data['type'] = 103;             // Api数值(可以参考 - api列表demo)
	$data['msg']  = $path;           // 发送的图片的绝对路径
	$data['to_wxid'] = $to_wxid;     // 对方id
	$data['robot_wxid'] = $robwxid;  // 账户id,用哪个账号去发送这条消息
	$response = array('data' => json_encode($data));

	// 调用Api组件
	$url = 'http://127.0.0.1:6060/post';
	return sendSGHttp($url, $response,'post');
}

function sendSGHttp($url, $params, $method = 'get', $timeout = 3){
    if (null == $url) return null;
    $curl = curl_init();
    if ('get' == $method) {//以GET方式发送请求
        curl_setopt($curl, CURLOPT_URL, $url);
    } else {//以POST方式发送请求
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_POST, 1);//post提交方式
        curl_setopt($curl, CURLOPT_POSTFIELDS, $params);//设置传送的参数
    }
    curl_setopt($curl, CURLOPT_HEADER, false);//设置header
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//要求结果为字符串且输出到屏幕上
    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout);//设置等待时间
	curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);//验证对等证书
	curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);//检查服务器SSL证书
    $res = curl_exec($curl);//运行curl
    $err = curl_error($curl);
    if (false === $res || !empty($err)) {
        $Errno = curl_errno($curl);
        $Info = curl_getinfo($curl);
        curl_close($curl);
        //print_r($Info);
        return $err. ' result: ' . $res . 'error_msg: '.$Errno;
    }
    curl_close($curl);//关闭curl
    return $res;
}
?>
本文地址:https://yaaibk.com/post/134.html
版权声明:本文为原创文章,版权归 本站 所有,欢迎分享本文,转载请保留出处!

评论已关闭!