fixed
This commit is contained in:
@@ -102,7 +102,7 @@ class AudioRevertLogic extends BaseLogic
|
||||
function revert_test($client_id,$audioData){
|
||||
$xunfei_record_config = config('xunfei_record_config');
|
||||
$appId = $xunfei_record_config['appid'];
|
||||
$secretKey = $xunfei_record_config['secretKey'];
|
||||
$secretKey = $xunfei_record_config['APIKey'];
|
||||
|
||||
dump($xunfei_record_config);
|
||||
$client = new LfasrClient($appId, $secretKey);
|
||||
|
||||
78
digital_doctor/application/api/logic/RealTimeASRClient.php
Normal file
78
digital_doctor/application/api/logic/RealTimeASRClient.php
Normal file
@@ -0,0 +1,78 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\logic;
|
||||
|
||||
use React\EventLoop\Factory;
|
||||
use React\Socket\Connector;
|
||||
use React\Http\Browser;
|
||||
use React\Promise\Timer\Timeout;
|
||||
use React\Stream\ThroughStream;
|
||||
use React\WebSocket\ConnectionContext;
|
||||
use React\WebSocket\WebSocketFactory;
|
||||
class RealTimeASRClient
|
||||
{
|
||||
/**
|
||||
* 根据所提供信息返回签名
|
||||
*
|
||||
* @param string $appId appid
|
||||
* @param string $secretKey secretKey
|
||||
* @param string $timestamp 时间戳,不传的话使用系统时间
|
||||
* @return string
|
||||
*/
|
||||
function sign_V1($appId, $secretKey, $timestamp = null){
|
||||
$timestamp = $timestamp ?: time();
|
||||
$baseString = $appId . $timestamp;
|
||||
$signa_origin = hash_hmac('sha1', md5($baseString), $secretKey, true);
|
||||
return base64_encode($signa_origin);
|
||||
}
|
||||
|
||||
|
||||
function req(){
|
||||
$loop = Factory::create();
|
||||
|
||||
$connector = new Connector($loop);
|
||||
$browser = new Browser($connector);
|
||||
|
||||
$appid = 'your_appid';
|
||||
$ts = strval(time());
|
||||
$apiKey = 'your_apiKey';
|
||||
|
||||
// 生成signa
|
||||
$baseString = $appid . $ts;
|
||||
$md5BaseString = md5($baseString);
|
||||
$signa = base64_encode(hash_hmac('sha1', $md5BaseString, $apiKey, true));
|
||||
|
||||
$url = "ws://rtasr.xfyun.cn/v1/ws?appid={$appid}&ts={$ts}&signa={$signa}";
|
||||
|
||||
$browser->request('GET', $url)
|
||||
->then(function ($request) use ($loop) {
|
||||
$request->on('response', function ($response) use ($loop) {
|
||||
$response->on('data', function ($chunk) {
|
||||
echo "Received: " . $chunk . PHP_EOL;
|
||||
});
|
||||
|
||||
$response->on('close', function () {
|
||||
echo "Connection closed." . PHP_EOL;
|
||||
});
|
||||
|
||||
// 创建一个通过流,用于发送音频数据
|
||||
$stream = new ThroughStream();
|
||||
$stream->pipe($response);
|
||||
|
||||
// 这里可以发送音频数据,假设你有一个音频文件
|
||||
// 注意:这只是一个示例,你需要根据实际情况发送数据
|
||||
// $audioData = file_get_contents('/path/to/audio.pcm');
|
||||
// $stream->write($audioData);
|
||||
|
||||
// 发送结束标志
|
||||
$stream->end(json_encode(["end" => true]));
|
||||
});
|
||||
})
|
||||
->then(null, function ($e) {
|
||||
echo "Error: " . $e->getMessage() . PHP_EOL;
|
||||
});
|
||||
|
||||
$loop->run();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ namespace app\index\controller;
|
||||
|
||||
use app\api\controller\BaseCommonController;
|
||||
use app\api\logic\AudioRevertLogic;
|
||||
use app\api\logic\RealTimeASRClient;
|
||||
use app\api\logic\UserLogic;
|
||||
use IFlytek\Xfyun\Speech\LfasrClient;
|
||||
use think\Controller;
|
||||
@@ -22,39 +23,17 @@ use wanghua\general_utility_tools_php\tool\Bank;
|
||||
use wanghua\general_utility_tools_php\tool\Tools;
|
||||
|
||||
/**
|
||||
*
|
||||
* @deprecated
|
||||
*/
|
||||
class Test extends BasePublicController
|
||||
{
|
||||
function test()
|
||||
{
|
||||
//ws://rtasr.xfyun.cn/v1/ws?appid=595f23df&ts=1512041814&signa=IrrzsJeOFk1NGfJHW6SkHUoN9CU=&pd=edu
|
||||
|
||||
$obj = new AudioRevertLogic();
|
||||
$obj->revert_test(1,1);
|
||||
|
||||
|
||||
|
||||
//(new AudioRevertLogic())->revert('asdsssssssssss','');
|
||||
//(new AudioRevertLogic())->revert_test('asdsssssssssss','');
|
||||
|
||||
//revert_test
|
||||
// 使用mt_rand()生成随机数
|
||||
//$randomNumber = mt_rand(0, 2);
|
||||
//
|
||||
//echo $randomNumber;
|
||||
|
||||
//(new UserLogic())->offline(input('client_id','asdsssssssssss'));
|
||||
//$res = Db::table('fa_users')->find();
|
||||
//dump($res);
|
||||
|
||||
//$res = Db::connect('mysql://cup_defense:z8PMXE3PGsy7WiFP@127.0.0.1:3306/cup_defense#utf8')->table('fa_users')->find();
|
||||
//dump($res);
|
||||
|
||||
|
||||
//$res = Curl::curl_get('https://qifu.baidu.com/ip/geo/v1/district?ip=183.227.88.8');
|
||||
//dump($res);die;
|
||||
//$res = (new Bank())->getBankSimpleInfoByBankNo('6217003760019611401');
|
||||
//
|
||||
//dump($res);
|
||||
//dump(Request::host());
|
||||
}
|
||||
|
||||
function testwss(){
|
||||
|
||||
@@ -60,43 +60,10 @@ class Events extends \think\worker\Events
|
||||
public static function onWorkerStart(Worker $businessWorker)
|
||||
{
|
||||
$app = new Application;
|
||||
//config([
|
||||
// 'database' => [
|
||||
// // 数据库类型
|
||||
// 'type' => 'mysql',
|
||||
// // 服务器地址
|
||||
// 'hostname' => '127.0.0.1',//,
|
||||
// // 数据库名
|
||||
// 'database' => 'cup_defense',
|
||||
// // 数据库用户名
|
||||
// 'username' => 'cup_defense',
|
||||
// // 数据库密码
|
||||
// 'password' => 'z8PMXE3PGsy7WiFP',
|
||||
// // 数据库连接端口
|
||||
// 'hostport' => 3306,
|
||||
// // 数据库编码默认采用utf8
|
||||
// 'charset' => 'utf8',
|
||||
// // 连接dsn
|
||||
// 'dsn' => '',
|
||||
// // 数据库连接参数
|
||||
// 'params' => [],
|
||||
// // 数据库表前缀
|
||||
// 'prefix' => '',
|
||||
// ],
|
||||
//]);
|
||||
|
||||
$app->initialize();
|
||||
// 输出数据库配置
|
||||
//Tools::log_to_write_txt(['onWorkerStart_database'=>config('database.')]);
|
||||
//// 加载数据库配置
|
||||
// 输出数据库配置
|
||||
//Tools::log_to_write_txt(['onWorkerStart_database'=>config('database.')]);
|
||||
|
||||
// 初始化数据库连接
|
||||
//Db::init();
|
||||
//Db::connect();
|
||||
// 在工作进程开始时,可以在这里执行一次数据库查询
|
||||
//Db::table('fa_users')->find();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -116,44 +83,6 @@ class Events extends \think\worker\Events
|
||||
Gateway::sendToCurrentClient($json);
|
||||
}
|
||||
|
||||
/**
|
||||
* onWebSocketConnect 事件回调
|
||||
* 当客户端连接上gateway完成websocket握手时触发
|
||||
*
|
||||
* @param integer $client_id 断开连接的客户端client_id
|
||||
* @param mixed $data {
|
||||
"get":[
|
||||
|
||||
],
|
||||
"server":{
|
||||
"REQUEST_METHOD":"GET",
|
||||
"REQUEST_URI":"/wss",
|
||||
"SERVER_PROTOCOL":"HTTP/1.1",
|
||||
"HTTP_UPGRADE":"websocket",
|
||||
"HTTP_CONNECTION":"Upgrade",
|
||||
"HTTP_X_REAL_IP":"183.227.89.107",
|
||||
"HTTP_HOST":"127.0.0.1:2000",
|
||||
"SERVER_NAME":"127.0.0.1",
|
||||
"SERVER_PORT":"2000",
|
||||
"HTTP_PRAGMA":"no-cache",
|
||||
"HTTP_CACHE_CONTROL":"no-cache",
|
||||
"HTTP_USER_AGENT":"wechatdevtools desktopapp appservice port/62717 token/589065e467011760c777411fca2cd0aa runtime/2 MicroMessenger",
|
||||
"HTTP_ORIGIN":"https://boomim.playone.cn",
|
||||
"HTTP_SEC_WEBSOCKET_VERSION":"13",
|
||||
"HTTP_ACCEPT_ENCODING":"gzip, deflate, br",
|
||||
"HTTP_ACCEPT_LANGUAGE":"zh-CN,zh;q=0.9",
|
||||
"HTTP_CONTENT_TYPE":"application/json",
|
||||
"HTTP_REFERER":"https://servicewechat.com/wx55e10fb2834803d5/devtools/page-frame.html",
|
||||
"HTTP_SEC_WEBSOCKET_KEY":"uWOWC1AZahJOpS18hN3ZHA==",
|
||||
"HTTP_SEC_WEBSOCKET_EXTENSIONS":"permessage-deflate; client_max_window_bits",
|
||||
"QUERY_STRING":""
|
||||
},
|
||||
"cookie":[
|
||||
|
||||
]
|
||||
}
|
||||
* @return void
|
||||
*/
|
||||
public static function onWebSocketConnect($client_id, $data)
|
||||
{
|
||||
|
||||
@@ -191,65 +120,20 @@ class Events extends \think\worker\Events
|
||||
return ;
|
||||
}
|
||||
//解析消息
|
||||
$xunfei_record_config = config('xunfei_record_config');
|
||||
$appId = $xunfei_record_config['appid'];
|
||||
$secretKey = $xunfei_record_config['secretKey'];
|
||||
|
||||
//解析action
|
||||
|
||||
//调用业务逻辑&响应处理结果
|
||||
//(new WssMessageLogic())->domsg($client_id,$data);
|
||||
|
||||
//$client = new VmsClient('YOUR_APPID', 'YOUR_SECRET_KEY');
|
||||
|
||||
// 音频数据接收处理
|
||||
//$audioData = $data;
|
||||
|
||||
//// 将音频数据转换为文件,以便传递给iFLYTEK SDK
|
||||
//$tempFile = tempnam(sys_get_temp_dir(), 'audio');
|
||||
//Tools::log_to_write_txt(['tempFile:',$tempFile]);
|
||||
//file_put_contents($tempFile, $audioData);
|
||||
//
|
||||
//// 设置转写参数
|
||||
//$lfasrConfig = [
|
||||
// 'hasParticiple' => 'true',
|
||||
// //'sample_rate' => 16000, // 采样率
|
||||
// 'language' => 'zh_cn', // 语言
|
||||
// //...
|
||||
//];
|
||||
//$xunfei_record_config = config('xunfei_record_config');
|
||||
//$appId = $xunfei_record_config['appid'];
|
||||
//$secretKey = $xunfei_record_config['secretKey'];
|
||||
//
|
||||
//Tools::log_to_write_txt(['app_id:',$appId]);
|
||||
//Tools::log_to_write_txt(['secret_key:',$secretKey]);
|
||||
//
|
||||
//$filePath = $tempFile;//'/Users/wh/Desktop/test.wav';
|
||||
//// 这里的$appId、$secretKey是在开放平台控制台获得
|
||||
//$client = new LfasrClient($appId, $secretKey, $lfasrConfig);
|
||||
//Tools::log_to_write_txt(['初始化$client:'=>$client]);
|
||||
//if(empty($client)){
|
||||
// Tools::log_to_write_txt(['初始化client初始化失败:$client为空。'=>$client]);
|
||||
// return;
|
||||
//}
|
||||
//
|
||||
//// $filePath为待转写的本地文件路径,返回taskId作为后续查询进度、获取结果操作的参数
|
||||
//$taskId = $client->combineUpload($filePath);
|
||||
//Tools::log_to_write_txt(['taskId:'=>$taskId]);
|
||||
//
|
||||
//// 查询进度,json格式
|
||||
//$progress = $client->getProgress($taskId)->getBody()->getContents();
|
||||
//Tools::log_to_write_txt(['查询进度,json格式:'=>$progress]);
|
||||
//// 获取结果,json格式
|
||||
//$result = $client->getResult($taskId)->getBody()->getContents();
|
||||
//Tools::log_to_write_txt(['获取结果,json格式:'=>$result]);
|
||||
//// 清理临时文件
|
||||
//unlink($tempFile);
|
||||
|
||||
(new AudioRevertLogic())->revert($client_id,$data);
|
||||
|
||||
//sleep(5);
|
||||
//} while (true);
|
||||
|
||||
//// 处理翻译结果,例如保存到数据库或返回给前端
|
||||
//Gateway::sendToClient($client_id, $result);
|
||||
// 处理接收到的语音数据
|
||||
// 这里需要将二进制数据转换为讯飞API所需的格式
|
||||
// 以下代码仅为示例,具体实现需要根据讯飞API文档进行调整
|
||||
$lfasrClient = new LfasrClient($appId, $secretKey);
|
||||
$lfasrClient->sendBinaryData($data, function ($result) use ($client_id) {
|
||||
// 处理讯飞API返回的实时转写结果
|
||||
// 将结果发送回客户端
|
||||
Gateway::sendToClient($client_id, json_encode(['type' => 'transcription', 'data' => $result]));
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -24,7 +24,9 @@
|
||||
"ext-json": "*",
|
||||
"ext-mbstring": "*",
|
||||
"doing/phpqrcode": "dev-master",
|
||||
"iflytekop/xfyun-sdk": "^2.0"
|
||||
"iflytekop/xfyun-sdk": "^2.0",
|
||||
"react/socket": "^1.15",
|
||||
"react/http": "^1.10"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
@@ -43,7 +45,7 @@
|
||||
"repositories": {
|
||||
"packagist": {
|
||||
"type": "composer",
|
||||
"url": "https://mirrors.aliyun.com/composer/"
|
||||
"url": "https://mirrors.cloud.tencent.com/composer/"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -198,8 +198,12 @@ return [
|
||||
],
|
||||
//讯飞录音接口
|
||||
'xunfei_record_config'=>[
|
||||
//优一
|
||||
'appid'=>'de02dasd',
|
||||
'APIKey'=>'31ce3f96c062958df3c426da4903540c',
|
||||
'secretKey'=>'MjcyOGE5ODg3ODM2ZWU5MTNiODc0M2Zl',
|
||||
|
||||
//测试
|
||||
//'appid'=>'d482af59',
|
||||
//'APIKey'=>'0d20dab630904ad8676d9075375a1914',
|
||||
//'secretKey'=>'Yjg0YTAyNmE5OGUwNDE3YjU4NWE4NmZh',
|
||||
|
||||
@@ -1,87 +1,9 @@
|
||||
<?php
|
||||
//use Xfyun\XfyunSDK;
|
||||
|
||||
class Client
|
||||
{
|
||||
private $ws;
|
||||
private $end_tag = "{\"end\": true}";
|
||||
// 示例使用
|
||||
$appId = '595f23df';
|
||||
$ts = '1512041814';
|
||||
$apiKey = 'd9f4aa7ea6d94faca62cd88a28fd5234';
|
||||
|
||||
public function __construct($app_id,$api_key)
|
||||
{
|
||||
$base_url = "ws://rtasr.xfyun.cn/v1/ws";
|
||||
$ts = strval(time());
|
||||
$tt = ($app_id . $ts);
|
||||
$md5 = hash('md5', $tt, true);
|
||||
$baseString = bin2hex($md5);
|
||||
$apiKey = $api_key;
|
||||
$signa = hash_hmac('sha1', $baseString, $apiKey, true);
|
||||
$signa = base64_encode($signa);
|
||||
$signa = urlencode($signa);
|
||||
|
||||
$this->ws = new \WebSocket\Client($base_url . "?appid=" . $app_id . "&ts=" . $ts . "&signa=" . $signa);
|
||||
}
|
||||
|
||||
public function send($file_path)
|
||||
{
|
||||
$file_object = fopen($file_path, 'rb');
|
||||
try {
|
||||
$index = 1;
|
||||
while (!feof($file_object)) {
|
||||
$chunk = fread($file_object, 1280);
|
||||
if (!$chunk) {
|
||||
break;
|
||||
}
|
||||
$this->ws->send($chunk);
|
||||
|
||||
$index += 1;
|
||||
sleep(0.04);
|
||||
}
|
||||
} finally {
|
||||
fclose($file_object);
|
||||
}
|
||||
|
||||
$this->ws->send($this->end_tag);
|
||||
echo "send end tag success";
|
||||
}
|
||||
|
||||
public function recv()
|
||||
{
|
||||
while ($this->ws->isConnected()) {
|
||||
$result = $this->ws->receive();
|
||||
if (strlen($result) == 0) {
|
||||
echo "receive result end";
|
||||
break;
|
||||
}
|
||||
$result_dict = json_decode($result, true);
|
||||
// 解析结果
|
||||
if ($result_dict["action"] == "started") {
|
||||
echo "handshake success, result: " . $result;
|
||||
}
|
||||
|
||||
if ($result_dict["action"] == "result") {
|
||||
$result_1 = $result_dict;
|
||||
echo "rtasr result: " . $result_1["data"];
|
||||
}
|
||||
|
||||
if ($result_dict["action"] == "error") {
|
||||
echo "rtasr error: " . $result;
|
||||
$this->ws->close();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function close()
|
||||
{
|
||||
$this->ws->close();
|
||||
echo "connection closed";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$app_id = 'de02dasd';
|
||||
$api_key = '31ce3f96c062958df3c426da4903540c';
|
||||
$file_path = "/www/wwwroot/digital_doctor/digital_doctor/public/iseTest.mp3";
|
||||
|
||||
$client = new Client($app_id,$api_key);
|
||||
$client->send($file_path);
|
||||
$signa = sign_V1($appId, $apiKey, $ts);
|
||||
echo $signa; // 输出: IrrzsJeOFk1NGfJHW6SkHUoN9CU=
|
||||
@@ -8,6 +8,7 @@ $baseDir = dirname($vendorDir);
|
||||
return array(
|
||||
'7b11c4dc42b3b3023073cb14e519683c' => $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php',
|
||||
'a0edc8309cc5e1d60e3047b5df6b7052' => $vendorDir . '/guzzlehttp/psr7/src/functions_include.php',
|
||||
'ad155f8f1cf0d418fe49e248db8c661b' => $vendorDir . '/react/promise/src/functions_include.php',
|
||||
'6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
|
||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||
'ffc1d7141d4fcbaeb47a6929f0811ed1' => $vendorDir . '/topthink/think-worker/src/command.php',
|
||||
|
||||
11
digital_doctor/vendor/composer/autoload_psr4.php
vendored
11
digital_doctor/vendor/composer/autoload_psr4.php
vendored
@@ -12,8 +12,15 @@ return array(
|
||||
'app\\' => array($baseDir . '/application'),
|
||||
'Workerman\\' => array($vendorDir . '/workerman/workerman'),
|
||||
'WebSocket\\' => array($vendorDir . '/textalk/websocket/lib'),
|
||||
'React\\Stream\\' => array($vendorDir . '/react/stream/src'),
|
||||
'React\\Socket\\' => array($vendorDir . '/react/socket/src'),
|
||||
'React\\Promise\\' => array($vendorDir . '/react/promise/src'),
|
||||
'React\\Http\\' => array($vendorDir . '/react/http/src'),
|
||||
'React\\EventLoop\\' => array($vendorDir . '/react/event-loop/src'),
|
||||
'React\\Dns\\' => array($vendorDir . '/react/dns/src'),
|
||||
'React\\Cache\\' => array($vendorDir . '/react/cache/src'),
|
||||
'Psr\\Log\\' => array($vendorDir . '/psr/log/Psr/Log'),
|
||||
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'),
|
||||
'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'),
|
||||
'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
|
||||
'Phrity\\Util\\' => array($vendorDir . '/phrity/util-errorhandler/src'),
|
||||
'Phrity\\Net\\' => array($vendorDir . '/phrity/net-uri/src'),
|
||||
@@ -25,4 +32,6 @@ return array(
|
||||
'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
|
||||
'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
|
||||
'GatewayWorker\\' => array($vendorDir . '/workerman/gateway-worker/src'),
|
||||
'Fig\\Http\\Message\\' => array($vendorDir . '/fig/http-message-util/src'),
|
||||
'Evenement\\' => array($vendorDir . '/evenement/evenement/src'),
|
||||
);
|
||||
|
||||
@@ -9,6 +9,7 @@ class ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3
|
||||
public static $files = array (
|
||||
'7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php',
|
||||
'a0edc8309cc5e1d60e3047b5df6b7052' => __DIR__ . '/..' . '/guzzlehttp/psr7/src/functions_include.php',
|
||||
'ad155f8f1cf0d418fe49e248db8c661b' => __DIR__ . '/..' . '/react/promise/src/functions_include.php',
|
||||
'6e3fae29631ef280660b3cdad06f25a8' => __DIR__ . '/..' . '/symfony/deprecation-contracts/function.php',
|
||||
'37a3dc5111fe8f707ab4c132ef1dbc62' => __DIR__ . '/..' . '/guzzlehttp/guzzle/src/functions_include.php',
|
||||
'ffc1d7141d4fcbaeb47a6929f0811ed1' => __DIR__ . '/..' . '/topthink/think-worker/src/command.php',
|
||||
@@ -33,6 +34,16 @@ class ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3
|
||||
'Workerman\\' => 10,
|
||||
'WebSocket\\' => 10,
|
||||
),
|
||||
'R' =>
|
||||
array (
|
||||
'React\\Stream\\' => 13,
|
||||
'React\\Socket\\' => 13,
|
||||
'React\\Promise\\' => 14,
|
||||
'React\\Http\\' => 11,
|
||||
'React\\EventLoop\\' => 16,
|
||||
'React\\Dns\\' => 10,
|
||||
'React\\Cache\\' => 12,
|
||||
),
|
||||
'P' =>
|
||||
array (
|
||||
'Psr\\Log\\' => 8,
|
||||
@@ -58,6 +69,14 @@ class ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3
|
||||
'GuzzleHttp\\' => 11,
|
||||
'GatewayWorker\\' => 14,
|
||||
),
|
||||
'F' =>
|
||||
array (
|
||||
'Fig\\Http\\Message\\' => 17,
|
||||
),
|
||||
'E' =>
|
||||
array (
|
||||
'Evenement\\' => 10,
|
||||
),
|
||||
);
|
||||
|
||||
public static $prefixDirsPsr4 = array (
|
||||
@@ -85,14 +104,42 @@ class ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/textalk/websocket/lib',
|
||||
),
|
||||
'React\\Stream\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/stream/src',
|
||||
),
|
||||
'React\\Socket\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/socket/src',
|
||||
),
|
||||
'React\\Promise\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/promise/src',
|
||||
),
|
||||
'React\\Http\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/http/src',
|
||||
),
|
||||
'React\\EventLoop\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/event-loop/src',
|
||||
),
|
||||
'React\\Dns\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/dns/src',
|
||||
),
|
||||
'React\\Cache\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/react/cache/src',
|
||||
),
|
||||
'Psr\\Log\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/psr/log/Psr/Log',
|
||||
),
|
||||
'Psr\\Http\\Message\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/psr/http-message/src',
|
||||
1 => __DIR__ . '/..' . '/psr/http-factory/src',
|
||||
0 => __DIR__ . '/..' . '/psr/http-factory/src',
|
||||
1 => __DIR__ . '/..' . '/psr/http-message/src',
|
||||
),
|
||||
'Psr\\Http\\Client\\' =>
|
||||
array (
|
||||
@@ -138,6 +185,14 @@ class ComposerStaticInit296bd8a1d28e39d56dcd80ce7be249f3
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/workerman/gateway-worker/src',
|
||||
),
|
||||
'Fig\\Http\\Message\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/fig/http-message-util/src',
|
||||
),
|
||||
'Evenement\\' =>
|
||||
array (
|
||||
0 => __DIR__ . '/..' . '/evenement/evenement/src',
|
||||
),
|
||||
);
|
||||
|
||||
public static $classMap = array (
|
||||
|
||||
627
digital_doctor/vendor/composer/installed.json
vendored
627
digital_doctor/vendor/composer/installed.json
vendored
@@ -54,6 +54,105 @@
|
||||
},
|
||||
"install-path": "../doing/phpqrcode"
|
||||
},
|
||||
{
|
||||
"name": "evenement/evenement",
|
||||
"version": "v3.0.2",
|
||||
"version_normalized": "3.0.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/igorw/evenement.git",
|
||||
"reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/evenement/evenement/v3.0.2/evenement-evenement-v3.0.2.zip",
|
||||
"reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9 || ^6"
|
||||
},
|
||||
"time": "2023-08-08T05:53:35+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Evenement\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Igor Wiedler",
|
||||
"email": "igor@wiedler.ch"
|
||||
}
|
||||
],
|
||||
"description": "Événement is a very simple event dispatching library for PHP",
|
||||
"keywords": [
|
||||
"event-dispatcher",
|
||||
"event-emitter"
|
||||
],
|
||||
"install-path": "../evenement/evenement"
|
||||
},
|
||||
{
|
||||
"name": "fig/http-message-util",
|
||||
"version": "1.1.5",
|
||||
"version_normalized": "1.1.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-fig/http-message-util.git",
|
||||
"reference": "9d94dc0154230ac39e5bf89398b324a86f63f765"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/fig/http-message-util/1.1.5/fig-http-message-util-1.1.5.zip",
|
||||
"reference": "9d94dc0154230ac39e5bf89398b324a86f63f765",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^5.3 || ^7.0 || ^8.0"
|
||||
},
|
||||
"suggest": {
|
||||
"psr/http-message": "The package containing the PSR-7 interfaces"
|
||||
},
|
||||
"time": "2020-11-24T22:02:12+00:00",
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.1.x-dev"
|
||||
}
|
||||
},
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Fig\\Http\\Message\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP-FIG",
|
||||
"homepage": "https://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Utility classes and constants for use with PSR-7 (psr/http-message)",
|
||||
"keywords": [
|
||||
"http",
|
||||
"http-message",
|
||||
"psr",
|
||||
"psr-7",
|
||||
"request",
|
||||
"response"
|
||||
],
|
||||
"install-path": "../fig/http-message-util"
|
||||
},
|
||||
{
|
||||
"name": "guzzlehttp/guzzle",
|
||||
"version": "7.8.1",
|
||||
@@ -897,6 +996,534 @@
|
||||
"description": "A polyfill for getallheaders.",
|
||||
"install-path": "../ralouphie/getallheaders"
|
||||
},
|
||||
{
|
||||
"name": "react/cache",
|
||||
"version": "v1.2.0",
|
||||
"version_normalized": "1.2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/cache.git",
|
||||
"reference": "d47c472b64aa5608225f47965a484b75c7817d5b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/cache/v1.2.0/react-cache-v1.2.0.zip",
|
||||
"reference": "d47c472b64aa5608225f47965a484b75c7817d5b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0",
|
||||
"react/promise": "^3.0 || ^2.0 || ^1.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35"
|
||||
},
|
||||
"time": "2022-11-30T15:59:55+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"React\\Cache\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "Async, Promise-based cache interface for ReactPHP",
|
||||
"keywords": [
|
||||
"cache",
|
||||
"caching",
|
||||
"promise",
|
||||
"reactphp"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/cache"
|
||||
},
|
||||
{
|
||||
"name": "react/dns",
|
||||
"version": "v1.13.0",
|
||||
"version_normalized": "1.13.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/dns.git",
|
||||
"reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/dns/v1.13.0/react-dns-v1.13.0.zip",
|
||||
"reference": "eb8ae001b5a455665c89c1df97f6fb682f8fb0f5",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0",
|
||||
"react/cache": "^1.0 || ^0.6 || ^0.5",
|
||||
"react/event-loop": "^1.2",
|
||||
"react/promise": "^3.2 || ^2.7 || ^1.2.1"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36",
|
||||
"react/async": "^4.3 || ^3 || ^2",
|
||||
"react/promise-timer": "^1.11"
|
||||
},
|
||||
"time": "2024-06-13T14:18:03+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"React\\Dns\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "Async DNS resolver for ReactPHP",
|
||||
"keywords": [
|
||||
"async",
|
||||
"dns",
|
||||
"dns-resolver",
|
||||
"reactphp"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/dns"
|
||||
},
|
||||
{
|
||||
"name": "react/event-loop",
|
||||
"version": "v1.5.0",
|
||||
"version_normalized": "1.5.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/event-loop.git",
|
||||
"reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/event-loop/v1.5.0/react-event-loop-v1.5.0.zip",
|
||||
"reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-pcntl": "For signal handling support when using the StreamSelectLoop"
|
||||
},
|
||||
"time": "2023-11-13T13:48:05+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"React\\EventLoop\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.",
|
||||
"keywords": [
|
||||
"asynchronous",
|
||||
"event-loop"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/event-loop"
|
||||
},
|
||||
{
|
||||
"name": "react/http",
|
||||
"version": "v1.10.0",
|
||||
"version_normalized": "1.10.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/http.git",
|
||||
"reference": "8111281ee57f22b7194f5dba225e609ba7ce4d20"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/http/v1.10.0/react-http-v1.10.0.zip",
|
||||
"reference": "8111281ee57f22b7194f5dba225e609ba7ce4d20",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"evenement/evenement": "^3.0 || ^2.0 || ^1.0",
|
||||
"fig/http-message-util": "^1.1",
|
||||
"php": ">=5.3.0",
|
||||
"psr/http-message": "^1.0",
|
||||
"react/event-loop": "^1.2",
|
||||
"react/promise": "^3 || ^2.3 || ^1.2.1",
|
||||
"react/socket": "^1.12",
|
||||
"react/stream": "^1.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"clue/http-proxy-react": "^1.8",
|
||||
"clue/reactphp-ssh-proxy": "^1.4",
|
||||
"clue/socks-react": "^1.4",
|
||||
"phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36",
|
||||
"react/async": "^4 || ^3 || ^2",
|
||||
"react/promise-stream": "^1.4",
|
||||
"react/promise-timer": "^1.9"
|
||||
},
|
||||
"time": "2024-03-27T17:20:46+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"React\\Http\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "Event-driven, streaming HTTP client and server implementation for ReactPHP",
|
||||
"keywords": [
|
||||
"async",
|
||||
"client",
|
||||
"event-driven",
|
||||
"http",
|
||||
"http client",
|
||||
"http server",
|
||||
"https",
|
||||
"psr-7",
|
||||
"reactphp",
|
||||
"server",
|
||||
"streaming"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/http"
|
||||
},
|
||||
{
|
||||
"name": "react/promise",
|
||||
"version": "v3.2.0",
|
||||
"version_normalized": "3.2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/promise.git",
|
||||
"reference": "8a164643313c71354582dc850b42b33fa12a4b63"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/promise/v3.2.0/react-promise-v3.2.0.zip",
|
||||
"reference": "8a164643313c71354582dc850b42b33fa12a4b63",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpstan/phpstan": "1.10.39 || 1.4.10",
|
||||
"phpunit/phpunit": "^9.6 || ^7.5"
|
||||
},
|
||||
"time": "2024-05-24T10:39:05+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/functions_include.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"React\\Promise\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "A lightweight implementation of CommonJS Promises/A for PHP",
|
||||
"keywords": [
|
||||
"promise",
|
||||
"promises"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/promise"
|
||||
},
|
||||
{
|
||||
"name": "react/socket",
|
||||
"version": "v1.15.0",
|
||||
"version_normalized": "1.15.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/socket.git",
|
||||
"reference": "216d3aec0b87f04a40ca04f481e6af01bdd1d038"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/socket/v1.15.0/react-socket-v1.15.0.zip",
|
||||
"reference": "216d3aec0b87f04a40ca04f481e6af01bdd1d038",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"evenement/evenement": "^3.0 || ^2.0 || ^1.0",
|
||||
"php": ">=5.3.0",
|
||||
"react/dns": "^1.11",
|
||||
"react/event-loop": "^1.2",
|
||||
"react/promise": "^3 || ^2.6 || ^1.2.1",
|
||||
"react/stream": "^1.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36",
|
||||
"react/async": "^4 || ^3 || ^2",
|
||||
"react/promise-stream": "^1.4",
|
||||
"react/promise-timer": "^1.10"
|
||||
},
|
||||
"time": "2023-12-15T11:02:10+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"React\\Socket\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP",
|
||||
"keywords": [
|
||||
"Connection",
|
||||
"Socket",
|
||||
"async",
|
||||
"reactphp",
|
||||
"stream"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/socket"
|
||||
},
|
||||
{
|
||||
"name": "react/stream",
|
||||
"version": "v1.4.0",
|
||||
"version_normalized": "1.4.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/reactphp/stream.git",
|
||||
"reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://mirrors.huaweicloud.com/repository/php/react/stream/v1.4.0/react-stream-v1.4.0.zip",
|
||||
"reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"evenement/evenement": "^3.0 || ^2.0 || ^1.0",
|
||||
"php": ">=5.3.8",
|
||||
"react/event-loop": "^1.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"clue/stream-filter": "~1.2",
|
||||
"phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36"
|
||||
},
|
||||
"time": "2024-06-11T12:45:25+00:00",
|
||||
"type": "library",
|
||||
"installation-source": "dist",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"React\\Stream\\": "src/"
|
||||
}
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Christian Lück",
|
||||
"email": "christian@clue.engineering",
|
||||
"homepage": "https://clue.engineering/"
|
||||
},
|
||||
{
|
||||
"name": "Cees-Jan Kiewiet",
|
||||
"email": "reactphp@ceesjankiewiet.nl",
|
||||
"homepage": "https://wyrihaximus.net/"
|
||||
},
|
||||
{
|
||||
"name": "Jan Sorgalla",
|
||||
"email": "jsorgalla@gmail.com",
|
||||
"homepage": "https://sorgalla.com/"
|
||||
},
|
||||
{
|
||||
"name": "Chris Boden",
|
||||
"email": "cboden@gmail.com",
|
||||
"homepage": "https://cboden.dev/"
|
||||
}
|
||||
],
|
||||
"description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP",
|
||||
"keywords": [
|
||||
"event-driven",
|
||||
"io",
|
||||
"non-blocking",
|
||||
"pipe",
|
||||
"reactphp",
|
||||
"readable",
|
||||
"stream",
|
||||
"writable"
|
||||
],
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://opencollective.com/reactphp",
|
||||
"type": "open_collective"
|
||||
}
|
||||
],
|
||||
"install-path": "../react/stream"
|
||||
},
|
||||
{
|
||||
"name": "symfony/deprecation-contracts",
|
||||
"version": "v2.5.3",
|
||||
|
||||
85
digital_doctor/vendor/composer/installed.php
vendored
85
digital_doctor/vendor/composer/installed.php
vendored
@@ -5,7 +5,7 @@
|
||||
'type' => 'project',
|
||||
'install_path' => __DIR__ . '/../../',
|
||||
'aliases' => array(),
|
||||
'reference' => '0f25829d6a3abf7353ffa5d5bf4e01aa18dbbeaa',
|
||||
'reference' => '44d6a1df3c31fcf14c6c0dffd72b11b14c6d40bf',
|
||||
'name' => 'topthink/think',
|
||||
'dev' => true,
|
||||
),
|
||||
@@ -21,6 +21,24 @@
|
||||
'reference' => '600baab04cd4dfe2b307a321775ec5a66e330560',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'evenement/evenement' => array(
|
||||
'pretty_version' => 'v3.0.2',
|
||||
'version' => '3.0.2.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../evenement/evenement',
|
||||
'aliases' => array(),
|
||||
'reference' => '0a16b0d71ab13284339abb99d9d2bd813640efbc',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'fig/http-message-util' => array(
|
||||
'pretty_version' => '1.1.5',
|
||||
'version' => '1.1.5.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../fig/http-message-util',
|
||||
'aliases' => array(),
|
||||
'reference' => '9d94dc0154230ac39e5bf89398b324a86f63f765',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'guzzlehttp/guzzle' => array(
|
||||
'pretty_version' => '7.8.1',
|
||||
'version' => '7.8.1.0',
|
||||
@@ -156,6 +174,69 @@
|
||||
'reference' => '120b605dfeb996808c31b6477290a714d356e822',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/cache' => array(
|
||||
'pretty_version' => 'v1.2.0',
|
||||
'version' => '1.2.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/cache',
|
||||
'aliases' => array(),
|
||||
'reference' => 'd47c472b64aa5608225f47965a484b75c7817d5b',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/dns' => array(
|
||||
'pretty_version' => 'v1.13.0',
|
||||
'version' => '1.13.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/dns',
|
||||
'aliases' => array(),
|
||||
'reference' => 'eb8ae001b5a455665c89c1df97f6fb682f8fb0f5',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/event-loop' => array(
|
||||
'pretty_version' => 'v1.5.0',
|
||||
'version' => '1.5.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/event-loop',
|
||||
'aliases' => array(),
|
||||
'reference' => 'bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/http' => array(
|
||||
'pretty_version' => 'v1.10.0',
|
||||
'version' => '1.10.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/http',
|
||||
'aliases' => array(),
|
||||
'reference' => '8111281ee57f22b7194f5dba225e609ba7ce4d20',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/promise' => array(
|
||||
'pretty_version' => 'v3.2.0',
|
||||
'version' => '3.2.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/promise',
|
||||
'aliases' => array(),
|
||||
'reference' => '8a164643313c71354582dc850b42b33fa12a4b63',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/socket' => array(
|
||||
'pretty_version' => 'v1.15.0',
|
||||
'version' => '1.15.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/socket',
|
||||
'aliases' => array(),
|
||||
'reference' => '216d3aec0b87f04a40ca04f481e6af01bdd1d038',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'react/stream' => array(
|
||||
'pretty_version' => 'v1.4.0',
|
||||
'version' => '1.4.0.0',
|
||||
'type' => 'library',
|
||||
'install_path' => __DIR__ . '/../react/stream',
|
||||
'aliases' => array(),
|
||||
'reference' => '1e5b0acb8fe55143b5b426817155190eb6f5b18d',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'symfony/deprecation-contracts' => array(
|
||||
'pretty_version' => 'v2.5.3',
|
||||
'version' => '2.5.3.0',
|
||||
@@ -189,7 +270,7 @@
|
||||
'type' => 'project',
|
||||
'install_path' => __DIR__ . '/../../',
|
||||
'aliases' => array(),
|
||||
'reference' => '0f25829d6a3abf7353ffa5d5bf4e01aa18dbbeaa',
|
||||
'reference' => '44d6a1df3c31fcf14c6c0dffd72b11b14c6d40bf',
|
||||
'dev_requirement' => false,
|
||||
),
|
||||
'topthink/think-installer' => array(
|
||||
|
||||
Reference in New Issue
Block a user