package com.saas.voip.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * Unified Call Request DTO
 * Used by VoIPOrchestrationService for provider-agnostic call initiation
 * 
 * Updated December 2025 - Added fromNumber for Retell AI V2 API
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class CallRequest {
    private String tenantId;
    private String assistantId;  // Vapi assistant or Retell agent ID
    private String phoneNumber;  // Target phone number (to_number)
    private String fromNumber;   // Caller ID phone number (from_number) - Required for Retell
    private String metadata;     // Optional JSON metadata
    private java.util.Map<String, Object> dynamicVariables;  // Optional LLM context variables
}
