Commit e8b1913e by HanSon

修复Recall bug

增加路径获取 System::getPath()
以微信号为文件夹名称
1 parent c0bd1927
......@@ -63,23 +63,23 @@ $robot->server->setMessageHandler(function ($message) use ($path) {
// 图片信息 返回接收到的图片
if ($message instanceof Image) {
return $message;
// return $message;
}
// 视频信息 返回接收到的视频
if ($message instanceof Video) {
return $message;
// return $message;
}
// 表情信息 返回接收到的表情
if ($message instanceof Emoticon) {
return $message;
// return $message;
}
// 语音消息
if($message instanceof Voice){
/** @var $message Voice */
return '收到一条语音并下载在' . $message::getPath($message::$folder) . "/{$message->msg['MsgId']}.mp3";
// return '收到一条语音并下载在' . $message::getPath($message::$folder) . "/{$message->msg['MsgId']}.mp3";
}
// 撤回信息
......@@ -152,7 +152,7 @@ $robot->server->setMessageHandler(function ($message) use ($path) {
// 手机点击聊天事件
if($message instanceof Touch){
Text::send($message->msg['ToUserName'], "我点击了此聊天");
// Text::send($message->msg['ToUserName'], "我点击了此聊天");
}
return false;
......
......@@ -57,6 +57,9 @@ class ContactFactory
}
$this->getBatchGroupMembers();
myself()->alias = contact()->get(myself()->username)['Alias'] ? : myself()->username;
if(server()->config['debug']){
FileManager::download('contact.json', json_encode(contact()->all()));
FileManager::download('member.json', json_encode(member()->all()));
......
......@@ -15,6 +15,7 @@ use Hanson\Vbot\Message\Entity\Message;
use Hanson\Vbot\Message\Entity\Text;
use Hanson\Vbot\Message\Entity\Video;
use Hanson\Vbot\Support\Console;
use Hanson\Vbot\Support\System;
class MessageHandler
{
......@@ -193,7 +194,7 @@ class MessageHandler
{
message()->put($message->msg['MsgId'], $message);
$file = fopen(server()->config['tmp'].'/message.json', 'a');
$file = fopen(System::getPath() .'message.json', 'a');
fwrite($file, json_encode($message) . PHP_EOL);
fclose($file);
}
......
......@@ -22,6 +22,8 @@ class Myself
public $sex;
public $alias;
public static function getInstance()
{
if (!static::$instance) {
......
......@@ -13,6 +13,8 @@ use Endroid\QrCode\QrCode;
use Hanson\Vbot\Collections\ContactFactory;
use Hanson\Vbot\Collections\Group;
use Hanson\Vbot\Support\Console;
use Hanson\Vbot\Support\FileManager;
use Hanson\Vbot\Support\System;
class Server
{
......@@ -140,7 +142,9 @@ class Server
mkdir($this->config['tmp'], 0700, true);
}
$file = $this->config['tmp'] . 'qr.png';
$file = System::getPath() . 'qr.png';
FileManager::download('qr.png', file_get_contents($url));
$qrCode->save($file);
}
......
......@@ -49,10 +49,10 @@ class Recall extends Message implements MessageInterface
$msgId = $this->parseMsgId($this->msg['Content']);
/** @var Message $message */
$this->origin = $message = message()->get($msgId, null);
$this->origin = message()->get($msgId, null);
if(!$message){
$this->nickname = $message->sender ? $message->sender['NickName'] : account()->getAccount($message->msg['FromUserName'])['NickName'];
if($this->origin){
$this->nickname = $this->origin->sender ? $message->sender['NickName'] : account()->getAccount($this->origin->msg['FromUserName'])['NickName'];
$this->setContent();
}
......
......@@ -7,6 +7,7 @@
*/
namespace Hanson\Vbot\Message;
use Hanson\Vbot\Support\System;
/**
......@@ -19,7 +20,7 @@ trait MediaTrait
public static function getPath($folder)
{
$path = server()->config['tmp'] . $folder;
$path = System::getPath() . $folder;
return realpath($path);
}
......
......@@ -14,7 +14,7 @@ class FileManager
public static function download($name, $data, $path = '')
{
$path = server()->config['tmp'] . myself()->nickname . '/' . $path;
$path = System::getPath() . $path;
if(!is_dir(realpath($path))){
mkdir($path, 0700, true);
}
......
......@@ -21,4 +21,9 @@ class System
{
return strtoupper(substr(PHP_OS, 0, 3)) === 'WIN';
}
public static function getPath()
{
return server()->config['tmp'] . '/' . myself()->alias . '/';
}
}
\ No newline at end of file
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!