feat: webhook field fixes, Force Ready endpoint, improved error logging

- Fix Call record field names (recording, callerNumber, durationSec)
- Add POST /api/ozonetel/agent-ready using logout+login for Force Ready
- Add callerNumber to kookoo callback
- Better error logging with response body

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-20 20:22:47 +05:30
parent 8c6cd2c156
commit 58225b7943
4 changed files with 49 additions and 22 deletions

View File

@@ -49,6 +49,7 @@ export class KookooCallbackController {
name: `Outbound — ${phoneNumber}`,
direction: 'OUTBOUND',
callStatus,
callerNumber: { primaryPhoneNumber: `+91${phoneNumber}` },
startedAt: startTime ? new Date(startTime).toISOString() : new Date().toISOString(),
endedAt: endTime ? new Date(endTime).toISOString() : null,
durationSec: duration,
@@ -82,8 +83,9 @@ export class KookooCallbackController {
}
return { received: true, processed: true, callId: callResult.createCall.id };
} catch (err) {
this.logger.error(`Kookoo callback processing failed: ${err}`);
} catch (err: any) {
const responseData = err?.response?.data ? JSON.stringify(err.response.data) : '';
this.logger.error(`Kookoo callback processing failed: ${err.message} ${responseData}`);
return { received: true, processed: false };
}
}