. * * @author Daniil Gentili * @copyright 2016-2023 Daniil Gentili * @license https://opensource.org/licenses/AGPL-3.0 AGPLv3 * @link https://docs.madelineproto.xyz MadelineProto documentation */ namespace danog\MadelineProto; if (class_exists(VoIPServerConfig::class)) { return; } /** * Manages storage of VoIP server config. * * @internal */ final class VoIPServerConfig { /** * The configuration. * */ private static array $_config = []; /** * The default configuration. * */ private static array $_configDefault = []; /** * Update shared call settings. * * @param array $config The settings */ public static function update(array $config): void { self::$_config = $config; } /** * Get shared call settings. * * @return array The settings */ public static function get(): array { return self::$_config; } /** * Update default shared call settings. * * @param array $configDefault The settings */ public static function updateDefault(array $configDefault): void { self::$_configDefault = $configDefault; } /** * Get default shared call settings. * * @return array The settings */ public static function getDefault(): array { return self::$_configDefault; } /** * Get final settings. */ public static function getFinal(): array { return array_merge(self::$_configDefault, self::$_config); } }