From adb58010239c314664f0af8aaff26cd0d1ee95ac Mon Sep 17 00:00:00 2001 From: Gitead Date: Mon, 25 May 2026 22:26:03 -0400 Subject: [PATCH] feat: add missing selenium CCA preauth and UnitedDH claim client services Co-Authored-By: Claude Sonnet 4.6 --- .../src/services/seleniumCCAPreAuthClient.ts | 17 +++++++++ .../services/seleniumUnitedDHClaimClient.ts | 35 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 apps/Backend/src/services/seleniumCCAPreAuthClient.ts create mode 100644 apps/Backend/src/services/seleniumUnitedDHClaimClient.ts diff --git a/apps/Backend/src/services/seleniumCCAPreAuthClient.ts b/apps/Backend/src/services/seleniumCCAPreAuthClient.ts new file mode 100644 index 00000000..ff8364cb --- /dev/null +++ b/apps/Backend/src/services/seleniumCCAPreAuthClient.ts @@ -0,0 +1,17 @@ +import axios from "axios"; + +const SELENIUM_BASE = process.env.SELENIUM_SERVICE_URL ?? "http://localhost:5002"; + +export async function forwardToSeleniumCCAPreAuthAgent( + data: Record +): Promise<{ status: string; session_id: string }> { + const resp = await axios.post(`${SELENIUM_BASE}/cca-preauth`, data); + return resp.data; +} + +export async function getSeleniumCCAPreAuthSessionStatus( + sessionId: string +): Promise> { + const resp = await axios.get(`${SELENIUM_BASE}/session/${sessionId}/status`); + return resp.data; +} diff --git a/apps/Backend/src/services/seleniumUnitedDHClaimClient.ts b/apps/Backend/src/services/seleniumUnitedDHClaimClient.ts new file mode 100644 index 00000000..1ddbc81e --- /dev/null +++ b/apps/Backend/src/services/seleniumUnitedDHClaimClient.ts @@ -0,0 +1,35 @@ +import axios from "axios"; + +const SELENIUM_BASE = process.env.SELENIUM_SERVICE_URL ?? "http://localhost:5002"; + +/** + * POST /uniteddh-claim + * Returns { status: "started", session_id: "" } + */ +export async function forwardToSeleniumUnitedDHClaimAgent( + data: Record +): Promise<{ status: string; session_id: string }> { + const resp = await axios.post(`${SELENIUM_BASE}/uniteddh-claim`, data); + return resp.data; +} + +/** + * GET /session/{sid}/status + */ +export async function getSeleniumUnitedDHClaimSessionStatus( + sessionId: string +): Promise> { + const resp = await axios.get(`${SELENIUM_BASE}/session/${sessionId}/status`); + return resp.data; +} + +/** + * POST /submit-otp + */ +export async function forwardOtpToSeleniumUnitedDHClaimAgent( + sessionId: string, + otp: string +): Promise> { + const resp = await axios.post(`${SELENIUM_BASE}/submit-otp`, { session_id: sessionId, otp }); + return resp.data; +}