import type { SzPlatformClient } from '../classes.platformclient.js'; import { logger } from '../logger.js'; import * as plugins from '../plugins.js'; export class SzSmsConnector { public platformClientRef: SzPlatformClient; constructor(platformClientRefArg: SzPlatformClient) { this.platformClientRef = platformClientRefArg; } public async sendSms(messageArg: plugins.servezoneInterfaces.platformservice.sms.IRequest_SendSms['request']) { if (this.platformClientRef.debugMode) { logger.log('info', `sent sms to ${messageArg.toNumber}} body: ${messageArg.messageText.split('\n').map(line => ` ${line}`).join('\n')} `); } if (this.platformClientRef.debugMode) { return; } const typedrequest = this.platformClientRef.typedsocket.createTypedRequest( 'sendSms' ); const response = await typedrequest.fire(messageArg); return response.status; } public async sendSmsVerifcation( recipientArg: plugins.servezoneInterfaces.platformservice.sms.IRequest_SendVerificationCode['request'] ) { const typedrequest = this.platformClientRef.typedsocket.createTypedRequest( 'sendVerificationCode' ); const response = await typedrequest.fire(recipientArg); return response.verificationCode; } }