Coder Social home page Coder Social logo

mochat-cloud / mochat Goto Github PK

View Code? Open in Web Editor NEW
2.2K 34.0 486.0 7.33 MB

基于企业微信的开源SCRM应用开发框架&引擎,也是一套通用的企业私域流量管理系统!

Home Page: https://mo.chat

License: GNU General Public License v3.0

Shell 0.02% PHP 58.90% Dockerfile 0.01% HTML 0.05% JavaScript 6.20% Vue 34.58% Less 0.24%
mochat wework weixin wecom

mochat's Issues

前端项目 dashboard 编译失败

我用的环境

  • PHP 版本:7.4.3
  • MoChat 版本:latest
  • Swoole 版本:4.6.5
  • Nodejs 版本:14.15.3

问题及现象

dashboard 编译失败, 看起来是去 require 不存在的 json文件,./public/ 下边没有 dll 文件夹,自然也不会有 dll/antDesignVue-manifest.json, 看起了也不像是 vue 或 webpack 会自动去创建文件夹和下载对应文件。

# 报错代码位置:
...
const dll = ['antDesignVue', 'vueCropper', 'echarts', 'corejs', 'vueContainerQuery']
      dll.map(item => {
        const path = `./public/dll/${item}-manifest.json`
        config.plugins.push(new webpack.DllReferencePlugin({
          manifest: require(path)
        }))
      })
...

# 报错命令:
$ yarn run build
yarn run v1.22.10
$ vue-cli-service build
✔  Building for production...
 ERROR  Error: Cannot find module './public/dll/antDesignVue-manifest.json'
