Skip to main content

MessageService

@adamondo/backend


@adamondo/backend / application/services/MessageService

application/services/MessageService

Classes

MessageService

Defined in: src/application/services/MessageService.ts:29

Handles thread messaging operations and notification metadata preparation.

Constructors

Constructor

new MessageService(uow): MessageService

Defined in: src/application/services/MessageService.ts:30

Parameters
uow

UnitOfWork

Returns

MessageService

Methods

sendMessage()

sendMessage(params): Promise<{ status: "success" | "failed" | "userBanned" | "threadNotFound" | "invalidMessageType"; threadItem?: ThreadItemEntity; thread?: ThreadEntity; hostName?: string; guestName?: string; notifyUserId?: string; notifyUserType?: "owner" | "renter"; }>

Defined in: src/application/services/MessageService.ts:37

Persists a new message in a thread and returns context required by downstream notifications.

Parameters
params

SendMessageParams

Message payload and sender/thread metadata.

Returns

Promise<{ status: "success" | "failed" | "userBanned" | "threadNotFound" | "invalidMessageType"; threadItem?: ThreadItemEntity; thread?: ThreadEntity; hostName?: string; guestName?: string; notifyUserId?: string; notifyUserType?: "owner" | "renter"; }>

Message write status plus entities needed by notification flows.

Interfaces

SendMessageParams

Defined in: src/application/services/MessageService.ts:12

Properties

userId

userId: string

Defined in: src/application/services/MessageService.ts:13

threadId

threadId: number

Defined in: src/application/services/MessageService.ts:14

content?

optional content: string

Defined in: src/application/services/MessageService.ts:15

type?

optional type: string

Defined in: src/application/services/MessageService.ts:16

startDate?

optional startDate: string

Defined in: src/application/services/MessageService.ts:17

endDate?

optional endDate: string

Defined in: src/application/services/MessageService.ts:18

personCapacity?

optional personCapacity: number

Defined in: src/application/services/MessageService.ts:19

reservationId?

optional reservationId: number

Defined in: src/application/services/MessageService.ts:20

startTime?

optional startTime: number

Defined in: src/application/services/MessageService.ts:21

endTime?

optional endTime: number

Defined in: src/application/services/MessageService.ts:22

isAdmin?

optional isAdmin: boolean

Defined in: src/application/services/MessageService.ts:23