Spaces:
Runtime error
Runtime error
| import { ApiProperty } from '@nestjs/swagger'; | |
| import { CallData } from '@waha/structures/calls.dto'; | |
| import { EventResponsePayload } from '@waha/structures/events.dto'; | |
| import { Label, LabelChatAssociation } from '@waha/structures/labels.dto'; | |
| import { ChatArchiveEvent } from './chats.dto'; | |
| import { MessageDestination } from './chatting.dto'; | |
| import { | |
| WAHAEngine, | |
| WAHAEvents, | |
| WAHASessionStatus, | |
| WAMessageAck, | |
| } from './enums.dto'; | |
| import { WAHAEnvironment } from './environment.dto'; | |
| import { WAHAChatPresences } from './presence.dto'; | |
| import { ChatIdProperty, MessageIdProperty } from './properties.dto'; | |
| import { WAMessage, WAMessageReaction } from './responses.dto'; | |
| import { MeInfo } from './sessions.dto'; | |
| export class WAMessageAckBody { | |
| () | |
| id: string; | |
| () | |
| from: string; | |
| () | |
| to: string; | |
| () | |
| participant: string; | |
| fromMe: boolean; | |
| ack: WAMessageAck; | |
| ackName: string; | |
| _data?: any; | |
| } | |
| export class WAGroupPayload { | |
| ({ | |
| description: 'ID that represents the groupNotification', | |
| }) | |
| id: any; | |
| ({ | |
| description: 'Unix timestamp for when the groupNotification was created', | |
| }) | |
| timestamp: number; | |
| ({ | |
| description: 'ID for the Chat that this groupNotification was sent for', | |
| }) | |
| chatId: string; | |
| ({ | |
| description: 'ContactId for the user that produced the GroupNotification', | |
| }) | |
| author: string; | |
| ({ | |
| description: 'Extra content', | |
| }) | |
| body: string; | |
| ({ | |
| description: | |
| 'Contact IDs for the users that were affected by this GroupNotification', | |
| }) | |
| recipientIds: string[]; | |
| } | |
| export class PollVote extends MessageDestination { | |
| ({ | |
| description: 'Option that user has selected', | |
| example: ['Awesome!'], | |
| }) | |
| selectedOptions: string[]; | |
| ({ | |
| description: 'Timestamp, ms', | |
| example: 1692861369, | |
| }) | |
| timestamp: number; | |
| } | |
| export class PollVotePayload { | |
| vote: PollVote; | |
| poll: MessageDestination; | |
| _data?: any; | |
| } | |
| export class WAMessageRevokedBody { | |
| after?: WAMessage; | |
| before?: WAMessage; | |
| ({ | |
| description: 'ID of the message that was revoked', | |
| example: 'A06CA7BB5DD8C8F705628CDB7E3A33C9', | |
| }) | |
| revokedMessageId?: string; | |
| _data?: any; | |
| } | |
| export class WAMessageEditedBody extends WAMessage { | |
| ({ | |
| description: 'ID of the original message that was edited', | |
| example: 'A06CA7BB5DD8C8F705628CDB7E3A33C9', | |
| }) | |
| editedMessageId?: string; | |
| } | |
| export class WASessionStatusBody { | |
| ({ | |
| example: 'default', | |
| }) | |
| name: string; | |
| status: WAHASessionStatus; | |
| } | |
| export class WAHAWebhook<Payload = any> { | |
| ({ | |
| example: 'evt_01aaaaaaaaaaaaaaaaaaaaaaaa', | |
| description: | |
| 'Unique identifier for the event - lower case ULID format. https://github.com/ulid/spec', | |
| }) | |
| id: string; | |
| ({ | |
| example: 1634567890123, | |
| description: 'Unix timestamp (ms) for when the event was created.', | |
| }) | |
| timestamp: number; | |
| ({ | |
| example: 'default', | |
| }) | |
| session: string; | |
| ({ | |
| example: { | |
| 'user.id': '123', | |
| 'user.email': 'email@example.com', | |
| }, | |
| description: 'Metadata for the session.', | |
| }) | |
| metadata?: Map<string, string>; | |
| ({ | |
| example: WAHAEngine.WEBJS, | |
| }) | |
| engine: WAHAEngine; | |
| me?: MeInfo; | |
| environment: WAHAEnvironment; | |
| event: WAHAEvents; | |
| payload: Payload; | |
| } | |
| export class WAHAWebhookSessionStatus extends WAHAWebhook { | |
| ({ | |
| description: 'The event is triggered when the session status changes.', | |
| }) | |
| event = WAHAEvents.SESSION_STATUS; | |
| payload: WASessionStatusBody; | |
| } | |
| export class WAHAWebhookMessage extends WAHAWebhook { | |
| ({ description: 'Incoming message.' }) | |
| event = WAHAEvents.MESSAGE; | |
| payload: WAMessage; | |
| } | |
| export class WAHAWebhookMessageReaction extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when a user reacts or removes a reaction.', | |
| }) | |
| event = WAHAEvents.MESSAGE_REACTION; | |
| payload: WAMessageReaction; | |
| } | |
| export class WAHAWebhookMessageAny extends WAHAWebhook { | |
| ({ | |
| description: 'Fired on all message creations, including your own.', | |
| }) | |
| event = WAHAEvents.MESSAGE_ANY; | |
| payload: WAMessage; | |
| } | |
| export class WAHAWebhookMessageAck extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'Receive events when server or recipient gets the message, read or played it.', | |
| }) | |
| event = WAHAEvents.MESSAGE_ACK; | |
| payload: WAMessageAckBody; | |
| } | |
| export class WAHAWebhookMessageRevoked extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when a user, whether it be you or any other participant, ' + | |
| 'revokes a previously sent message.', | |
| }) | |
| event = WAHAEvents.MESSAGE_REVOKED; | |
| payload: WAMessageRevokedBody; | |
| } | |
| export class WAHAWebhookMessageEdited extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when a user edits a previously sent message.', | |
| }) | |
| event = WAHAEvents.MESSAGE_EDITED; | |
| payload: WAMessageEditedBody; | |
| } | |
| export class WAHAWebhookStateChange extends WAHAWebhook { | |
| ({ | |
| description: 'It’s an internal engine’s state, not session status.', | |
| deprecated: true, | |
| }) | |
| event = WAHAEvents.STATE_CHANGE; | |
| payload: any; | |
| } | |
| export class WAHAWebhookGroupJoin extends WAHAWebhook { | |
| ({ | |
| description: 'Some one join a group.', | |
| deprecated: true, | |
| }) | |
| event = WAHAEvents.GROUP_JOIN; | |
| payload: any; | |
| } | |
| export class WAHAWebhookGroupLeave extends WAHAWebhook { | |
| ({ | |
| description: 'Some one left a group.', | |
| deprecated: true, | |
| }) | |
| event = WAHAEvents.GROUP_LEAVE; | |
| payload: any; | |
| } | |
| export class WAHAWebhookPresenceUpdate extends WAHAWebhook { | |
| ({ | |
| description: 'The most recent presence information for a chat.', | |
| }) | |
| event = WAHAEvents.PRESENCE_UPDATE; | |
| payload: WAHAChatPresences; | |
| } | |
| export class WAHAWebhookPollVote extends WAHAWebhook { | |
| ({ | |
| description: 'With this event, you receive new votes for the poll sent.', | |
| }) | |
| event = WAHAEvents.POLL_VOTE; | |
| payload: PollVotePayload; | |
| } | |
| export class WAHAWebhookPollVoteFailed extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'There may be cases when it fails to decrypt a vote from the user. ' + | |
| 'Read more about how to handle such events in the documentations.', | |
| }) | |
| event = WAHAEvents.POLL_VOTE_FAILED; | |
| payload: PollVotePayload; | |
| } | |
| export class WAHAWebhookChatArchive extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when the chat is archived or unarchived', | |
| }) | |
| event = WAHAEvents.CHAT_ARCHIVE; | |
| payload: ChatArchiveEvent; | |
| } | |
| export class WAHAWebhookCallReceived extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when the call is received by the user.', | |
| }) | |
| event = WAHAEvents.CALL_RECEIVED; | |
| payload: CallData; | |
| } | |
| export class WAHAWebhookCallAccepted extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when the call is accepted by the user.', | |
| }) | |
| event = WAHAEvents.CALL_ACCEPTED; | |
| payload: CallData; | |
| } | |
| export class WAHAWebhookCallRejected extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when the call is rejected by the user.', | |
| }) | |
| event = WAHAEvents.CALL_REJECTED; | |
| payload: CallData; | |
| } | |
| export class WAHAWebhookLabelUpsert extends WAHAWebhook { | |
| ({ | |
| description: 'The event is triggered when a label is created or updated', | |
| }) | |
| event = WAHAEvents.LABEL_UPSERT; | |
| payload: Label; | |
| } | |
| export class WAHAWebhookLabelDeleted extends WAHAWebhook { | |
| ({ | |
| description: 'The event is triggered when a label is deleted', | |
| }) | |
| event = WAHAEvents.LABEL_DELETED; | |
| payload: Label; | |
| } | |
| export class WAHAWebhookLabelChatAdded extends WAHAWebhook { | |
| ({ | |
| description: 'The event is triggered when a label is added to a chat', | |
| }) | |
| event = WAHAEvents.LABEL_CHAT_ADDED; | |
| payload: LabelChatAssociation; | |
| } | |
| export class WAHAWebhookLabelChatDeleted extends WAHAWebhook { | |
| ({ | |
| description: 'The event is triggered when a label is deleted from a chat', | |
| }) | |
| event = WAHAEvents.LABEL_CHAT_DELETED; | |
| payload: LabelChatAssociation; | |
| } | |
| export class EnginePayload { | |
| event: string; | |
| data: any; | |
| } | |
| export class WAHAWebhookEventResponse extends WAHAWebhook { | |
| ({ | |
| description: 'The event is triggered when the event response is received.', | |
| }) | |
| event = WAHAEvents.EVENT_RESPONSE; | |
| payload: EventResponsePayload; | |
| } | |
| export class WAHAWebhookEventResponseFailed extends WAHAWebhook { | |
| ({ | |
| description: | |
| 'The event is triggered when the event response is failed to decrypt.', | |
| }) | |
| event = WAHAEvents.EVENT_RESPONSE_FAILED; | |
| payload: EventResponsePayload; | |
| } | |
| export class WAHAWebhookEngineEvent extends WAHAWebhook { | |
| ({ | |
| description: 'Internal engine event.', | |
| }) | |
| event = WAHAEvents.ENGINE_EVENT; | |
| payload: EnginePayload; | |
| } | |