chore: 重写初始提交(清空历史,整理后全量提交)

This commit is contained in:
ywxapp
2026-08-16 16:54:14 +08:00
commit 6c1a106bc1
1808 changed files with 238144 additions and 0 deletions
+86
View File
@@ -0,0 +1,86 @@
<?php
// +----------------------------------------------------------------------
// | YwxApp [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2026-2036 http://ywxapp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Author: ywxapp<admin@ywxapp.cn>
// +----------------------------------------------------------------------
namespace addon\wxchat\command;
use GatewayWorker\Gateway;
use think\console\Command;
use think\console\Input;
use think\console\input\Option;
use think\console\Output;
use Workerman\Worker;
use \GatewayWorker\BusinessWorker;
use \GatewayWorker\Register;
// php think wxchat:server -a start
/**
* ChatServer 类
*
* @author ywxapp <admin@ywxapp.cn>
*/
class ChatServer extends Command
{
protected function configure()
{
$this->setName('wxchat:server')->addOption('action', 'a', Option::VALUE_OPTIONAL, '操作')->setDescription('Start wxchat GatewayWorker Server');
}
protected function execute(Input $input, Output $output)
{
// 初始化 GatewayWorker
$this->initGatewayWorker();
Worker::runAll();
}
private function initGatewayWorker()
{
// register 必须是text协议,切记不能将register端口开放给外网
$register = new Register('text://127.0.0.1:1238');
// bussinessWorker 进程
$worker = new BusinessWorker();
// worker名称
$worker->name = 'YourAppBusinessWorker';
// bussinessWorker进程数量
$worker->count = 4;
// 服务注册地址
$worker->registerAddress = '127.0.0.1:1238';
$worker->eventHandler = \addon\wxchat\worker\ChatEvent::class;
$context = [
'ssl' => [
'local_cert' => __DIR__ . '/fullchain.pem', // 也可以是crt文件
'local_pk' => __DIR__ . '/privkey.pem',
'verify_peer' => false,
'allow_self_signed' => true, //如果是自签名证书需要开启此选项
],
];
$gateway = new Gateway("websocket://0.0.0.0:2346", $context);
$gateway->name = 'AppGateway';
$gateway->count = 2;
$gateway->lanIp = '127.0.0.1';
$gateway->startPort = 2900;
$gateway->websocketCompression = false; // ⚠️ 必须关闭!
$gateway->maxPackageSize = 10 * 1024 * 1024; // 10MB(支持大Base64
$gateway->registerAddress = '127.0.0.1:1238';
//$gateway->onWorkerStart
//$gateway->onWorkerStop
//$gateway->onConnect
//$gateway->onMessage
//$gateway->onClose
$gateway->transport = 'ssl';
// 心跳间隔
//$gateway->pingInterval = 0;
// 心跳数据
//$gateway->pingData = '{"type":"ping"}';
}
}
+60
View File
@@ -0,0 +1,60 @@
-----BEGIN CERTIFICATE-----
MIIFEzCCA/ugAwIBAgISBW/Ay2dbfeH3mtX35GOjxyN7MA0GCSqGSIb3DQEBCwUA
MDMxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQwwCgYDVQQD
EwNSMTIwHhcNMjYwMTE0MDQyMTM5WhcNMjYwNDE0MDQyMTM4WjAaMRgwFgYDVQQD
Ew9kZXYueGl4aW5nd2wuY24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
AQDRV9LxV8BPoFEaMUMHS9du/rizoJpuTms1byYZ5eoJuYNQjVuuLCs+c2qVKVY5
rVgrltkpSLo63dmt2i0p+tlIenPAN0S4p/OF6OfydAVj8wk9xprVYSFNvk7AIX/F
0h1BlHg57S54wY+RbX17tTdtU8vnP6T+7skEVWG/xyROcmQjQCSxDkCe/hRkflwN
XeGQ6IcdJI17BFeO9yw6SG1aeivZ/nUdtQmcZI6E7PjTkinHRmvEcsdf91AKXWI0
HCvRsGsBzvOIdQ7bR3c/N7zAdOCbGTWWcb5UV7ArrilKbWPqVh7FOxGQ/A8n4gDz
cMFkHeujGg8cIXmx78nkUi4vAgMBAAGjggI4MIICNDAOBgNVHQ8BAf8EBAMCBaAw
HQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYD
VR0OBBYEFAyNk6Me7pmHHGbKIIUx8lx8t9x+MB8GA1UdIwQYMBaAFAC1KfItjm8x
6JtMrXg++tzpDNHSMDMGCCsGAQUFBwEBBCcwJTAjBggrBgEFBQcwAoYXaHR0cDov
L3IxMi5pLmxlbmNyLm9yZy8wLAYDVR0RBCUwI4IQYm9sZy54aXhpbmd3bC5jboIP
ZGV2LnhpeGluZ3dsLmNuMBMGA1UdIAQMMAowCAYGZ4EMAQIBMC8GA1UdHwQoMCYw
JKAioCCGHmh0dHA6Ly9yMTIuYy5sZW5jci5vcmcvMTI0LmNybDCCAQoGCisGAQQB
1nkCBAIEgfsEgfgA9gB1AEmcm2neHXzs/DbezYdkprhbrwqHgBnRVVL76esp3fjD
AAABm7ryb9gAAAQDAEYwRAIgdxwbydHvKUquqAfkOyDoISPMoQuPj/ku/MOsEgfc
S4MCIEMrQaI2LnUqUzTvHC04nzMOtgduuUA1tjm2L0f2ltJ2AH0AcX6V88I4im2x
44RJPTHhWqliCHYtQgDgBQzQZ7WmYeIAAAGbuvJwfgAIAAAFAAbmNt0EAwBGMEQC
IBaFKBtn/ZvDQhCnjy7VeVH+KrK/voumG0Fx7qb1eIRUAiBBfBEOPx6vCAvrVG+b
iZD99RvJcdcrxWIT6rGLHY6dZDANBgkqhkiG9w0BAQsFAAOCAQEAXUACyn+fv80j
D7I/01j0197EEWToW210O72bf0sski+RdoIwsawNERwh5AVVYRkfPz/xMvO/H7Ad
xx/IyePr6bLuNgYVz+dv5f4s14tCLf4+sN58FSm9+4q0eRiaCq0+plTPpogecmHM
v9tUDC1IbigpikIIAaZOTnBT3ERgeS5cv3eAVjiHnSlfX0/jbFIV2dpLGEX35UGk
SV+0+w2IfzFtVoq73YwXC+G688Ts6dm670GLIfyFwkrkqKjT6hyckxiWbbQqVv/X
DPXi8oLLmsaP4KY5Ly2RtsIJtUTV0lP2Ja3qVPcImOsO7pjL5uoMVjtgn+CvfrwD
ADa7KaQXNQ==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFBjCCAu6gAwIBAgIRAMISMktwqbSRcdxA9+KFJjwwDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjQwMzEzMDAwMDAw
WhcNMjcwMzEyMjM1OTU5WjAzMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDEMMAoGA1UEAxMDUjEyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEA2pgodK2+lP474B7i5Ut1qywSf+2nAzJ+Npfs6DGPpRONC5kuHs0BUT1M
5ShuCVUxqqUiXXL0LQfCTUA83wEjuXg39RplMjTmhnGdBO+ECFu9AhqZ66YBAJpz
kG2Pogeg0JfT2kVhgTU9FPnEwF9q3AuWGrCf4yrqvSrWmMebcas7dA8827JgvlpL
Thjp2ypzXIlhZZ7+7Tymy05v5J75AEaz/xlNKmOzjmbGGIVwx1Blbzt05UiDDwhY
XS0jnV6j/ujbAKHS9OMZTfLuevYnnuXNnC2i8n+cF63vEzc50bTILEHWhsDp7CH4
WRt/uTp8n1wBnWIEwii9Cq08yhDsGwIDAQABo4H4MIH1MA4GA1UdDwEB/wQEAwIB
hjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwEgYDVR0TAQH/BAgwBgEB
/wIBADAdBgNVHQ4EFgQUALUp8i2ObzHom0yteD763OkM0dIwHwYDVR0jBBgwFoAU
ebRZ5nu25eQBc4AIiMgaWPbpm24wMgYIKwYBBQUHAQEEJjAkMCIGCCsGAQUFBzAC
hhZodHRwOi8veDEuaS5sZW5jci5vcmcvMBMGA1UdIAQMMAowCAYGZ4EMAQIBMCcG
A1UdHwQgMB4wHKAaoBiGFmh0dHA6Ly94MS5jLmxlbmNyLm9yZy8wDQYJKoZIhvcN
AQELBQADggIBAI910AnPanZIZTKS3rVEyIV29BWEjAK/duuz8eL5boSoVpHhkkv3
4eoAeEiPdZLj5EZ7G2ArIK+gzhTlRQ1q4FKGpPPaFBSpqV/xbUb5UlAXQOnkHn3m
FVj+qYv87/WeY+Bm4sN3Ox8BhyaU7UAQ3LeZ7N1X01xxQe4wIAAE3JVLUCiHmZL+
qoCUtgYIFPgcg350QMUIWgxPXNGEncT921ne7nluI02V8pLUmClqXOsCwULw+PVO
ZCB7qOMxxMBoCUeL2Ll4oMpOSr5pJCpLN3tRA2s6P1KLs9TSrVhOk+7LX28NMUlI
usQ/nxLJID0RhAeFtPjyOCOscQBA53+NRjSCak7P4A5jX7ppmkcJECL+S0i3kXVU
y5Me5BbrU8973jZNv/ax6+ZK6TM8jWmimL6of6OrX7ZU6E2WqazzsFrLG3o2kySb
zlhSgJ81Cl4tv3SbYiYXnJExKQvzf83DYotox3f0fwv7xln1A2ZLplCb0O+l/AK0
YE0DS2FPxSAHi0iwMfW2nNHJrXcY3LLHD77gRgje4Eveubi2xxa+Nmk/hmhLdIET
iVDFanoCrMVIpQ59XWHkzdFmoHXHBV7oibVjGSO7ULSQ7MJ1Nz51phuDJSgAIU7A
0zrLnOrAj/dfrlEWRhCvAgbuwLZX1A2sjNjXoPOHbsPiy+lO1KF8/XY7
-----END CERTIFICATE-----
+28
View File
@@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDRV9LxV8BPoFEa
MUMHS9du/rizoJpuTms1byYZ5eoJuYNQjVuuLCs+c2qVKVY5rVgrltkpSLo63dmt
2i0p+tlIenPAN0S4p/OF6OfydAVj8wk9xprVYSFNvk7AIX/F0h1BlHg57S54wY+R
bX17tTdtU8vnP6T+7skEVWG/xyROcmQjQCSxDkCe/hRkflwNXeGQ6IcdJI17BFeO
9yw6SG1aeivZ/nUdtQmcZI6E7PjTkinHRmvEcsdf91AKXWI0HCvRsGsBzvOIdQ7b
R3c/N7zAdOCbGTWWcb5UV7ArrilKbWPqVh7FOxGQ/A8n4gDzcMFkHeujGg8cIXmx
78nkUi4vAgMBAAECggEABIlRgLmvk6om3RlF2WcgfynAPo2TkHdc5bayYyudyOHU
bCRGtn1Y3zdoubHAdMCCYXNujPFOrnmMlDK0TtgTlE6pqnfSzT4/zd47BIB/dhKC
rUGGrRVilN4zs6smKyxp8OKy65fDAt/i6Lpa1pmZ3rcgUIhgXsaK5EVQuHNWyz0E
+M6r7n9qxsdG5fqjkN+rD/54Ryh4bpMO/aITneqmiGGyO9P6PV2HRFhGcmIezCcb
lrXYFuSiBiAsEOIjnI74HcJwVzc30ZahvO9JiAKauGpORQEvJkMl9tDQ/ALdk5m7
k3S8vhHYKzOO2i8wHAVnbruXetdQuPkzzbwyVbyviQKBgQDysE51StzzPSR21iDV
w/8MEpLu8V07I/AA0CXt22ME6F6qhatfdj7+90E5n8jo8+D+H+Wp58AlIyzSmb6Y
WoioHL0MMeZbwGxdZlNYDoT7RBXoePq4wsB+R87Yd0FIHVVXgPOWcbmnNc0ClGqA
6mj6PxzdsS7jEs2P9x9OZU04CQKBgQDc00wptJpnoo3QZ01aZBEfhXLl1xn8IzI4
ZaLm00vVzElcV3DnzmEMI9qDjdKU6rwu11bhCNJQgLa/OZqVVBQosbIwKCphvPT0
tksiOyix3BWo+RaO8+fEqshj8tKPjeXvLOk90sD5cdsRbe9wy63ldrfFMSMKk3sh
OzCb1biSdwKBgE9OHdVmaV1zFX9f6crxCV9AkpNSfEzfKYaafkqD7o+j/4tpst63
HU7kLYRPGrBFQbjJY5tqB/gazoLjiszuiMmm2oAprkU9VCwRTBryY7JYRXB6WDQY
MB8UCBvknIicTU8S7Ia1Ex35Ds1RApyt/TAJf71SMSgy9Mmez7Qmll1BAoGBAIL7
Tgza1E8ua0G3VHmOK13wEPPlv8L/uXUcTCDwKeY50zXTo+PLVWMXDTDE+ahdB5wd
HKpESkN35W3NpDR497AfnprT6DerFfzk9/Ho9z1wVuSwQsIuSEYuKsimKmD+AOn6
UKrcDJyo/RD8jW7xUUdvQJfVinxmeD2A11dH0MAHAoGAGyhwf6Z8Y1jNK6W+2taJ
WpYRjoIBW8CaMmpzxsu4Ln92MY5xMTUyvGL2Q6gZ6hXs3dQRvaSxaLvAD0NDOn+2
QC1pDZada+I4zvBYWj0kTplKxVQrNJhXeZUB7U8GVGZhRIs+v2qHDHiJyTLdlj+h
UbbY1HVcw7kYjDwm7iIM1o0=
-----END PRIVATE KEY-----