Require stack:
- /home/thomas/scp_root/mochat/dashboard/vue.config.js
- /home/thomas/scp_root/mochat/dashboard/package.json
Error: Cannot find module './public/dll/antDesignVue-manifest.json'
Require stack:
- /home/thomas/scp_root/mochat/dashboard/vue.config.js
- /home/thomas/scp_root/mochat/dashboard/package.json
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:815:15)
    at Function.Module._load (internal/modules/cjs/loader.js:667:27)
    at Module.require (internal/modules/cjs/loader.js:887:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at /home/thomas/scp_root/mochat/dashboard/vue.config.js:65:21
    at Array.map (<anonymous>)
    at configureWebpack (/home/thomas/scp_root/mochat/dashboard/vue.config.js:62:11)
    at /home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/Service.js:251:21
    at Array.forEach (<anonymous>)
    at Service.resolveWebpackConfig (/home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/Service.js:248:30)
    at PluginAPI.resolveWebpackConfig (/home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/PluginAPI.js:132:25)
    at module.exports (/home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/commands/build/resolveAppConfig.js:46:14)
    at build (/home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/commands/build/index.js:147:50)
    at /home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/commands/build/index.js:89:13
    at Service.run (/home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/lib/Service.js:230:12)
    at Object.<anonymous> (/home/thomas/scp_root/mochat/dashboard/node_modules/@vue/cli-service/bin/vue-cli-service.js:36:9)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

跨域问题

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:1.1
  • Swoole 版本:4.7.1

问题及现象

服务部署好了,前端页面也弄好了,我在我本地电脑上任何浏览器访问是正常的,但是除了这台电脑以外,其他的电脑,包括手机,用浏览器访问就会报跨域错误

Access to XMLHttpRequest at 'http://api.yowub.com/dashboard/user/auth. from origin 'http://dashboard.yowub.com/' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

后台服务异常.hard错误

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:最新
  • Swoole 版本:4.5

问题及现象

部署完请求接口报 后台服务异常.hard

前端部署时,提示缺少必要文件

我用的环境

  • PHP 版本:7.3.22
  • MoChat 版本:latest
  • Swoole 版本:4.6.5

问题及现象

安装配置dashboard时,执行yarn run build后,一直提示缺少必要的文件,提示信息如下:
ERROR Error: Cannot find module './public/dll/antDesignVue-manifest.json'

尝试过node16/15/14/13/10等多个版本,均如此

初始化安装建议

我用的环境

  • PHP 版本:7.3.1
  • MoChat 版本:2.0
  • Swoole 版本:4.6

查询不到数据表

PHP Fatal error: Uncaught PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'mochat.user' doesn't exist in vendor/hyperf/database/src/Connection.php:282

建议在初始化安装提供表前缀填写

聊天侧边栏加载错误

我用的环境

  • PHP 版本:7.4.15
  • MoChat 版本:1.x
  • Swoole 版本:4.6

问题及现象

聊天侧边栏加载错误

前端提示 :{"code":100012,"msg":"资源未找到","data":[]}

后端错误代码截图如下:
屏幕快照 2021-02-25 15 47 32

安装报错 it is missing from your system. Install or enable PHP's wxwork_finance_sdk extension.

我用的环境

  • PHP 版本:7.4.10
  • MoChat 版本:master
  • Swoole 版本:4.5.4

问题及现象

执行composer install

 Problem 1
    - Root composer.json requires mochat/wework-finance-sdk ^1.0 -> satisfiable by mochat/wework-finance-sdk[v1.0.0].
    - mochat/wework-finance-sdk v1.0.0 requires ext-wxwork_finance_sdk * -> it is missing from your system. Install or enable PHP's wxwork_finance_sdk extension.

初始化项目报错 php bin/hyperf.php mc:init 报错 PHP Fatal error: Uncaught Error: Class 'Swoole\Coroutine' not found in /www/wwwroot/mochat/api-server/vendor/hyperf/engine/src/Coroutine.php:60

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:最新版,2022.2.15获取(git clone)
  • Swoole 版本:4

问题及现象

执行项目初始化时,报错,

php bin/hyperf.php mc:init

PHP Warning: Use of undefined constant SWOOLE_HOOK_ALL - assumed 'SWOOLE_HOOK_ALL' (this will throw an Error in a future version of PHP) in /www/wwwroot/mochat/api-server/bin/hyperf.php on line 12

Warning: Use of undefined constant SWOOLE_HOOK_ALL - assumed 'SWOOLE_HOOK_ALL' (this will throw an Error in a future version of PHP) in /www/wwwroot/mochat/api-server/bin/hyperf.php on line 12
PHP Warning: Use of undefined constant SWOOLE_HOOK_CURL - assumed 'SWOOLE_HOOK_CURL' (this will throw an Error in a future version of PHP) in /www/wwwroot/mochat/api-server/bin/hyperf.php on line 12

Warning: Use of undefined constant SWOOLE_HOOK_CURL - assumed 'SWOOLE_HOOK_CURL' (this will throw an Error in a future version of PHP) in /www/wwwroot/mochat/api-server/bin/hyperf.php on line 12

PHP Fatal error: Uncaught Error: Class 'Swoole\Coroutine' not found in /www/wwwroot/mochat/api-server/vendor/hyperf/engine/src/Coroutine.php:60
Stack trace:
#0 /www/wwwroot/mochat/api-server/vendor/hyperf/utils/src/Coroutine.php(90): Hyperf\Engine\Coroutine::id()
#1 /www/wwwroot/mochat/api-server/vendor/hyperf/utils/src/Context.php(41): Hyperf\Utils\Coroutine::inCoroutine()
#2 /www/wwwroot/mochat/api-server/vendor/hyperf/utils/src/Context.php(76): Hyperf\Utils\Context::has()
#3 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Resolver/DepthGuard.php(59): Hyperf\Utils\Context::override()
#4 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Resolver/DepthGuard.php(72): Hyperf\Di\Resolver\DepthGuard->increment()
#5 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Resolver/ResolverDispatcher.php(63): Hyperf\Di\Resolver\DepthGuard->call()
#6 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Container.php(184): Hyperf\Di\Resolver\ResolverDispatcher->resolve()
#7 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Containe in /www/wwwroot/mochat/api-server/vendor/hyperf/engine/src/Coroutine.php on line 60

Fatal error: Uncaught Error: Class 'Swoole\Coroutine' not found in /www/wwwroot/mochat/api-server/vendor/hyperf/engine/src/Coroutine.php:60
Stack trace:
#0 /www/wwwroot/mochat/api-server/vendor/hyperf/utils/src/Coroutine.php(90): Hyperf\Engine\Coroutine::id()
#1 /www/wwwroot/mochat/api-server/vendor/hyperf/utils/src/Context.php(41): Hyperf\Utils\Coroutine::inCoroutine()
#2 /www/wwwroot/mochat/api-server/vendor/hyperf/utils/src/Context.php(76): Hyperf\Utils\Context::has()
#3 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Resolver/DepthGuard.php(59): Hyperf\Utils\Context::override()
#4 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Resolver/DepthGuard.php(72): Hyperf\Di\Resolver\DepthGuard->increment()
#5 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Resolver/ResolverDispatcher.php(63): Hyperf\Di\Resolver\DepthGuard->call()
#6 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Container.php(184): Hyperf\Di\Resolver\ResolverDispatcher->resolve()
#7 /www/wwwroot/mochat/api-server/vendor/hyperf/di/src/Containe in /www/wwwroot/mochat/api-server/vendor/hyperf/engine/src/Coroutine.php on line 60

多次检查,api-server目录下并无vendor文件夾和子文件。

成员统计访问有问题

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:2.0
  • Swoole 版本:4.5.9

问题及现象

访问 http://mochat.test/workEmployee/index?page=1&perPage=10 显示 500错误
报错信息如下:

// api-server\app\Service\WorkEmployeeStatisticService.php
    /**
     *  查询多条 - 根据成员ID.
     */
    public function getEmployeeStatisticIdsByEmployeeIds(array $employeeIds, array $columns = ['*'], array $options = []): array
    {
        $model = $this->model::query()
            ->select('id', Db::raw('MAX(id) as id'))
            ->whereIn('employee_id', $employeeIds);
        if (! empty($options['groupBy'])) {
            $model = $model->groupBy($options['groupBy']);
        }
        return $model->get()->toArray();
    }

// api-server\app\Logic\WorkEmployee\IndexLogic.php
   /**
     * 成员统计
     */
    protected function getEmployeeStatistics(array $employeeIds): array
    {
        $employeeStatisticsIds = $this->workEmployeeStatisticService->getEmployeeStatisticIdsByEmployeeIds($employeeIds, ['id', 'employee_id'], ['groupBy' => ['employee_id']]);
    }

最终生成的SQL语句是

id 不在 group by 的字段中,查询为报错。MySQL 版本为5.7.26.

管理员密码修改问题

初始化时设置管理员密码如果用了符号,就无法修改了。
因为修改密码界面做了限制,只能是字母和数字
所以判断旧密码时无法通过验证

composer install

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:v1.1.5
  • Swoole 版本:swoole4

问题及现象

composer install找不到库

关于 “未认证,没有token”的问题

这个问题历史问题中也都有问过,但是都没给满意的答复,就关闭了,我觉得这种行为是很草率的。这里我给大家彻底的解释一下,为什么会报 未认证,没有token 这个问题。

导致的原因:报这个问题的人大多数是未使用初始化脚本去配置,而是自己直接去改配置文件 .env
追问:那为什么没用过初始化脚本,就会报这个问题呢?

1、未通过初始化脚本初始配置项,系统没办法生成一条默认账号。这时候,我们通过简单的代码调试,就知道 mc_user表缺数据,就会去添加数据。

2、面临的第二个问题就是,密码是加密后的,这是我们追源码,也很容易知道密码是
password_hash(md5($signatureString . $this->getSecret()), PASSWORD_BCRYPT);
这么来的。这也是官方,给的原因,说你密码错了,这个那个的。

3、你发现你的密码是对的,为什么还是报呢?继续追代码你会发现,token 其实是生成了,只是调用 /role/permissionByUser 报莫名其妙的错误 未认证,没有token。这个错误极具误导性,让人以为是header中未携带token,其实好好的携带着呢。
/role/permissionByUser发现并没有进入这个方法,之前就被拦住了,报错了。那就是中间件的问题了。最终找到
mochat/api-server/app/Model/Traits/UserTrait.php 的 72 - 73行。有如下代码:
$redis = $container->get(Redis::class); $cacheData = $redis->get('mc:user.' . $id);
jwt这个组件,需要用到redis 去存储用户的信息,未连上报的错误。我想大多数的人,都是因为,并没有去连接redis也能启动,而忽略了。

使用docker-compose方式安装mochat时,在执行docker-composer up后 一直报redis连接失败的错误的解决方法

问题:使用docker-compose方式安装mochat时,在执行docker-composer up后 一直报redis连接失败的错误
mochat_init | sh: /tmp/wait-for: not found
backend | [ERROR] RedisException:Connection refused(0) in /opt/www/vendor/hyperf/redis/src/RedisConnection.php:246

分析:主要是/docker-compose/services/mochat_init/wait-for这个sh文件没有被linux服务器识别 导致mochat_init初始化失败。
原因是shell脚本编写时的系统跟执行脚本的系统不一致,比如在window系统编写脚本,拷贝到Linux系统执行时就会遇见此问题。原因是在windows下编辑的.sh文件的格式为dos格式,而linux只能执行格式为unix格式的脚本。因为在dos/window下按一次回车键实际上输入的是“回车(CR)”和“换行(LF)”,而Linux/unix下按一次回车键只输入“换行(LF)”,所以修改的sh文件在每行都会多了一个CR,所以Linux下运行时就会报错找不到命令。
另外就是在github上使用windows系统下载源文件中包含shell脚本文件时,解压并拷贝到Linux系统执行时,也可能发生此问题。

解决办法:
通过vi编辑器来查看文件的format格式
用vi命令打开文件vi wait-for
在vi命令模式中使用 :set ff 命令 可以看到文件的格式为
fileformat=dos
使用vi/vim修改文件format为unix
:set ff=unix
或者::set fileformat=unix
然后:wq保存退出,重新执行docker-composer up就正常了。

初始化报错php bin/hyperf.php mc:init。 PHP Fatal error: Uncaught Symfony\Component\Console\Exception\RuntimeException: Unable to hide the response. in /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php:434

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:最新(2022.4)
  • Swoole 版本:4

问题及现象

执行如下指令时报错:php bin/hyperf.php mc:init
刚开始初始化时正常,当配置到管理员手机并回车确定时,看到提示输入管理员密码,接着就是报错信息了。

 输入redis.db [0]:
 > 

+------------+-----------+
| 属性名称   | 属性值    |
+------------+-----------+
| REDIS_HOST | 127.0.0.1 |
| REDIS_PORT | 6379      |
| REDIS_AUTH |           |
| REDIS_DB   | 0         |
+------------+-----------+
重载配置成功

 输入管理员的手机号:
 > 18888888888

 输入管理员密码:
 > PHP Fatal error:  Uncaught Symfony\Component\Console\Exception\RuntimeException: Unable to hide the response. in /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php:434

完整报错信息如下:

 > PHP Fatal error:  Uncaught Symfony\Component\Console\Exception\RuntimeException: Unable to hide the response. in /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php:434
Stack trace:
#0 /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php(120): Symfony\Component\Console\Helper\QuestionHelper->getHiddenResponse()
#1 /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php(67): Symfony\Component\Console\Helper\QuestionHelper->doAsk()
#2 /www/wwwroot/mochat/api-server/vendor/symfony/console/Style/SymfonyStyle.php(361): Symfony\Component\Console\Helper\QuestionHelper->ask()
#3 /www/wwwroot/mochat/api-server/vendor/hyperf/command/src/Command.php(182): Symfony\Component\Console\Style\SymfonyStyle->askQuestion()
#4 /www/wwwroot/mochat/api-server/runtime/container/proxy/MoChat_App_Install_Command_McInitCommand.proxy.php(203): Hyperf\Command\Command->secret()
#5 /www/wwwroot/mochat/api-server/runtime/container/proxy/MoChat_App_Install_Command_McInitCommand.pro in /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php on line 434

Fatal error: Uncaught Symfony\Component\Console\Exception\RuntimeException: Unable to hide the response. in /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php:434
Stack trace:
#0 /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php(120): Symfony\Component\Console\Helper\QuestionHelper->getHiddenResponse()
#1 /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php(67): Symfony\Component\Console\Helper\QuestionHelper->doAsk()
#2 /www/wwwroot/mochat/api-server/vendor/symfony/console/Style/SymfonyStyle.php(361): Symfony\Component\Console\Helper\QuestionHelper->ask()
#3 /www/wwwroot/mochat/api-server/vendor/hyperf/command/src/Command.php(182): Symfony\Component\Console\Style\SymfonyStyle->askQuestion()
#4 /www/wwwroot/mochat/api-server/runtime/container/proxy/MoChat_App_Install_Command_McInitCommand.proxy.php(203): Hyperf\Command\Command->secret()
#5 /www/wwwroot/mochat/api-server/runtime/container/proxy/MoChat_App_Install_Command_McInitCommand.pro in /www/wwwroot/mochat/api-server/vendor/symfony/console/Helper/QuestionHelper.php on line 434

消息存档不好用!

我用的环境

docker版本

问题及现象

我添加完了企业,并配置好企业的信息,使用消息存档功能没有任何消息,我查看源代码后发现MessageSyncDataTask的注释上写着TODO 本功能暂未启用。消息存档这个功能现在是咱不可用么?

群打卡sql错误

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:1.0 最新
  • Swoole 版本:

问题及现象

{"@timestamp":"2021-08-24T14:09:32.295530+08:00","@Version":1,"host":"442901984fb7","message":"SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'mochat_v1.mc_room_clock_in_contact.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by (SQL: select id, nickname, avatar, total_day, series_day from mc_room_clock_in_contact where clock_in_id = 1 and total_day > 0 and mc_room_clock_in_contact.deleted_at is null group by union_id, total_day order by total_day desc limit 10)[1082] in /opt/www/vendor/hyperf/database/src/Connection.php","type":"mochat","channel":"sys","level":"ERROR","monolog_level":400}

经常超时错误

我用的环境

  • PHP 版本:
  • MoChat 版本:
  • Swoole 版本:

问题及现象

您好,在测试的时候有个问题,就是会经常报超时错误,刷新页面也不行,但是过几分钟就正常了,想问下是配置的nginx有问题?还是后台不稳定造成的

报错500

我用的环境

  • PHP 版本:7.2
  • MoChat 版本:
  • Swoole 版本:4.5

问题及现象

General error: 1525 Incorrect TIMESTAMP value: ''2021-11-17'' (SQL: select count(id) as aggregate from mc_shop_code_record where corp_id = 1 and type = 1 and created_at > '2021-11-17' and mc_shop_code_record.deleted_at is null)[1082] in /opt/www/vendor/hyperf/database/src/Connection.php","type":"mochat","channel":"sys","level":"ERROR","monolog_level":400}

image
image

外部群聊机器人

问题1:

企业微信外部群聊机器人有相关第三方应用或者有开发计划吗?

问题2:

群管理支持对发广告自动踢人吗?

问题3:

dotnet core 版本的 mochat 在不在开发计划内呀?

无法获取消息存档数据

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:2.0
  • Swoole 版本:swoole4.x

问题及现象

  • 安装环境根据文档使用宝塔进行安装,安装完毕后,均可以正常登录后台,接口正常,访问显示“Hello MoChat”。成员、客户、组织架构均能正常同步。
  • 问题:在mochat后台配置完消息存档,重复确认并排除文档“会话内容未拉取”中的问题不存在,且微信用户”同意了存档会话内容“。但后台依旧无法有消息存档。
    image

在api-service/runtime/logs 中

info-2021-06-28.log  wechat.log

只有这两个日志,也没有报错信息。

无法登录 dashboard

我用的环境

  • PHP 版本:7.4.3
  • MoChat 版本:latest
  • Swoole 版本:4.6.5
  • Nodejs 版本:14.15.3

问题及现象

安装配置成功后,无法登录dashboard,提示未认证,没有token

  • api, dashboard, sidebar 都部署完毕,域名和 nginx 反向代理都按照文档设置并且能够访问。
  • php bin/hyperf.php mc:init 成功, 数据库各种表已经创建起来了
  • mc_user 没有数据,执行了文档里写的两条sql:
INSERT INTO `mc_user` (`phone`,`password`,`status`,`isSuperAdmin`) VALUES ('13412347867','$2y$10$6PedNV6SVNQNpUMjZgauvewh7wfFjbSWbh2k9yGJ9dhAIBVcL4gKm',1,1);

INSERT INTO `mc_tenant` (`server_ips`) VALUES ('["182.92.11.11"]');

1
2
3

operation 前端 执行 yarn install 出错

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:v1.1.5
  • Swoole 版本:4.5

问题及现象

operation 前端 执行 yarn install 出错

gyp info spawn args '-Goutput_dir=.'
gyp info spawn args ]
gyp verb command build []
gyp verb build type Release
gyp verb architecture x64
gyp verb node dev dir /root/.node-gyp/16.15.0
gyp verb which succeeded for make /usr/bin/make
gyp info spawn make
gyp info spawn args [ 'V=1', 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory /www/wwwroot/mochat/operation/node_modules/node-sass/build' g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/root/.node-gyp/16.15.0/include/node -I/root/.node-gyp/16.15.0/src -I/root/.node-gyp/16.15.0/deps/openssl/config -I/root/.node-gyp/16.15.0/deps/openssl/openssl/include -I/root/.node-gyp/16.15.0/deps/uv/include -I/root/.node-gyp/16.15.0/deps/zlib -I/root/.node-gyp/16.15.0/deps/v8/include -I../src/libsass/include -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast.o.d.raw -c -o Release/obj.target/libsass/src/libsass/src/ast.o ../src/libsass/src/ast.cpp g++: error: unrecognized command line option ‘-std=gnu++14’ make: *** [Release/obj.target/libsass/src/libsass/src/ast.o] Error 1 make: Leaving directory /www/wwwroot/mochat/operation/node_modules/node-sass/build'
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/www/wwwroot/mochat/operation/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack at ChildProcess.emit (node:events:527:28)
gyp ERR! stack at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
gyp ERR! System Linux 3.10.0-1160.53.1.el7.x86_64
gyp ERR! command "/www/server/nvm/versions/node/v16.15.0/bin/node" "/www/wwwroot/mochat/operation/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd /www/wwwroot/mochat/operation/node_modules/node-sass
gyp ERR! node -v v16.15.0

MySQL 8.0 无法创建企业临时解决方案

修改文件 :vendor/hyperf/database/src/Schema/Grammars/MySqlGrammar.php

找到 compileColumnListing 方法,修改如下:

 /**
     * Compile the query to determine the list of columns.
     */
    public function compileColumnListing(): string
    {
        return 'select `column_key` as `column_key`, `column_name` as `column_name`, `data_type` as `data_type`, `column_comment` as `column_comment`, `extra` as `extra`, `column_type` as `column_type` from information_schema.columns where `table_schema` = ? and `table_name` = ? order by ORDINAL_POSITION';
    }

消息存档的相关问题

我用的环境

  • PHP 版本:7.4
  • MoChat 版本:2.0
  • Swoole 版本:4.6

问题及现象

1、消息存档在下载时间比较短的音频文件转mp3的时候会失败,返回为空,不知道是我的ffmpeg问题还是什么,我转成了wav就没啥问题

2、消息存档如果有语音通话的记录,在程序获取同步的时候会因为没有对语音通话类型作处理(并未传回roomid)导致异步
[redis异步队列错误-message:] Undefined index: roomid
应该视频通话也会导致这个错误吧,望下个版本进行完善下

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.