import { Body, Controller, Get, Logger, Post, Put } from '@nestjs/common'; import { TelephonyConfigService } from './telephony-config.service'; import type { TelephonyConfig } from './telephony.defaults'; // Mounted under /api/config alongside theme/widget/setup-state. // // GET /api/config/telephony — masked (secrets returned as '***masked***') // PUT /api/config/telephony — admin update; '***masked***' is treated as "no change" // POST /api/config/telephony/reset — reset to defaults (admin) @Controller('api/config') export class TelephonyConfigController { private readonly logger = new Logger(TelephonyConfigController.name); constructor(private readonly telephony: TelephonyConfigService) {} @Get('telephony') getTelephony() { return this.telephony.getMaskedConfig(); } @Put('telephony') updateTelephony(@Body() body: Partial) { this.logger.log('Telephony config update request'); return this.telephony.updateConfig(body); } @Post('telephony/reset') resetTelephony() { this.logger.log('Telephony config reset request'); return this.telephony.resetConfig(); } }