1
0
mirror of https://github.com/danog/MadelineProto.git synced 2024-11-30 07:38:58 +01:00
This commit is contained in:
Daniil Gentili 2023-08-18 21:15:09 +02:00
parent 0a98837e28
commit d52b51963a
Signed by: danog
GPG Key ID: 8C1BE3B34B230CA7
7 changed files with 23 additions and 20 deletions

View File

@ -73,7 +73,8 @@
"amphp/http-server": "^3", "amphp/http-server": "^3",
"leproxy/leproxy": "^0.2.2", "leproxy/leproxy": "^0.2.2",
"revolt/event-loop-adapter-react": "^1", "revolt/event-loop-adapter-react": "^1",
"dg/bypass-finals": "dev-master" "dg/bypass-finals": "dev-master",
"roave/backward-compatibility-check": "^8.3"
}, },
"suggest": { "suggest": {
"ext-primemodule": "Install the primemodule and FFI extensions to speed up MadelineProto (https://prime.madelineproto.xyz)", "ext-primemodule": "Install the primemodule and FFI extensions to speed up MadelineProto (https://prime.madelineproto.xyz)",

2
docs

@ -1 +1 @@
Subproject commit f33c74ea97367f14d30d2c7c32410d02f53e9453 Subproject commit eee6d56e9f07205b5b85b09e1678d54d047c0b63

View File

@ -127,7 +127,7 @@
"extensionRequiredInstallWithCustomInstructions": "برای نصب آن، دستورالعمل ها را در %s دنبال کنید.", "extensionRequiredInstallWithCustomInstructions": "برای نصب آن، دستورالعمل ها را در %s دنبال کنید.",
"extensionRequired": "مدلین برای اجرا نیاز به افزونه %s دارد. %s", "extensionRequired": "مدلین برای اجرا نیاز به افزونه %s دارد. %s",
"manualAdminActionRequired": "!!!!!!!!! فعالیت دستی ادمین سیستم نیاز است !!!!!!!!!", "manualAdminActionRequired": "!!!!!!!!! فعالیت دستی ادمین سیستم نیاز است !!!!!!!!!",
"must_have_declare_types": "به دلایل عملکردی و اجرایی، اولین دستور فایل ایونت‌هندلر باید declare(strict_types=1); باشد", "must_have_declare_types": "به دلایل عملکردی و اجرایی، اولین دستور فایل ایونت‌هندلر باید دستور مقابل باشد: \"declare(strict_types=1);\"",
"do_not_delete_MadelineProto.log": "فایل MadelineProto.log هیچوقت نباید حذف شود، لطفا به جای حذف، بیشترین اندازه دلخواه را در تنظیمات مشخص کنید!", "do_not_delete_MadelineProto.log": "فایل MadelineProto.log هیچوقت نباید حذف شود، لطفا به جای حذف، بیشترین اندازه دلخواه را در تنظیمات مشخص کنید!",
"do_not_remove_MadelineProto.log_phar": "لطفا madeline.phar یا madeline.php را حذف نکنید، در غیراینصورت مدلین‌پروتو crash خواهد کرد. در صورت داشتن هرگونه مشکل با مدلین‌پروتو، آن را به https://github.com/danog/MadelineProto یا https://t.me/pwrtelegramgroup گزارش کنید", "do_not_remove_MadelineProto.log_phar": "لطفا madeline.phar یا madeline.php را حذف نکنید، در غیراینصورت مدلین‌پروتو crash خواهد کرد. در صورت داشتن هرگونه مشکل با مدلین‌پروتو، آن را به https://github.com/danog/MadelineProto یا https://t.me/pwrtelegramgroup گزارش کنید",
"do_not_use_deprecated_function": "تابع %s منسوخ شده، لطفا به جای آن از %s استفاده کنید", "do_not_use_deprecated_function": "تابع %s منسوخ شده، لطفا به جای آن از %s استفاده کنید",
@ -153,5 +153,7 @@
"waveform_value": "مقدار عددیwaveform باید بین 0 تا 31 باشد!", "waveform_value": "مقدار عددیwaveform باید بین 0 تا 31 باشد!",
"could_not_convert_object": "نمیتوان مقدار آبجکت تایپ %s را تبدیل کرد", "could_not_convert_object": "نمیتوان مقدار آبجکت تایپ %s را تبدیل کرد",
"mmapErrorPart1": "بیشترین مقدار حافظه تخصیص داده شده (mmap ) پر شده است (%s ) : لطفا از داخل کانفیگ های مربوط به کرنل مقدار vm.max_map_count را به مقدار 262144 افزایش دهیدتا مشکل رفع گردد.", "mmapErrorPart1": "بیشترین مقدار حافظه تخصیص داده شده (mmap ) پر شده است (%s ) : لطفا از داخل کانفیگ های مربوط به کرنل مقدار vm.max_map_count را به مقدار 262144 افزایش دهیدتا مشکل رفع گردد.",
"could_not_connect_to_MadelineProto": "نمی توان به MadelineProto متصل شد، لطفاً proc_open را فعال کنید یا بازنویسی مسیر وب سرور را غیرفعال کنید تا مشکل رفع شود!" "could_not_connect_to_MadelineProto": "نمی توان به مدلین‌پروتو متصل شد، لطفاً proc_open را فعال کنید یا بازنویسی مسیر وب سرور را غیرفعال کنید تا مشکل رفع شود! اگر این کار را کردید، مطمئن شوید که نسخه PHP در کامندلاین و وبسرور دقیقا یکی است (ورژن یکسان، افزونه‌های یکسان و...) و برای کسب اطلاعات بیشتر راجب اروری که مانع شروع IPC server میشود، فایل MadelineProto.log را بررسی کنید.",
"do_not_use_yield": "مدلین‌پروتو نسخه 8 نیازی به yield در توابع async ندارد و حتی آن را پشتیبانی هم نمیکند، شما باید تمام کلمات کلیدی yield را که قبلا در اجرای توابع async به کار میرفتند حذف کنید",
"windows_warning": "برای کاربران ویندوزی: لطفا اگر این ناموفق بود به لینوکس کوچ کنید. همچنین میتوانید تلاش کنید تا تنظیمات فایروال خود را تغییر دهید تا به تمام پروسه‌های PHP اجازه ساخت سوکت را بدهید (100 درصد تغییر سیستم به لینوکس آسان‌تر است، مدلین‌پروتو در لینوکس خارج از باکس کار میکند، نیازی به تغییر ندارد)"
} }

