Update Wechat supported
Update Wechat supported
This commit is contained in:
parent
f3d1d90b43
commit
4fdd1535c9
48
BOT.php
48
BOT.php
@ -2,36 +2,36 @@
|
|||||||
//init
|
//init
|
||||||
require_once('config.php');
|
require_once('config.php');
|
||||||
require_once('functions.php');
|
require_once('functions.php');
|
||||||
$plugins = [];
|
$plugins = array();
|
||||||
|
|
||||||
require(PATH.'classes'.DIRECTORY_SEPARATOR.TYPE.DIRECTORY_SEPARATOR.'Base.php');
|
require(PATH.'classes'.DIRECTORY_SEPARATOR.TYPE.DIRECTORY_SEPARATOR.'Base.php');
|
||||||
require_once(PATH.'classes'.DIRECTORY_SEPARATOR.TYPE.DIRECTORY_SEPARATOR.'init.php');
|
require_once(PATH.'classes'.DIRECTORY_SEPARATOR.TYPE.DIRECTORY_SEPARATOR.'init.php');
|
||||||
|
|
||||||
//load plugins
|
//load plugins
|
||||||
|
|
||||||
$load_plugins = glob(PATH.'plugins'.DIRECTORY_SEPARATOR.'*.php');
|
$load_plugins = glob(PATH.'plugins'.DIRECTORY_SEPARATOR.'*.php');
|
||||||
foreach ($load_plugins as $key => $value) {
|
foreach ($load_plugins as $key => $value) {
|
||||||
if ($value == PATH.'plugins'.DIRECTORY_SEPARATOR.'help.php') {
|
if ($value == PATH.'plugins'.DIRECTORY_SEPARATOR.'help.php') {
|
||||||
unset($load_plugins[$key]);
|
unset($load_plugins[$key]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
foreach ($TAGs as $TAG) {
|
foreach ($TAGs as $TAG) {
|
||||||
foreach ($load_plugins as $value) {
|
foreach ($load_plugins as $value) {
|
||||||
$plugin_name = substr($value, strlen(PATH.'plugins'.DIRECTORY_SEPARATOR), -4);
|
$plugin_name = substr($value, strlen(PATH.'plugins'.DIRECTORY_SEPARATOR), -4);
|
||||||
if (preg_match("/^(".preg_quote($TAG, '/').$plugin_name."|".preg_quote($TAG, '/').$plugin_name.preg_quote('@').BOT_NAME.") (.*)$/", $text, $matches)) {
|
if (preg_match("/^(".preg_quote($TAG, '/').$plugin_name."|".preg_quote($TAG, '/').$plugin_name.preg_quote('@').BOT_NAME.") (.*)$/", $text, $matches)) {
|
||||||
$plugin_text = $matches[2];
|
$plugin_text = $matches[2];
|
||||||
$plugin_sendto = $from;
|
$plugin_sendto = $from;
|
||||||
require_once $value;
|
require_once $value;
|
||||||
break;
|
break;
|
||||||
}elseif (preg_match("/^(".preg_quote($TAG, '/').$plugin_name.")|(".preg_quote($TAG, '/').$plugin_name.preg_quote('@').BOT_NAME.")$/", $text)) {
|
}elseif (preg_match("/^(".preg_quote($TAG, '/').$plugin_name.")|(".preg_quote($TAG, '/').$plugin_name.preg_quote('@').BOT_NAME.")$/", $text)) {
|
||||||
$plugin_text = $matches[2];
|
$plugin_text = $matches[2];
|
||||||
$plugin_sendto = $from;
|
$plugin_sendto = $from;
|
||||||
require_once $value;
|
require_once $value;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
require_once PATH.'plugins'.DIRECTORY_SEPARATOR.'help.php';
|
require_once PATH.'plugins'.DIRECTORY_SEPARATOR.'help.php';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
20
classes/Wechat/Base.php
Normal file
20
classes/Wechat/Base.php
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
class Base
|
||||||
|
{
|
||||||
|
public function exec($raw)
|
||||||
|
{
|
||||||
|
echo $raw;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
public function msg($id, $msg)
|
||||||
|
{
|
||||||
|
return $this->exec("<xml>
|
||||||
|
<ToUserName><![CDATA[".$id."]]></ToUserName>
|
||||||
|
<FromUserName><![CDATA[".WC_UserName."]]></FromUserName>
|
||||||
|
<CreateTime>".time()."</CreateTime>
|
||||||
|
<MsgType><![CDATA[text]]></MsgType>
|
||||||
|
<Content><![CDATA[".$msg."]]></Content>
|
||||||
|
<MsgId>".rand(1,9999999999999)."</MsgId>
|
||||||
|
</xml>");
|
||||||
|
}
|
||||||
|
}
|
14
classes/Wechat/init.php
Normal file
14
classes/Wechat/init.php
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
<?php
|
||||||
|
$BOT = new Base;
|
||||||
|
$GET = $raw = file_get_contents("php://input");
|
||||||
|
|
||||||
|
//reply to...
|
||||||
|
preg_match('/<ToUserName><!\[CDATA\[(.*)\]\]><\/ToUserName>/', $raw, $FromUserName);
|
||||||
|
$FromUserName = $FromUserName[1];
|
||||||
|
preg_match('/<FromUserName><!\[CDATA\[(.*)\]\]><\/FromUserName>/', $raw, $ToUserName);
|
||||||
|
$ToUserName = $ToUserName[1];
|
||||||
|
preg_match('/<Content><!\[CDATA\[(.*)\]\]><\/Content>/', $raw, $Content);
|
||||||
|
$Content = $Content[1];
|
||||||
|
|
||||||
|
$from = $ToUserName;
|
||||||
|
$text = $Content;
|
@ -14,3 +14,6 @@ define('TB_API_URL', 'https://api.telegram.org/bot'.TB_TOKEN.'/');
|
|||||||
|
|
||||||
//For plugins
|
//For plugins
|
||||||
define('PLUGIN_GITHUB_TOKEN', 'YOU_GITHUB_TOKEN_HERE');
|
define('PLUGIN_GITHUB_TOKEN', 'YOU_GITHUB_TOKEN_HERE');
|
||||||
|
|
||||||
|
//For Wechat
|
||||||
|
define('WC_UserName', 'YOU_WECHAT_USERNAME_HERE');
|
||||||
|
Loading…
Reference in New Issue
Block a user