Formato de respuesta adaptativa: Selector de tiempo
Una respuesta del selector de tiempo es una lista de puestos de hora disponibles. Actualmente, la respuesta del selector de tiempo solo está disponible para Agente de servicio Agentforce.
Ediciones necesarias
| Disponible en: Lightning Experience |
| Disponible en: Ediciones Enterprise, Performance, Unlimited y Developer Edition con Foundations o Agentforce 1 o Einstein 1 |
Detalles de formato de respuesta adaptativo
| Componente de mensajería asignado | Selector de tiempo |
| Canales admitidos | Mensajes de Apple Messages for Business mejorados |
Consideraciones
- No puede personalizar el componente de mensajería asignado en el Generador de componentes de mensajería.
- La respuesta del selector de tiempo admite el formato de componente de mensajería Selector de tiempo para canales de Apple Messages for Business mejorados. En los canales de Chat mejorado, los puestos de hora aparecen como botones.
Para utilizar el formato de selector de tiempo en respuestas de agentes, cree una acción de agente personalizada que devuelva la información requerida. Para una acción de referencia de ejemplo, consulte la clase Apex de ejemplo.
- Divisiones de tiempo
- Una lista de puestos de hora disponibles.
- Mensaje
- Opcional. Texto enviado inmediatamente antes del selector de tiempo. Por ejemplo, "Aquí están los puestos de hora disponibles".
- Respuesta
- Opcional. Texto enviado después de que el cliente seleccione un puesto de hora. Por ejemplo, "Gracias por seleccionar su puesto de hora preferido".
- Nombre de ubicación
- Opcional. Nombre de la ubicación asociada con los puestos de hora. Por ejemplo, "Oficina principal".
- Latitude
- Opcional. Latitud de la ubicación.
- Longitude
- Opcional. Longitud de la ubicación.
- Radio
- Opcional. Radio del área de ubicación en metros.
Los campos Nombre de ubicación, Latitud y Longitud deben incluirse juntos.
Esta clase Apex recupera puestos de hora disponibles para un día especificado. Devuelve los puestos de hora como una lista.
Ejemplo
public class TimePickerResponse {
@InvocableVariable(label='Time Slots')
public List<String> timeSlots;
@InvocableVariable(label='Message')
public String message;
public TimePickerResponse() {
this.message = 'Here are the available time slots:';
this.timeSlots = new List<String>();
}
@InvocableMethod(
label='Get Time Slots by Day Name'
description='Returns time slots as plain text based on the specified days.'
)
public static List<List<String>> getAvailableTimesForDay(List<String> dayNames) {
List<List<String>> allAvailableTimes = new List<List<String>>();
for (String dayName : dayNames) {
List<String> availableTimes = new List<String>();
String normalizedDay = dayName.trim().toLowerCase();
switch on normalizedDay {
when 'monday' {
availableTimes.add('9:00 AM - 10:00 AM');
availableTimes.add('12:00 PM - 1:00 PM');
availableTimes.add('3:00 PM - 4:00 PM');
}
when 'tuesday' {
availableTimes.add('10:00 AM - 11:00 AM');
availableTimes.add('1:00 PM - 2:00 PM');
availableTimes.add('4:00 PM - 5:00 PM');
}
when 'wednesday' {
availableTimes.add('9:30 AM - 10:30 AM');
availableTimes.add('12:30 PM - 1:30 PM');
availableTimes.add('3:30 PM - 4:30 PM');
}
when 'thursday' {
availableTimes.add('8:00 AM - 9:00 AM');
availableTimes.add('11:00 AM - 12:00 PM');
availableTimes.add('2:00 PM - 3:00 PM');
}
when 'friday' {
availableTimes.add('9:00 AM - 10:00 AM');
availableTimes.add('11:30 AM - 12:30 PM');
availableTimes.add('2:00 PM - 3:00 PM');
}
when 'saturday' {
availableTimes.add('10:00 AM - 11:00 AM');
availableTimes.add('12:00 PM - 1:00 PM');
availableTimes.add('2:00 PM - 3:00 PM');
}
when 'sunday' {
availableTimes.add('11:00 AM - 12:00 PM');
availableTimes.add('1:00 PM - 2:00 PM');
availableTimes.add('3:00 PM - 4:00 PM');
}
}
allAvailableTimes.add(availableTimes);
}
return allAvailableTimes;
}
}
¿Resolvió este artículo su problema?
¡Háganos saber cómo podemos mejorar!