View File

@ -19,7 +19,6 @@ namespace danog\MadelineProto\Db;
use Amp\Sync\LocalMutex; use Amp\Sync\LocalMutex;
use Revolt\EventLoop; use Revolt\EventLoop;
use Traversable; use Traversable;
use Webmozart\Assert\Assert;
/** @internal */ /** @internal */
final class CacheContainer final class CacheContainer

View File

@ -25,7 +25,7 @@ use danog\MadelineProto\MTProto;
final class ChannelMessage extends Message final class ChannelMessage extends Message
{ {
/** View counter */ /** View counter */
public readonly int $views; public readonly ?int $views;
/** Author of the post, if signatures are enabled */ /** Author of the post, if signatures are enabled */
public readonly ?string $signature; public readonly ?string $signature;
@ -37,7 +37,7 @@ final class ChannelMessage extends Message
) { ) {
parent::__construct($API, $rawMessage, $info); parent::__construct($API, $rawMessage, $info);
$this->views = $rawMessage['views']; $this->views = $rawMessage['views'] ?? null;
$this->signature = $rawMessage['post_author'] ?? null; $this->signature = $rawMessage['post_author'] ?? null;
} }
} }

View File

@ -141,7 +141,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'ئێمە لە %s داین، نزیکترین DC %d ە.', 'nearest_dc' => 'ئێمە لە %s داین، نزیکترین DC %d ە.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',
@ -306,7 +306,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'We\'re in %s, nearest DC is %d.', 'nearest_dc' => 'We\'re in %s, nearest DC is %d.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',
@ -403,7 +403,7 @@ If you intentionally deleted this account, ignore this message.',
'call_error_3' => 'نمیتوان تماس %s را یافت و کامل کرد', 'call_error_3' => 'نمیتوان تماس %s را یافت و کامل کرد',
'cli_need_dl.php_link' => 'لطفا هنگام استفاده از getDownloadLink روی CLI (محیط ترمینال)، لینک اسکریپت دانلود را مشخص کنید!', 'cli_need_dl.php_link' => 'لطفا هنگام استفاده از getDownloadLink روی CLI (محیط ترمینال)، لینک اسکریپت دانلود را مشخص کنید!',
'constructor_not_found' => 'سازنده برای این نوع پیدا نشد: ', 'constructor_not_found' => 'سازنده برای این نوع پیدا نشد: ',
'could_not_connect_to_MadelineProto' => 'نمی توان به MadelineProto متصل شد، لطفاً proc_open را فعال کنید یا بازنویسی مسیر وب سرور را غیرفعال کنید تا مشکل رفع شود!', 'could_not_connect_to_MadelineProto' => 'نمی توان به مدلین‌پروتو متصل شد، لطفاً proc_open را فعال کنید یا بازنویسی مسیر وب سرور را غیرفعال کنید تا مشکل رفع شود! اگر این کار را کردید، مطمئن شوید که نسخه PHP در کامندلاین و وبسرور دقیقا یکی است (ورژن یکسان، افزونه‌های یکسان و...) و برای کسب اطلاعات بیشتر راجب اروری که مانع شروع IPC server میشود، فایل MadelineProto.log را بررسی کنید.',
'could_not_convert_object' => 'نمیتوان مقدار آبجکت تایپ %s را تبدیل کرد', 'could_not_convert_object' => 'نمیتوان مقدار آبجکت تایپ %s را تبدیل کرد',
'deserialization_error' => 'مشکلی در سریال‌زدایی پیش آمد', 'deserialization_error' => 'مشکلی در سریال‌زدایی پیش آمد',
'dl.php_check_logs_make_sure_session_running' => 'هم ربات ایونت‌هندلر مدلین‌پروتو مرتبط و هم سرور IPC مدلین‌پروتو آفلاین هستند، لطفا لاگ‌ها را بررسی کنید و مطمئن شوید حداقل یکی از آنها در حال اجراست!', 'dl.php_check_logs_make_sure_session_running' => 'هم ربات ایونت‌هندلر مدلین‌پروتو مرتبط و هم سرور IPC مدلین‌پروتو آفلاین هستند، لطفا لاگ‌ها را بررسی کنید و مطمئن شوید حداقل یکی از آنها در حال اجراست!',
@ -414,7 +414,7 @@ If you intentionally deleted this account, ignore this message.',
'do_not_use_blocking_function' => 'به دلایل عملکردی و اجرایی، ایونت‌هندلرها نباید از فانکشن %s که async نیست استفاده کنند، لطفا به جای آن از %s استفاده کنید', 'do_not_use_blocking_function' => 'به دلایل عملکردی و اجرایی، ایونت‌هندلرها نباید از فانکشن %s که async نیست استفاده کنند، لطفا به جای آن از %s استفاده کنید',
'do_not_use_deprecated_function' => 'تابع %s منسوخ شده، لطفا به جای آن از %s استفاده کنید', 'do_not_use_deprecated_function' => 'تابع %s منسوخ شده، لطفا به جای آن از %s استفاده کنید',
'do_not_use_non_root_require_in_event_handler' => 'به دلایل عملکردی و اجرایی، شما نباید از require یا include داخل کلس ایونت‌هندلر استفاده کنید، فقط require های سطح root مجاز هستند.', 'do_not_use_non_root_require_in_event_handler' => 'به دلایل عملکردی و اجرایی، شما نباید از require یا include داخل کلس ایونت‌هندلر استفاده کنید، فقط require های سطح root مجاز هستند.',
'do_not_use_yield' => 'MadelineProto 8 does not require or support the use of yield in async functions, you must remove all yield keywords previously used for async function calls', 'do_not_use_yield' => 'مدلین‌پروتو نسخه 8 نیازی به yield در توابع async ندارد و حتی آن را پشتیبانی هم نمیکند، شما باید تمام کلمات کلیدی yield را که قبلا در اجرای توابع async به کار میرفتند حذف کنید',
'done' => 'انجام شد!', 'done' => 'انجام شد!',
'encode_double_error' => 'نمی‌توان به درستی double را رمزنگاری (انکد) کرد', 'encode_double_error' => 'نمی‌توان به درستی double را رمزنگاری (انکد) کرد',
'extensionRecommended' => 'هشدار: افزونه %s نصب نشده است. لطفا برای افزایش سرعت مدلین‌پروتو آن را نصب کنید!', 'extensionRecommended' => 'هشدار: افزونه %s نصب نشده است. لطفا برای افزایش سرعت مدلین‌پروتو آن را نصب کنید!',
@ -471,7 +471,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'برای حل کردن مشکل، کامند مقابل را با دسترسی root اجرا کنید: %s', 'mmapErrorPart2' => 'برای حل کردن مشکل، کامند مقابل را با دسترسی root اجرا کنید: %s',
'mmapErrorPart3' => 'برای تداوم تغییر در طول راه‌اندازی دوباره: %s', 'mmapErrorPart3' => 'برای تداوم تغییر در طول راه‌اندازی دوباره: %s',
'mmapErrorPart4' => 'روی ویندوز و WSL، افزایش سایز pagefile ممکن است کمک کند؛ اگر مشکل پافشاری کرد لطفا سیستم‌عامل خود را به لینوکس تغییر دهید.', 'mmapErrorPart4' => 'روی ویندوز و WSL، افزایش سایز pagefile ممکن است کمک کند؛ اگر مشکل پافشاری کرد لطفا سیستم‌عامل خود را به لینوکس تغییر دهید.',
'must_have_declare_types' => 'به دلایل عملکردی و اجرایی، اولین دستور فایل ایونت‌هندلر باید declare(strict_types=1); باشد', 'must_have_declare_types' => 'به دلایل عملکردی و اجرایی، اولین دستور فایل ایونت‌هندلر باید دستور مقابل باشد: "declare(strict_types=1);"',
'nearest_dc' => 'ما در %s هستیم، نزدیک ترین دیتاسنتر %d است.', 'nearest_dc' => 'ما در %s هستیم، نزدیک ترین دیتاسنتر %d است.',
'need_dl.php' => 'اسکریپت دانلود پیشفرض تولید نشد (%s)، لطفا یک فایل dl.php بسیازید و این محتوا را در آن قرار دهید: %s سپس لینک آن فایل را به ورودی دوم getDownloadLink بدهید', 'need_dl.php' => 'اسکریپت دانلود پیشفرض تولید نشد (%s)، لطفا یک فایل dl.php بسیازید و این محتوا را در آن قرار دهید: %s سپس لینک آن فایل را به ورودی دوم getDownloadLink بدهید',
'noReportPeers' => 'هشدار: هیچ peerی به عنوان peer گزارشات تنظیم نشده، لطفا متود زیر را به ایونت هندلر اضافه کنید', 'noReportPeers' => 'هشدار: هیچ peerی به عنوان peer گزارشات تنظیم نشده، لطفا متود زیر را به ایونت هندلر اضافه کنید',
@ -514,7 +514,7 @@ If you intentionally deleted this account, ignore this message.',
'value_smaller_than_9223372036854775808' => 'مقدار داده شده‌ی %s کمتر از -9223372036854775808 است', 'value_smaller_than_9223372036854775808' => 'مقدار داده شده‌ی %s کمتر از -9223372036854775808 است',
'waveform_must_have_100_values' => 'آرایه waveformباید 100 مقدار داشته باشد(سایز مورد انتظار 100 است ) !', 'waveform_must_have_100_values' => 'آرایه waveformباید 100 مقدار داشته باشد(سایز مورد انتظار 100 است ) !',
'waveform_value' => 'مقدار عددیwaveform باید بین 0 تا 31 باشد!', 'waveform_value' => 'مقدار عددیwaveform باید بین 0 تا 31 باشد!',
'windows_warning' => 'For Windows users: please switch to Linux if this fails. You can also try modifying the firewall settings to allow all PHP processes to create sockets (it\'s 100% easier to just switch to Linux, on Linux MadelineProto just works out of the box, no changes needed)', 'windows_warning' => 'برای کاربران ویندوزی: لطفا اگر این ناموفق بود به لینوکس کوچ کنید. همچنین میتوانید تلاش کنید تا تنظیمات فایروال خود را تغییر دهید تا به تمام پروسه‌های PHP اجازه ساخت سوکت را بدهید (100 درصد تغییر سیستم به لینوکس آسان‌تر است، مدلین‌پروتو در لینوکس خارج از باکس کار میکند، نیازی به تغییر ندارد)',
], ],
'fr' => 'fr' =>
[ [
@ -636,7 +636,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'We\'re in %s, nearest DC is %d.', 'nearest_dc' => 'We\'re in %s, nearest DC is %d.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',
@ -801,7 +801,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'אנחנו ב %s, חוות שרתי ה DC הקרובה היא %d.', 'nearest_dc' => 'אנחנו ב %s, חוות שרתי ה DC הקרובה היא %d.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',
@ -1131,7 +1131,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'Вы в %s, ближайший ДЦ: %d.', 'nearest_dc' => 'Вы в %s, ближайший ДЦ: %d.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',
@ -1296,7 +1296,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'Biz %s ichidamiz, eng yaqin shahar %d.', 'nearest_dc' => 'Biz %s ichidamiz, eng yaqin shahar %d.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',
@ -1463,7 +1463,7 @@ If you intentionally deleted this account, ignore this message.',
'mmapErrorPart2' => 'To fix, run the following command as root: %s', 'mmapErrorPart2' => 'To fix, run the following command as root: %s',
'mmapErrorPart3' => 'To persist the change across reboots: %s', 'mmapErrorPart3' => 'To persist the change across reboots: %s',
'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.', 'mmapErrorPart4' => 'On Windows and WSL, increasing the size of the pagefile might help; please switch to native Linux if the issue persists.',
'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be declare(strict_types=1);', 'must_have_declare_types' => 'for performance reasons, the first statement of an event handler file must be "declare(strict_types=1);"',
'nearest_dc' => 'We\'re in %s, nearest DC is %d.', 'nearest_dc' => 'We\'re in %s, nearest DC is %d.',
'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink', 'need_dl.php' => 'Could not generate default download script (%s), please create a dl.php file with the following content: %s and pass its URL to the second parameter of getDownloadLink',
'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler', 'noReportPeers' => 'Warning: no report peers are set, please add the following method to your event handler',

View File

@ -535,10 +535,11 @@ final class VoIPController
if (!$it) { if (!$it) {
EventLoop::queue(Logger::log(...), "Starting conversion fiber..."); EventLoop::queue(Logger::log(...), "Starting conversion fiber...");
$pipe = new Pipe(4096); $pipe = new Pipe(4096);
EventLoop::queue(function () use ($f, $pipe) { EventLoop::queue(function () use ($f, $pipe): void {
try { try {
Ogg::convert($f, $pipe->getSink(), $this->cancellation); Ogg::convert($f, $pipe->getSink(), $this->cancellation);
} catch (CancelledException) {} } catch (CancelledException) {
}
}); });
$it = new Ogg($pipe->getSource()); $it = new Ogg($pipe->getSource());
} }