feat(web-next): register realtime-ping inbound (env-gateable)
This commit is contained in:
@@ -23,6 +23,7 @@ import {
|
|||||||
import {
|
import {
|
||||||
InMemoryRealtimeBroadcaster,
|
InMemoryRealtimeBroadcaster,
|
||||||
RealtimeHandlerRegistry,
|
RealtimeHandlerRegistry,
|
||||||
|
realtimePingInboundDescriptor,
|
||||||
type IRealtimeBroadcaster,
|
type IRealtimeBroadcaster,
|
||||||
type IRealtimeHandlerRegistry,
|
type IRealtimeHandlerRegistry,
|
||||||
} from "@repo/core-realtime";
|
} from "@repo/core-realtime";
|
||||||
@@ -120,6 +121,9 @@ export async function bindAllProduction(deps: BindAllDeps): Promise<void> {
|
|||||||
bindProductionMarketingPages(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 20
|
bindProductionMarketingPages(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 20
|
||||||
bindProductionNavigation(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 21
|
bindProductionNavigation(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 21
|
||||||
bindProductionMedia(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 22
|
bindProductionMedia(resolvedConfig, tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 22
|
||||||
|
if (process.env.REALTIME_PING_DISABLED !== "true") {
|
||||||
|
realtimeRegistry.register(realtimePingInboundDescriptor(realtime));
|
||||||
|
}
|
||||||
bindRealtimeBridge(bus, realtime);
|
bindRealtimeBridge(bus, realtime);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -139,6 +143,9 @@ export async function bindAllDevSeed(deps: BindAllDeps): Promise<void> {
|
|||||||
await bindDevSeedMarketingPages(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 20
|
await bindDevSeedMarketingPages(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 20
|
||||||
await bindDevSeedNavigation(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 21
|
await bindDevSeedNavigation(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 21
|
||||||
await bindDevSeedMedia(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 22
|
await bindDevSeedMedia(tracer, logger, bus, queue, realtime, realtimeRegistry); // Phase E task 22
|
||||||
|
if (process.env.REALTIME_PING_DISABLED !== "true") {
|
||||||
|
realtimeRegistry.register(realtimePingInboundDescriptor(realtime));
|
||||||
|
}
|
||||||
bindRealtimeBridge(bus, realtime);
|
bindRealtimeBridge(bus, realtime);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ export const realtimePongChannel = defineRealtimeChannel(
|
|||||||
|
|
||||||
export function realtimePingInboundDescriptor(
|
export function realtimePingInboundDescriptor(
|
||||||
broadcaster: IRealtimeBroadcaster,
|
broadcaster: IRealtimeBroadcaster,
|
||||||
): IInboundDescriptor<typeof realtimePingChannel.name, typeof pingSchema> {
|
): IInboundDescriptor<"realtime.ping", z.ZodType<PingPayload>> {
|
||||||
return {
|
return {
|
||||||
descriptor: realtimePingChannel,
|
descriptor: realtimePingChannel,
|
||||||
handler: async (input: PingPayload, ctx: RealtimeContext): Promise<void> => {
|
handler: async (input: PingPayload, ctx: RealtimeContext): Promise<void> => {
|
||||||
|
|||||||
Reference in New Issue
Block a user