From 4c8f0cc9ec068d76658d7e36caae62da42d39b8b Mon Sep 17 00:00:00 2001 From: Owen Date: Fri, 15 May 2026 11:48:13 -0700 Subject: [PATCH] Pull in the destination from the api --- server/private/lib/acmeCertSync.ts | 6 +++--- server/routers/resource/getBrowserTarget.ts | 15 ++++++++++----- src/app/rdp/RdpClient.tsx | 6 +++--- src/app/rdp/page.tsx | 8 +++++--- src/app/ssh/page.tsx | 7 ++++--- src/app/vnc/page.tsx | 7 ++++--- 6 files changed, 29 insertions(+), 20 deletions(-) diff --git a/server/private/lib/acmeCertSync.ts b/server/private/lib/acmeCertSync.ts index b69c2ae89..6cb784736 100644 --- a/server/private/lib/acmeCertSync.ts +++ b/server/private/lib/acmeCertSync.ts @@ -780,9 +780,9 @@ async function syncAcmeCerts(acmeJsonPath: string): Promise { } } - logger.debug( - `acmeCertSync: cert for ${mainDomain} covers ${allDomains.size} domain(s): ${[...allDomains].join(", ")}` - ); + // logger.debug( + // `acmeCertSync: cert for ${mainDomain} covers ${allDomains.size} domain(s): ${[...allDomains].join(", ")}` + // ); for (const domain of allDomains) { try { diff --git a/server/routers/resource/getBrowserTarget.ts b/server/routers/resource/getBrowserTarget.ts index 3baab4540..b8ddd43dc 100644 --- a/server/routers/resource/getBrowserTarget.ts +++ b/server/routers/resource/getBrowserTarget.ts @@ -38,10 +38,12 @@ export async function getBrowserTarget( const { fullDomain } = parsed.data; - const [row] = await db + logger.info(`Retrieving browser target for domain: ${fullDomain}`); + + const [browserTarget] = await db .select({ - ip: browserGatewayTarget.destination, - port: browserGatewayTarget.destinationPort + destination: browserGatewayTarget.destination, + destinationPort: browserGatewayTarget.destinationPort }) .from(browserGatewayTarget) .innerJoin( @@ -51,7 +53,7 @@ export async function getBrowserTarget( .where(eq(resources.fullDomain, fullDomain)) .limit(1); - if (!row) { + if (!browserTarget) { return next( createHttpError( HttpCode.NOT_FOUND, @@ -61,7 +63,10 @@ export async function getBrowserTarget( } return response(res, { - data: { ip: row.ip, port: row.port }, + data: { + ip: browserTarget.destination, + port: browserTarget.destinationPort + }, success: true, error: false, message: "Browser target retrieved successfully", diff --git a/src/app/rdp/RdpClient.tsx b/src/app/rdp/RdpClient.tsx index 5b61e527d..5114646cb 100644 --- a/src/app/rdp/RdpClient.tsx +++ b/src/app/rdp/RdpClient.tsx @@ -223,9 +223,9 @@ export default function RdpClient({ ); } - const destination = target - ? `${target.ip}:${target.port}` - : ""; + const destination = target ? `${target.ip}:${target.port}` : ""; + + console.log("Starting RDP session with destination:", destination); const builder = userInteraction .configBuilder() diff --git a/src/app/rdp/page.tsx b/src/app/rdp/page.tsx index 75cc5a852..7c2a2d47c 100644 --- a/src/app/rdp/page.tsx +++ b/src/app/rdp/page.tsx @@ -1,5 +1,5 @@ import { headers } from "next/headers"; -import { internal } from "@app/lib/api"; +import { priv } from "@app/lib/api"; import { AxiosResponse } from "axios"; import { GetBrowserTargetResponse } from "@server/routers/resource"; import RdpClient from "./RdpClient"; @@ -19,11 +19,13 @@ export default async function RdpPage() { let error: string | null = null; try { - const res = await internal.get>( + const res = await priv.get>( `/resource/browser-target?fullDomain=${encodeURIComponent(hostname)}` ); target = res.data.data; - } catch { + console.log("Fetched browser target:", target); + } catch (error) { + console.error("Error fetching browser target:", error); error = "No resource found for this domain"; } diff --git a/src/app/ssh/page.tsx b/src/app/ssh/page.tsx index b0e0b37b2..94fa8ce58 100644 --- a/src/app/ssh/page.tsx +++ b/src/app/ssh/page.tsx @@ -1,5 +1,5 @@ import { headers } from "next/headers"; -import { internal } from "@app/lib/api"; +import { priv } from "@app/lib/api"; import { AxiosResponse } from "axios"; import { GetBrowserTargetResponse } from "@server/routers/resource"; import SshClient from "./SshClient"; @@ -19,11 +19,12 @@ export default async function SshPage() { let error: string | null = null; try { - const res = await internal.get>( + const res = await priv.get>( `/resource/browser-target?fullDomain=${encodeURIComponent(hostname)}` ); target = res.data.data; - } catch { + } catch (error) { + console.error("Error fetching browser target:", error); error = "No resource found for this domain"; } diff --git a/src/app/vnc/page.tsx b/src/app/vnc/page.tsx index 6c1827e68..16a07b214 100644 --- a/src/app/vnc/page.tsx +++ b/src/app/vnc/page.tsx @@ -1,5 +1,5 @@ import { headers } from "next/headers"; -import { internal } from "@app/lib/api"; +import { priv } from "@app/lib/api"; import { AxiosResponse } from "axios"; import { GetBrowserTargetResponse } from "@server/routers/resource"; import VncClient from "./VncClient"; @@ -19,11 +19,12 @@ export default async function VncPage() { let error: string | null = null; try { - const res = await internal.get>( + const res = await priv.get>( `/resource/browser-target?fullDomain=${encodeURIComponent(hostname)}` ); target = res.data.data; - } catch { + } catch (error) { + console.error("Error fetching browser target:", error); error = "No resource found for this domain"; }