UNPKG

plazbot

Version:

Official Plazbot SDK for creating AI agents for WhatsApp, portals, and developers.

53 lines (52 loc) 1.87 kB
/** Tipos de evento disponibles para defineWorker */ export type PlazbotEventType = 'message.received' | 'message.image.received' | 'message.audio.received' | 'message.document.received' | 'contact.created' | 'contact.existing' | 'contact.deleted' | 'contact.blocked' | 'contact.from.ad' | 'conversation.assigned' | 'conversation.resolved' | 'conversation.reopened'; /** Plataforma de origen del mensaje */ export type MessagePlatform = 'whatsapp' | 'telegram' | 'instagram' | 'webchat'; /** Tipo de contenido del mensaje */ export type MessageContentType = 'text' | 'image' | 'audio' | 'document' | 'video' | 'location' | 'sticker'; /** Contacto dentro de un evento */ export interface EventContact { id: string; name?: string; phoneNumber?: string; email?: string; tags?: string[]; stage?: string; assignedAgentId?: string; assignedAgentName?: string; variables?: Record<string, string>; } /** Mensaje dentro de un evento */ export interface EventMessage { id: string; content?: string; contentUrl?: string; contentType: MessageContentType; platform: MessagePlatform; direction: 'incoming' | 'outgoing'; timestamp: string; metadata?: Record<string, unknown>; } /** Conversacion dentro de un evento */ export interface EventConversation { contactId: string; isSolved: boolean; assignedAgentId?: string; assignedMemberId?: string; lastMessageAt?: string; } /** Datos del evento */ export interface PlazbotEventData { contact?: EventContact; message?: EventMessage; conversation?: EventConversation; /** Datos adicionales segun el tipo de evento */ metadata?: Record<string, unknown>; } /** Evento completo de Plazbot */ export interface PlazbotEvent { type: PlazbotEventType; workspaceId: string; timestamp: string; data: PlazbotEventData; }