Skip to content

Etiqueta: Pantalla

Reseñas de 5 estrellas o quejas de los clientes: por qué es importante el CRM de su centro de contacto

Reseñas de 5 estrellas o quejas de los clientes: por qué es importante el CRM de su centro de contacto

Piense en su última experiencia frustrante de servicio al cliente. Lo más probable es que implicara hablar con agentes, intentar resolver el problema de muchas maneras (agotadoramente) y repetir la situación una y otra vez. ¿No existe una manera más fácil de resolver los problemas de los clientes, sin una revisión exhaustiva en las redes sociales? Sí, y el software CRM del centro de contacto puede hacerlo realidad.

El software CRM para centros de contacto, también conocido como software de gestión de relaciones con los clientes, es una herramienta utilizada por los centros de contacto para mejorar las experiencias de los clientes. El software almacena información sobre los clientes, rastrea las interacciones con los clientes y simplifica los canales de comunicación y servicio al cliente , todo en un solo lugar. En resumen, ayuda a las empresas a resolver problemas más rápidamente.

Dado que el mal servicio es la razón número uno por la que los consumidores dejan de comprarle a una empresa, brindar un buen servicio al cliente nunca ha sido más importante. Pero, ¿es el software CRM para centros de contacto la mejor opción para su negocio? Abordemos las preguntas más comunes para ayudarle a decidir.

Modernice su centro de contacto

La combinación adecuada de canales y herramientas de atención al cliente puede ayudarle a ser más eficiente y mejorar la satisfacción del cliente. Nuestra guía revela cómo las organizaciones de servicios de alto rendimiento lo hacen posible.

¿Cuáles son los beneficios del software CRM para los centros de contacto?

Invertir en software CRM para centros de contacto puede ayudarle de varias maneras clave, que incluyen:

  • Una experiencia de cliente perfecta: el software CRM del centro de contacto permite a los agentes de servicio al cliente manejar las preguntas y problemas de los clientes en todos los canales. Ya sea que sus clientes llamen, envíen correos electrónicos o publiquen en las redes sociales (o una combinación de los tres), su empresa puede brindarles la experiencia consistente que sus clientes esperan.
  • Mejor colaboración : con funciones como gestión de casos y herramientas colaborativas de servicio al cliente, los agentes pueden compartir información, hacer preguntas y derivar casos fácilmente a expertos en la materia. Esto conduce a una resolución de problemas más rápida y precisa.
  • Más opciones de autoservicio : el software CRM para centros de contacto ayuda a las organizaciones a crear una experiencia de autoservicio en línea, lo que significa que los clientes pueden encontrar soluciones y obtener actualizaciones sobre sus casos sin la necesidad de comunicarse con el servicio de atención al cliente. Esto no sólo mejora la satisfacción del cliente, sino que también reduce los costos de servicio y los tiempos de respuesta.

¿Cómo funciona el software CRM para los centros de llamadas frente a los centros de contacto?

Aunque algunas personas utilizan los términos call center y contact center indistintamente, existen diferencias importantes. Es importante comprender cómo se puede utilizar el software CRM para cada uno.

Los centros de llamadas se centran en resolver los problemas de los clientes únicamente por teléfono, por lo que requieren menos recursos que los centros de contacto. Esto significa que los centros de llamadas pueden ser más rentables y al mismo tiempo brindar un excelente servicio al cliente (especialmente si sus clientes prefieren usar el teléfono). La desventaja: debido a que se centran únicamente en las llamadas, están limitados en otras opciones de servicio. Aun así, los equipos que utilizan el modelo de centro de llamadas aún pueden integrar soluciones CRM para servicios como asistencia de agentes de guardia , capacitación para equipos de servicio y transcripción de llamadas en tiempo real.

Por el contrario, un contact center gestiona mucho más que llamadas. En un centro de contacto, los agentes utilizan correos electrónicos, chat en vivo, pantalla compartida, redes sociales, mensajes de texto, videoconferencias y más. Las empresas suelen utilizar este enfoque para comunicarse con más clientes a través de más canales en menos tiempo.

La tecnología adecuada lo hace posible. Por ejemplo, el software CRM del centro de contacto incluye automatización del flujo de trabajo y herramientas de inteligencia artificial como chatbots , formas comunes de brindar un servicio al cliente proactivo a través de múltiples canales. Además, los análisis basados en inteligencia artificial de CRM pueden ayudarlo a comprender las necesidades y el comportamiento de los clientes, mientras que el software de reconocimiento de voz puede identificar rápidamente a los clientes según sus patrones de habla. Y la IA predictiva también se puede utilizar para ayudar a los agentes a responder consultas comunes de forma más rápida y precisa.

¿Cómo se elige el mejor CRM para contact center?

Seleccionar el mejor software CRM de centro de contacto para su empresa es una decisión importante y requiere una consideración cuidadosa. Al decidir entre soluciones, piense en:

  • Escalabilidad: a medida que su negocio crece, no querrá tener que capacitar a los agentes en otra solución cada pocos años. Asegúrese de que cualquier CRM de centro de contacto pueda adaptarse a la evolución del tamaño de su empresa, su base de clientes y sus canales de servicio.
  • Integración: cuando los sistemas están aislados, es más difícil para los agentes resolver problemas complejos de los clientes que pueden involucrar múltiples interacciones y productos. En su lugar, asegúrese de que cualquier CRM de centro de contacto pueda conectar los datos de los clientes entre departamentos, sistemas y perfiles, para que pueda personalizar la experiencia de sus clientes y resolver problemas más rápido.
  • Facilidad de uso: los agentes ya desempeñan un papel desafiante, sin necesidad de presentarles software complicado. ¿Pueden implementar fácilmente un CRM de centro de contacto? ¿Cuáles son los tiempos de entrenamiento y cómo mejora sus interacciones diarias? ¿Pueden utilizar un único panel de vidrio para gestionar todo el trabajo, en lugar de girar entre varios sistemas?
  • Análisis e informes: con el aumento de los casos de clientes, el aumento de la rotación y los problemas más complejos de los clientes, las organizaciones de servicio al cliente necesitan datos más que nunca. El CRM de centro de contacto adecuado proporcionará información fundamental sobre la salud de su organización de servicio al cliente. Buenos lugares para comenzar: valores de llamadas, tiempos de espera promedio, satisfacción del cliente y NPS.

También es importante evaluar la reputación de un proveedor de CRM, sus capacidades de automatización e inteligencia artificial, sus opciones de atención al cliente y sus precios para garantizar que se ajuste bien a las necesidades de su centro de contacto.

¿Cómo se obtiene el máximo ROI de un CRM de contact center?

Las herramientas de CRM pueden ayudarle a conectarse con los clientes de forma rápida y sencilla de varias maneras, pero aún quedan algunos pasos por seguir para ver realmente los resultados que desea, más rápido. La forma en que utilice el software depende en última instancia de los problemas de servicio al cliente que intente resolver.

A continuación se muestran algunas formas comunes de hacer que un CRM de centro de contacto funcione para usted:

  • Comience con un canal , como mensajería dentro de la aplicación, y luego agregue formas adicionales para que sus clientes se pongan en contacto, como chat, WhatsApp y teléfono.
  • Implemente chatbots con tecnología de inteligencia artificial (integrados directamente en la plataforma CRM) para facilitar la automatización del servicio al cliente personalizado en todos los canales.
  • Diseñe recorridos de cliente personalizados que faciliten que los clientes obtengan ayuda de servicios automatizados o de un agente humano, garantizando que todos reciban el soporte que necesitan en el canal que prefieran.
  • Aumente la productividad con una colaboración y comunicación más eficiente entre equipos y departamentos. Los flujos de trabajo automatizados pueden ayudarle a optimizar las tareas manuales (y repetitivas), como seguimientos o escalaciones.

Comenzando con el software CRM del centro de contacto

Invertir en una nueva tecnología empresarial (incluso una como un software CRM para centros de contacto que pueda tener un impacto inmediato) puede parecer desalentador. Para profundizar aún más, obtenga más información sobre la estrategia del centro de contacto en Trailhead .

Maximice el rendimiento de su centro de contacto

Su centro de contacto debe ser un centro de participación omnicanal moderno que agrade tanto a los agentes como a los clientes. Vea lo que es posible con el software de centro de contacto integrado en su CRM, impulsado por IA y automatización.

Seguir leyendo

🚀 Guía definitiva de 150 preguntas sobre Salesforce Service Cloud: ¡domine cada detalle! 🌟

Servicio_nube

Temas cubiertos en la entrevista de Salesforce Service Cloud:

  • Conocimientos generales y características
  • Gestión de casos
  • Soluciones y base de conocimientos
  • Consola de servicio
  • Portales/comunidades de clientes y agentes
  • Flujo de trabajo y automatización:
  • Informes y paneles en Service Cloud
  • Integración de CTI y telefonía
  • Servicio al cliente en redes sociales
  • Chat y mensajería
  • Integración de correo electrónico
  • Métricas y análisis de rendimiento
  • Inteligencia artificial (IA) en la nube de servicios
  • Servicio de campo
  • Macros
  • Preguntas basadas en escenarios

Conocimientos generales y características

1. ¿Qué es Salesforce Service Cloud?

– Imagine que dirige una empresa y tiene toneladas de clientes que hacen preguntas o tal vez tienen problemas con su producto. Ahora, desea ayudarlos de manera rápida y eficiente. ¡Ahí es donde entra Salesforce Service Cloud!

2. ¿Cómo beneficia Service Cloud a un departamento de atención al cliente?

niño, niño, juego, malabarismo, pelota, vector, aislado, 18804576, arte vectorial, en, Vecteezy

Como empresa, usted maneja cosas agitadas que pueden ponerse cuando los clientes lo llaman, le envían correos electrónicos o le hacen ping en las redes sociales. ¡Es como hacer malabares! Service Cloud es como un asistente súper inteligente que ayuda a atrapar esas pelotas. Realiza un seguimiento de todos los problemas de los clientes (llamados "casos" en Salesforce), se asegura de que los vea la persona adecuada y proporciona respuestas que su equipo puede utilizar para responder más rápido.

¿La mejor parte? Puede conectarse con sus clientes dondequiera que estén: por teléfono, en las redes sociales, lo que sea. ¡Menos caos, más choca esos cinco en la oficina!

3. ¿Cuál es la diferencia entre Salesforce Sales Cloud y Service Cloud?

Paseo en coche (#1) - Openclipart

Piense en su negocio como en un automóvil. Sales Cloud es como el motor que lo impulsa hacia adelante: lo ayuda a encontrar nuevos clientes y los convence para que se sumen. Estamos hablando de gestionar contratos, realizar un seguimiento de las ventas y realizar previsiones. Ahora bien, ¿la nube de servicios? Ese es su sistema de dirección y comodidad. Una vez que los clientes están a bordo, se garantiza que estén contentos durante el viaje. Atiende sus preguntas, resuelve cualquier problema y se asegura de que disfruten tanto del viaje que querrán viajar contigo nuevamente.

4. ¿Qué es OmniCanal en el contexto de Service Cloud y cómo beneficia a una empresa?

OmniCanal es una forma para que su empresa hable con los clientes dondequiera que prefieran: redes sociales, correo electrónico, teléfono o incluso chat en vivo. Pero es inteligente; garantiza que su equipo no se sienta abrumado y que las preguntas de sus clientes lleguen a la persona adecuada que pueda responderlas mejor.

5. ¿Cómo mejora Service Cloud la satisfacción del cliente?

Conocer bien a sus clientes y satisfacer sus necesidades rápidamente no sólo los deja satisfechos; ¡Puede convertirlos en fanáticos de tu marca! Además, los clientes satisfechos a menudo significan que volverán y les dirán a sus amigos lo fantástico que eres: ¡todos ganan!

Gestión de casos

1.¿Qué es un caso en Salesforce?

– Imagínese esto: un cliente tiene una pregunta o tiene problemas con su producto. Piden ayuda. ¿Ese mensaje de ayuda? En Salesforce, a eso lo llamamos "caso".

2.¿Cómo se pueden crear casos en Salesforce?

Los casos son como boletos. En Salesforce, los casos pueden surgir de todas partes: un cliente envía un correo electrónico, completa un formulario en su sitio web, le envía un mensaje en las redes sociales o incluso llama. Cada una de estas acciones puede iniciar un caso para que su El equipo sabe que alguien necesita una mano.

3. ¿Qué es Web-to-Case y cómo se utiliza?

¿Sabes cómo puedes pedir tu café con anticipación en una aplicación y te estará esperando cuando llegues? Web-to-Case es algo así, pero para servicio al cliente. Permite a sus clientes completar un formulario en su sitio web cada vez que necesitan ayuda, y esa información se envía directamente a Salesforce como un caso. De esta manera, su equipo de servicio al cliente puede comenzar a desarrollar soluciones de inmediato.

4. ¿Explicar el correo electrónico para enviar casos?

Piense en Email-to-Case como un puente entre su bandeja de entrada de correo electrónico de servicio al cliente y Salesforce . Cuando sus clientes le envían un correo electrónico pidiéndole ayuda, Email-to-Case lo detecta y lo convierte en un caso en Salesforce.

5. ¿Qué es la escalada de casos y cómo se configura?

Una captura de pantalla de una computadora Descripción generada automáticamente

A veces, las cosas necesitan un poco más de urgencia, como una entrega de pizza en 30 minutos o menos. La escalada de casos ocurre cuando un caso no se ha resuelto en un cierto período de tiempo y sube en la lista de prioridades o incluso se entrega a un gerente. En Salesforce, esto se configura creando reglas de escalamiento que controlan el tiempo de los casos y activan una señal de alerta cuando uno está tardando demasiado.

6. ¿Cómo funcionan las reglas de asignación de casos?

Señales manuales de emergencia de la policía de tránsito para conductores: conduzca en Malasia

Las reglas de asignación son como los policías de tránsito de Salesforce. Observan los nuevos casos que llegan y les indican la dirección correcta. Según los detalles del caso, como de qué se trata o de quién proviene, estas reglas los envían al departamento correcto o a la persona más adecuada para ayudar. Mantiene las cosas en movimiento sin problemas.

7. ¿Qué son las colas de casos y en qué se diferencian de las reglas de asignación?

Las reglas de asignación dirigen los casos a personas específicas de inmediato, mientras que las colas les permiten esperar en un lugar relevante para que los tome cualquier miembro disponible del equipo.

8. ¿Cómo se realiza un seguimiento del historial del caso?

Realizar un seguimiento del historial de un caso en Salesforce es como tener un mapa de dónde ha estado, a quién ha visitado y qué se ha hecho hasta el momento. Cada vez que alguien ve el caso, realiza un cambio o agrega algo, Salesforce toma nota de ello. Así, cualquiera que observe el caso podrá ponerse al día con su recorrido.

9. ¿Qué son los equipos de casos?

Los equipos de casos en Salesforce son como grupos de proyectos en la escuela. Puede formar un equipo de varios usuarios con diferentes roles para colaborar y resolver un caso de manera eficiente.

10. ¿Cómo se utilizan los feeds de casos?

Los feeds de casos son como líneas de tiempo de las redes sociales para cada caso. Muestran una vista cronológica de todas las actividades, como mensajes, cambios de estado o acciones del usuario, relacionadas con un caso.

11. ¿Puedes realizar un seguimiento del tiempo dedicado a cada caso?

Sí, con funciones de seguimiento del tiempo. Es como un cronómetro del trabajo: puede medir cuánto tiempo dedican los agentes a cada caso.

12. ¿Cómo maneja Salesforce los correos electrónicos masivos en la gestión de casos?

Salesforce le permite enviar correos electrónicos masivos para mantener actualizados a muchos clientes a la vez.

13. ¿Qué son los hitos del caso?

Los hitos son como puntos de control en una carrera. Son objetivos específicos que los agentes deben alcanzar dentro de un plazo determinado mientras resuelven un caso.

14. ¿Cuál es la diferencia entre un caso y una orden de trabajo?

Un caso es un registro de un problema de un cliente, mientras que una orden de trabajo es una solicitud de trabajo, a menudo utilizada para servicios de campo o tareas físicas.

15. ¿Cuáles son los beneficios de utilizar Chatter para los casos?

Chatter es como una sala de chat para el trabajo. Los agentes pueden discutir casos, compartir archivos y obtener comentarios de los miembros del equipo directamente en el registro del caso.

16. ¿Cuáles son los componentes de la regla de asignación de casos en Salesforce?

En Salesforce, la regla de asignación de casos giraba en torno a dos componentes principales, como la regla de caso y los criterios de caso.

Regla de caso: una regla de caso define una o más de una condición que debe cumplirse para ser asignada a un usuario específico. Podemos agregar tantas entradas de reglas como queramos a una sola regla de asignación.

Criterios de caso: Los criterios de caso son las condiciones que se basan en diferentes factores como el origen del caso, el estado, el tipo, etc.

Soluciones y base de conocimientos

1. ¿Qué es el conocimiento de Salesforce?

Salesforce Knowledge es como una carpeta para toda la información que su equipo necesita para ayudar a los clientes. Es un lugar donde puedes almacenar artículos, preguntas frecuentes, guías de solución de problemas y más, todo organizado y fácil de encontrar.

2. Explicar el proceso de creación y mantenimiento de una Base de Conocimiento en Salesforce.

Crear una base de conocimientos es como abastecer una biblioteca. Empiece por escribir artículos; pueden ser preguntas frecuentes, guías prácticas o pasos para la solución de problemas. Una vez que haya terminado, los colocará en los estantes (es decir, los publicará en Salesforce Knowledge) y así, estarán disponibles para que los lea su equipo o incluso sus clientes. Deberá revisar sus artículos con regularidad, actualizar la información anterior y seguir agregando material nuevo para mantener todo actualizado.

3. ¿Cuál es la diferencia entre Soluciones y Artículos de Conocimiento?

Libro. Antiguo libro de texto, enciclopedia, diccionario o libro de cuentos de hadas. Diseño de dibujos animados felices para niños, página para colorear, estampado de camisetas, icono, logotipo, etiqueta, parche, pegatina. SVG, cliparts, vectores y ilustraciones libres de derechos.

Las soluciones son como esas viejas enciclopedias : tienen información útil, pero son un poco básicas y solo su equipo puede leerlas. Por otro lado, los artículos de conocimiento son como tener una base de datos completa en línea. Son más dinámicos, pueden incluir videos e imágenes y puedes compartirlos no solo con tu equipo sino también con tus clientes.

4. ¿Cómo pueden los usuarios de Service Cloud aprovechar los artículos de conocimiento?

Piense en los usuarios de Service Cloud como bibliotecarios. Cuando un cliente tiene una pregunta, en lugar de hojear montones de libros o luchar para encontrar un experto, puede buscar el artículo de conocimiento correcto y tener las respuestas al alcance de su mano. Esto hace que ayudar a los clientes sea más rápido, más preciso y, sinceramente, mucho menos estresante.

5. ¿Pueden los clientes acceder a los artículos de conocimiento? ¿Si es así, cómo?

¡Por supuesto que pueden! Puede configurar una comunidad de clientes o un sitio web público donde estos artículos estén disponibles. Los clientes pueden ingresar, buscar lo que necesitan y, a menudo, resolver sus propios problemas sin tener que levantar el teléfono o enviar un correo electrónico.

Consola de servicio

1.¿Qué es la Consola de Servicio en Salesforce?

Ilustración de Chef y más Vectores Libres de Derechos de Adulto - Chef, Dibujos Animados, Gorro De Chef - iStock

Imagínese ser chef en una cocina ocupada y bien equipada. La Consola de servicio es como su estación de cocina, donde tiene sus ingredientes (datos del cliente), utensilios (herramientas y aplicaciones) y recetas (artículos de conocimiento), todo en un solo lugar. Estás allí, cocinando varios platos (manejando varios casos de clientes) a la vez. 🍳👩‍🍳🔥

2. ¿Cómo mejora la Consola de servicio la productividad de los agentes?

Si eres chef en una cocina, ¿no sería más fácil cocinar si todos tus ingredientes, utensilios y recetas estuvieran en un solo lugar? Eso es lo que hace la Consola de servicio por los agentes. Pone todo lo que necesitan en un solo lugar. Pueden chatear con los clientes, echar un vistazo al historial de su cuenta y comprobar sus pedidos, todo al mismo tiempo. ¡Es como tener superpoderes, para que puedan ayudar a los clientes más rápido y mejor!

3. ¿Se puede personalizar la Consola de servicio? Si es así, ¿cómo?

¡Por supuesto! Al igual que puedes reorganizar las aplicaciones en tu teléfono, puedes modificar la Consola de servicio para adaptarla a tus necesidades. Todo esto se hace a través de algo llamado "Creador de aplicaciones", donde arrastra y suelta los componentes que desea. Es como jugar un juego en el que diseñas tu centro de mando.

Portales/comunidades de clientes y agentes:

1. ¿Qué es una comunidad de clientes en el contexto de Service Cloud?

Dibujo infantil de CCC, bloques de colores – Catskill Community Center

Imagínese un centro comunitario en un vecindario. Es un lugar donde los residentes se reúnen para discutir temas, compartir noticias, pedir prestado herramientas o incluso organizar eventos. Ahora, imagine si su empresa tuviera un “centro comunitario” virtual para sus clientes. Esa es una comunidad de clientes en Salesforce. Es un espacio en línea donde sus clientes pueden reunirse para hacer preguntas, compartir ideas e incluso resolver problemas juntos. También pueden encontrar artículos o anuncios útiles que haya publicado, ¡muy parecido a un tablero de anuncios comunitario!

2. ¿En qué se diferencian los portales de agentes de los portales/comunidades de clientes?

Cree un portal de socios, habilite la cuenta de socio y los usuarios y agregue

En el centro comunitario, piense en el Portal del Cliente/Comunidad como el salón principal donde todos se reúnen, conversan y comparten. El Portal del Agente, sin embargo, es como la oficina administrativa que da al salón principal. Desde esta oficina, sus agentes de servicio al cliente pueden observar lo que sucede en la comunidad, intervenir para ayudar cuando sea necesario o proporcionar recursos.

3. ¿Cómo pueden los clientes utilizar las comunidades para autoservicio?

En una comunidad de clientes, los clientes pueden explorar los artículos que usted ha proporcionado, encontrar respuestas a preguntas comunes o hacer una nueva pregunta que cualquier miembro de la comunidad puede responder. Esto les permite encontrar soluciones en su propio tiempo y términos, sin necesidad de llamar directamente a la “oficina del administrador” (contactar con soporte).

4. ¿Cuáles son las mejores prácticas para crear una comunidad de clientes?

La comunidad de clientes de Salesforce debe ser fácil de usar y proporcionar valor real. Asegúrese de que sea de fácil acceso, con categorías claras para la discusión y una amplia base de conocimientos. Actualice y modere periódicamente el contenido para garantizar que sea relevante y apropiado. Fomente la participación reconociendo a los miembros activos u organizando eventos o desafíos comunitarios.

Flujo de trabajo y automatización

1. ¿Se puede automatizar el enrutamiento de casos? ¿Si es así, cómo?

En Service Cloud, los casos se pueden enrutar automáticamente. Puede establecer criterios, como si un caso proviene de un cliente VIP, va directamente a su mejor agente, o si es un problema común, va a cualquier agente disponible. De esta manera, todos reciben un servicio eficiente y eficaz.

2. ¿Cómo se automatiza el seguimiento del acuerdo de nivel de servicio (SLA) en Service Cloud?

¿Estás preparado para Domino's... - Domino's Pizza Bangladesh | Facebook

Imagínese el restaurante prometiendo que cada pedido se servirá en 30 minutos o, de lo contrario, será gratis. Para cumplir esta promesa, tienen un sistema que inicia una cuenta regresiva en el momento en que se realiza un pedido y alerta al gerente si llega a los 25 minutos. Service Cloud puede realizar un seguimiento de los SLA de forma similar. Puede establecer los plazos en los que los casos deben resolverse según su nivel de prioridad y automatizar recordatorios, escalamientos u otras acciones si esos plazos se acercan o no se cumplen. ¡Mantiene al equipo responsable y a los clientes contentos!

3. ¿Podría definir la Gestión de derechos en el contexto de Salesforce Service Cloud?

La gestión de derechos en Salesforce Service Cloud es una función que ayuda a las empresas a definir, hacer cumplir y realizar un seguimiento de los acuerdos de nivel de servicio (SLA) con sus clientes. Permite a las empresas establecer el nivel de soporte al que tiene derecho un cliente, en función de factores como garantías de productos, contratos de servicio o planes de soporte. Esta característica garantiza que los clientes reciban el soporte al que tienen derecho dentro del plazo acordado.

4. ¿Puedes explicar la funcionalidad de Visual SLA Timelines?

Los cronogramas visuales de SLA en Salesforce Service Cloud ofrecen una representación gráfica de los cronogramas asociados con cada SLA. Ayudan a los agentes de servicio a visualizar el tiempo restante necesario para resolver un caso según el SLA asociado. Esto permite a los agentes priorizar su trabajo de manera efectiva y garantizar el cumplimiento de los términos del SLA.

Informes y paneles

1. ¿Cómo mejoran los informes y paneles las operaciones de servicio?

Imagínese que al final de cada día, el gerente recibe un resumen de todo lo sucedido: cuántos clientes llegaron, cuál fue el plato más popular, cuántos elogios o quejas se recibieron, etc. En Service Cloud, los informes y paneles son como este resumen diario. Ofrecen a los directivos una visión rápida pero completa de cómo van las cosas. ¿Los clientes esperan demasiado? ¿Algunos problemas se resuelven más rápido que otros? Esta información ayuda al equipo a saber qué funciona y qué no, para que puedan mejorar su "servicio".

2. ¿Se puede realizar un seguimiento del rendimiento de los agentes con Service Cloud? Si es así, ¿cómo?

Service Cloud le permite realizar un seguimiento del desempeño de sus agentes. Puede ver cuántos casos han resuelto, qué tan rápido están trabajando e incluso cómo los clientes califican su servicio. Es como un gráfico de desempeño para los camareros, pero para sus agentes de servicio.

3. ¿Cuáles son algunas métricas de servicio comunes que puede rastrear en Service Cloud?

En el mundo de Service Cloud, las métricas comunes incluyen cosas como

  • tiempo promedio de resolución de casos
  • puntuaciones de satisfacción del cliente
  • tasas de resolución del primer contacto
  • volúmenes de casos por tipo o fuente

Integración de CTI y telefonía

1. ¿Qué es la Integración Telefónica Computadora (CTI)?

Representante De Servicio Al Cliente De Dibujos Animados De Forma Tridimensional De Persona De Negocios - Banco de fotos e imágenes de stock - iStock

Es un término para un sistema que permite que las computadoras interactúen con los teléfonos. Significa que cuando alguien llama, el sistema de atención al cliente sabe inmediatamente quién es y cuál es su historial con la empresa.

2.¿Cómo mejora CTI el servicio al cliente?

En el restaurante sin CTI, cada llamada de un cliente sería como una reunión de camareros durante la cena por primera vez. Tendrían que volver a hacer todas las preguntas básicas: "¿Tiene alguna alergia?" “¿Prefieres asiento junto a la ventana o en el pasillo?” etcétera. Con CTI, es como si el camarero ya te conociera. Te saludan por tu nombre, recuerdan que eres alérgico al maní, saben que te gusta el queso extra y tienen lista tu mesa favorita. En términos de atención al cliente, esto ahorra tiempo, personaliza la experiencia del cliente.

3. ¿Puede darnos un ejemplo de cómo se utiliza CTI en un escenario de call center?

Cuando un cliente llama, la pantalla del agente muestra inmediatamente el nombre del cliente, su historial de compras, problemas anteriores y cualquier otra información relevante. Luego, el agente puede saludar al cliente por su nombre y atender sus necesidades de manera proactiva, a veces incluso antes de que el cliente indique por qué llama. Se trata de hacer que la experiencia de servicio sea fluida y placentera, como tener la mejor mesa lista incluso antes de entrar.

Servicio al cliente en redes sociales

1. ¿Qué es el servicio al cliente social en Salesforce?

¿Sabes cómo puedes chatear con amigos y ver qué están haciendo en las redes sociales? Salesforce permite a las empresas hacer lo mismo con sus clientes. Pueden revolotear y ver lo que la gente dice sobre ellos en las redes sociales.

2. ¿Cómo pueden los agentes utilizar Salesforce para responder a las consultas de los clientes en las redes sociales?

Ya sea que los clientes tuiteen, publiquen en Facebook o compartan historias de Instagram sobre sus experiencias o problemas, los agentes no tienen que desplazarse de una plataforma a otra. Pueden responder a todas estas publicaciones sociales desde su 'colmena' de Salesforce, asegurándose de que nadie se sienta ignorado y que cada problema se resuelva rápidamente.

3. ¿Puedes realizar un seguimiento de las conversaciones de las redes sociales en Service Cloud?

¡Absolutamente! Service Cloud controla todas las conversaciones que ocurren entre la empresa y los clientes en las plataformas sociales. Recuerda quién dijo qué, almacena información sobre los problemas del cliente e incluso cómo se resolvió. De esta manera, si el cliente vuelve a comunicarse, la empresa no hace las mismas preguntas de siempre, sino que continúa la conversación justo donde la dejó, como si retrocediera en el historial de chat con un amigo.

Chat y mensajería

1. ¿Cómo funciona Live Agent en Service Cloud?

Imagínese si estuviera comprando en una gran tienda y en lugar de tener que buscar ayuda por todo el lugar, apareciera un asistente personal a su lado en el momento en que parecía confundido. Así es Live Agent en el mundo online. Es una característica de Service Cloud que permite a los agentes de servicio al cliente chatear en tiempo real con los clientes mientras están en el sitio web para responder preguntas, dar consejos o ayudarlos a encontrar lo que necesitan.

2. ¿Cuáles son los beneficios de utilizar el chat para atención al cliente?

Los clientes obtienen atención instantánea y sus preguntas pueden responderse de inmediato. Además, es muy conveniente porque pueden hacer otras cosas mientras conversan. Para las empresas, significa que pueden manejar varios chats a la vez, lo que es como poder ayudar a varios clientes al mismo tiempo en diferentes líneas de pago.

3. ¿Se pueden automatizar las respuestas en Live Agent?

Sí, si alguien dice "hola", el sistema puede decir automáticamente "¡Hola!". ¿Cómo puedo ayudarte hoy?" Está programado para reconocer palabras o preguntas específicas y luego proporcionar una respuesta preestablecida. Esto significa que el agente no tiene que escribir las mismas respuestas una y otra vez y los clientes obtienen respuestas ultrarrápidas a preguntas comunes.

4. ¿Cómo maneja Salesforce los mensajes SMS para el servicio de atención al cliente?

Salesforce aporta esa comodidad al servicio al cliente. Con las funciones de mensajería SMS, las empresas pueden enviar mensajes de texto a los clientes y los clientes pueden responder. Pueden enviar recordatorios de citas, confirmaciones, actualizaciones rápidas o incluso responder preguntas, todo a través de mensajes de texto. Todo se rastrea y almacena en Salesforce, para que la empresa no pierda la conversación.

Integración de correo electrónico

1. ¿Cómo se utiliza el correo electrónico en Service Cloud?

No se trata sólo de enviar y recibir correos electrónicos; es un sistema completo que gestiona las comunicaciones por correo electrónico con los clientes. Puede mantener un historial de todas las interacciones, para saber exactamente qué se dijo y cuándo.

2. ¿Puedes automatizar las respuestas por correo electrónico?

– ¡Absolutamente! Según ciertas palabras clave en el correo electrónico del cliente o criterios específicos, el sistema puede enviar una respuesta escrita previamente. Es instantáneo, por lo que los clientes no tienen que esperar y les da a los agentes reales más tiempo para manejar los problemas complejos que necesitan un toque humano.

3. ¿Cómo se asegura de que los correos electrónicos de los clientes se envíen a los agentes adecuados?

Utilice el enrutamiento de correo electrónico en Service Cloud. Usando las reglas que usted configura, los correos electrónicos se pueden dirigir a ciertos agentes según el contenido del correo electrónico, la información del cliente o incluso la carga de trabajo de cada agente.

Soporte Móvil

1. ¿Cómo respalda Salesforce el servicio al cliente móvil?

Con la aplicación móvil Salesforce, todo lo que puede hacer en su escritorio, ahora puede hacerlo en su teléfono: verificar los detalles del cliente, actualizar casos o incluso chatear con los clientes.

2. ¿Cuáles son las limitaciones del servicio al cliente móvil en Salesforce?

Dibujos animados y cómics de Parking Boot - imágenes divertidas de CartoonStock

Si bien la aplicación móvil Salesforce es súper poderosa, es un poco como intentar colocar una nave espacial en un lugar de estacionamiento. Algunas tareas o informes complejos pueden resultar difíciles de navegar en una pantalla más pequeña y es posible que ciertas personalizaciones no se muestren como lo hacen en un escritorio.

Métricas y análisis de rendimiento

1. ¿Cómo se mide la satisfacción del cliente en Service Cloud?

En Service Cloud, no solo responde las consultas de los clientes y espera que estén satisfechos; lo verifica utilizando herramientas como encuestas, puntajes CSAT y Net Promoter Scores (NPS). Puede enviarlos automáticamente después de que se resuelva un caso. Es como preguntar: "¿Qué le pareció nuestro servicio?" ¡para que puedas seguir viviendo esa experiencia de servicio cinco estrellas!

2. ¿Qué es una puntuación de satisfacción del cliente (CSAT)?

CSAT es como preguntarle a sus clientes, en una escala del 1 al 5. Es una puntuación que los clientes otorgan en función de su satisfacción con una interacción específica que tuvieron con su equipo de servicio. Cuanto mayor sea la puntuación, mejor trabajo hizo para cumplir (¡o superar!) sus expectativas.

3. ¿Qué es Net Promoter Score (NPS) y cómo se utiliza en Salesforce?

NPS es como preguntar a sus comensales: "¿Recomendaría nuestro restaurante a otras personas?" y luego, dependiendo de su respuesta, se agrupan en Promotores, Pasivos o Detractores. No se trata sólo de un plato de sopa; ¡Lo importante es si toda la experiencia gastronómica les hace querer contárselo a sus amigos! En Salesforce, puede enviar encuestas NPS y luego realizar un seguimiento de su puntuación a lo largo del tiempo, con el objetivo siempre de mejorar la experiencia del curso completo.

4. ¿Se pueden integrar herramientas de encuestas externas con Salesforce?

Puede integrarlo con herramientas de encuestas externas que quizás ya esté utilizando o prefiera, como SurveyMonkey o Google Forms. De esta manera, reúne todos esos comentarios cruciales en un solo lugar, lo que facilita ver el panorama general y tomar decisiones informadas.

Inteligencia artificial (IA)

1. ¿Qué es Salesforce Einstein y cómo se aplica a Service Cloud?

Salesforce Einstein utiliza IA para analizar las diferentes interacciones y datos, predecir las necesidades de los clientes e incluso automatizar las respuestas.

2. ¿Cómo funcionan los Bots de Einstein?

Se encargan de las tareas sencillas y rutinarias del servicio de atención al cliente, como responder preguntas comunes o guiar a un usuario a través de un proceso establecido.

3. ¿Puede Einstein sugerir respuestas a los agentes?

Es como un manual dinámico e inteligente que no sólo tiene todas las respuestas sino que también sabe exactamente cuándo proporcionarlas. Analiza el problema del cliente y proporciona al agente la mejor respuesta o solución, acelerando el servicio y asegurándose de que las "comidas" de su servicio al cliente sean siempre deliciosas.

Servicio de campo

1. ¿Qué es Field Service Lightning?

Vector libre | Banner de camión de comida de estilo de dibujos animados

Imagina que organizas un festival de camiones de comida, donde varios camiones sirven diferentes delicias por todo el lugar. Ahora, Field Service Lightning (FSL) es como tener un coordinador de eventos súper organizado que sabe qué camión de comida está dónde, qué sirven, quién está disponible para servir delicias y quién se toma un descanso. ¡Se trata de administrar su equipo sobre la marcha, asegurándose de que tengan los "ingredientes" correctos (herramientas, piezas) para resolver cualquier desafío "culinario" (problema del cliente) que encuentren en el campo!

2.¿Cómo se integra Field Service Lightning con Service Cloud?

Field Service Lightning, cuando se integra con Service Cloud, brinda información en tiempo real hacia y desde las unidades móviles (FSL), para que todos sepan lo que sucede a su alrededor.

3. ¿Puede programar y enviar agentes de servicio de campo utilizando Salesforce?

¡Absolutamente! Puede planificar horarios, asignar agentes a diferentes trabajos y asegurarse de que estén listos para mejorar sus especialidades según sea necesario. Y si hay una prisa repentina, el sistema puede redirigir a los agentes desde lugares menos concurridos para que ayuden, equilibrando la carga de trabajo y manteniendo contentos a los clientes.

Claro, profundicemos en las macros en Service Cloud de Salesforce con un enfoque conversacional fácil de recordar. ¡Imagínate que estamos charlando en tu cafetería favorita!

macros

1.¿Qué es una macro en Salesforce Service Cloud?

Es un atajo genial que realiza tareas repetitivas por ti. Entonces, si te encuentras haciendo los mismos clics una y otra vez, una macro dice: "¡Oye, ya tengo esto!". ¡Y listo!

2. ¿Todos pueden usar mis Macros?

Si los mantiene públicos, cualquiera puede usarlos. Pero si cree que su macro es secreta, puede guardársela para usted. En Salesforce, se trata de establecer permisos y compartir configuraciones.

3. ¿Pueden las macros interactuar con aplicaciones de terceros en Salesforce?

– Directamente, no. Las macros están diseñadas para automatizar las funcionalidades estándar de Salesforce.

4. ¿Es posible deshacer las acciones de una Macro una vez ejecutada?

No, no hay un botón "deshacer" para las macros. Una vez que se ejecuta una macro, sus acciones se consideran definitivas.

5. ¿Se pueden programar las macros para que se ejecuten a una hora específica?

No, las macros no se pueden programar. Son como un conjunto de herramientas manuales que requieren que alguien las utilice activamente; no funcionan con un temporizador automático.

6. ¿Qué tipo de acciones no puedes realizar con una Macro?

Las macros no pueden manejar procesos complejos de toma de decisiones, interactuar con sistemas externos ni crear registros.

7. ¿Cómo se organizan y gestionan las Macros para un equipo de agentes en Service Cloud?

Utilice carpetas para organizar y compartir colecciones de macros.

8. ¿Se puede modificar una macro activa? ¿Hay que tomar alguna precaución?

Sí, puede editar una macro y probar las modificaciones antes de su uso generalizado.

9. ¿Es posible asignar Macros específicas a usuarios o perfiles específicos?

Si bien no puede asignar una macro directamente a usuarios específicos, puede controlar el acceso utilizando las carpetas de macros y la configuración de uso compartido de Salesforce.

10. ¿Cómo se relacionan las macros con la API de Salesforce?

Las macros no interactúan directamente con la API de Salesforce. Funcionan dentro de la interfaz de usuario, automatizando las acciones manuales del usuario.

11. ¿Se pueden utilizar las macros junto con Salesforce Flows?

Las macros y los flujos tienen diferentes propósitos. Mientras que las Macros automatizan las acciones del usuario, los Flujos automatizan los procesos en el backend.

12. ¿Cómo funciona el manejo de errores con Macros?

Si una macro encuentra un problema durante la ejecución, se detiene y se muestra un mensaje de error.

13. ¿Pueden los usuarios sin privilegios de administrador crear o modificar macros?

Los usuarios pueden crear macros personales, pero crear o modificar macros compartidas normalmente requiere ciertos permisos o privilegios de administrador.

14. ¿Existe alguna forma de realizar un seguimiento de los cambios realizados por una Macro?

No existe un mecanismo de seguimiento directo para las macros, pero puede utilizar las funciones de seguimiento de auditoría estándar de Salesforce para ver los cambios en los registros.

15. ¿Cuál es el papel de las instrucciones macro en el proceso de creación?

Las instrucciones macro son el corazón de la macro y dictan qué acciones realiza. Elaborarlos es como escribir una lista detallada de tareas pendientes para otra persona; es necesario especificar cada paso de forma clara y en orden.

29. ¿Puedes usar macros para enviar correos electrónicos con archivos adjuntos?

No, las macros pueden automatizar el proceso de envío de un correo electrónico, pero no pueden agregar archivos adjuntos.

Omnicanal

1. ¿Puedes explicar qué es OmniCanal en Salesforce?

Conozca todo sobre: OmniCanal en Salesforce

OmniCanal es una característica de Salesforce que permite la gestión de elementos de trabajo entrantes desde diferentes canales de comunicación. Se trata de dirigir el trabajo adecuado a los agentes adecuados en el momento adecuado, en función de su disponibilidad y capacidad, garantizando que las cargas de trabajo se gestionen de manera eficiente.

2: ¿Cómo beneficia OmniCanal a un equipo de servicio al cliente?

OmniChannel ayuda a los equipos de servicio al cliente al distribuir el trabajo de manera uniforme entre los agentes, reducir los tiempos de espera de los clientes y permitir que los agentes manejen el trabajo desde varios canales dentro de una sola plataforma. Este enfoque simplificado conduce a un mejor servicio al cliente y una mayor productividad de los agentes.

3. ¿Cuál es la diferencia entre OmniCanal y distribución del trabajo tradicional?

La distribución tradicional del trabajo a menudo implica una asignación manual, lo que puede llevar mucho tiempo y ser ineficiente. OmniChannel, por otro lado, dirige automáticamente el trabajo a los agentes más adecuados según criterios preestablecidos y la disponibilidad de los agentes en tiempo real, lo que hace que el proceso sea más rápido y eficiente.

4. ¿Puede explicar el “Estado de presencia” en OmniCanal?

“Estado de presencia” se refiere a la disponibilidad actual de un agente para recibir trabajo. Los agentes pueden configurar su estado para mostrar si están disponibles, ocupados o ausentes, y OmniCanal utiliza esta información para enrutarles el trabajo en consecuencia.

5. ¿Cómo garantiza OmniCanal que los casos de alta prioridad se manejen rápidamente?

OmniCanal permite a los administradores establecer niveles de prioridad para diferentes tipos de trabajo. Cuando llegan elementos de trabajo, se enrutan automáticamente según estos niveles de prioridad. Los elementos de alta prioridad se envían al principio de la cola para que se atiendan más rápido.

6. ¿Se puede integrar OmniCanal con otras funciones de Salesforce?

Sí, OmniCanal se integra perfectamente con otras funciones de Salesforce. Por ejemplo, funciona con Service Cloud para gestionar procesos de atención al cliente, Sales Cloud para procesos de ventas e incluso aplicaciones personalizadas de Salesforce.

7. ¿Cómo admite OmniCanal los diferentes canales de comunicación?

OmniCanal es versátil al admitir varios canales de comunicación como correo electrónico, chat, SMS y redes sociales. Dirige todos estos diferentes tipos de trabajo a los agentes a través de la misma plataforma, garantizando un enfoque unificado del servicio al cliente.

8. ¿Puede describir un escenario en el que el enrutamiento omnicanal podría resultar beneficioso?

Imagine un escenario en el que hay un gran volumen de solicitudes de servicio entrantes y una cantidad limitada de agentes disponibles. OmniCanal dirige eficientemente las solicitudes a los agentes disponibles según sus habilidades, carga de trabajo y prioridad de los casos, garantizando una carga de trabajo equilibrada y respuestas oportunas.

9. ¿Cuáles son los tipos de Omni Channel?

Basado en cola → Asignar agentes a la cola

Basado en habilidades → Asignar habilidades a los agentes

Enrutamiento externo → Configuración de enrutamiento de terceros

10. ¿Cómo configurar Omni Channel?

  1. Habilite OmniCanal.
  2. Crear canales de atención.
  3. Cree configuraciones de enrutamiento.
  4. Asociar configuraciones de enrutamiento y agentes con colas.
  5. Crear configuraciones de presencia.
  6. Crear estados de presencia.
  7. Agregue el widget omnicanal.

11. ¿Cómo crear un Canal de Atención?

Se puede crear un canal de servicio para cualquier objeto de Salesforce, como un caso, cliente potencial, sesión SOS o objeto personalizado.

12. ¿Cómo crear una configuración de enrutamiento?

Las configuraciones de enrutamiento determinan cómo se enrutan los elementos de trabajo a los agentes.

Utilícelos para priorizar la importancia relativa y el tamaño de los elementos de trabajo de sus colas.

13. ¿Explicar los ajustes de configuración de enrutamiento?

Prioridad de ruta:

El orden en el que los elementos de trabajo de la cola asociados con esta configuración de enrutamiento se enrutan a los agentes. Los objetos en colas con un número menor se enrutan primero a los agentes.

Modelo de enrutamiento:

Determina cómo se enrutan los elementos de trabajo entrantes a los agentes asignados al canal de servicio de configuración.

Tiempo de espera de empuje (segundos):

Establece un límite de tiempo para que un agente responda a un elemento antes de enviarlo a otro agente.

Unidades de Capacidad:

Cantidad de capacidad total del agente.

Preguntas basadas en escenarios

1. ¿Cómo diseñaría una solución para respaldar a un equipo de soporte multilingüe que utiliza Service Cloud?

Service Cloud de Salesforce admite equipos multilingües mediante el uso de funciones como Translation Workbench, que le permite traducir objetos estándar y personalizados, reglas de validación, etiquetas de campo y más, a cualquiera de los idiomas admitidos.

Además, los artículos de conocimiento se pueden escribir y traducir a varios idiomas, lo que permite a los agentes de soporte acceder y proporcionar información en varios idiomas.

También puede configurar OmniCanal para enrutar casos a los agentes adecuados según sus habilidades lingüísticas. De esta manera, los clientes pueden interactuar con el soporte en su idioma preferido, mejorando la satisfacción del cliente.

2. ¿Puede explicarme el proceso de diseño de una solución de Service Cloud que incorpore reglas de escalamiento de casos y SLA para garantizar una resolución oportuna del caso?

  1. Es necesario definir los SLA, es decir, el tiempo dentro del cual se deben resolver casos de ciertos tipos o prioridades.
  2. Una vez definidos, configurará los procesos de derechos para especificar el cronograma para cada etapa de resolución del caso.
  3. Luego, usaría Milestones dentro de estos procesos para rastrear si los casos se están resolviendo dentro de los SLA definidos.
  4. Las reglas de escalamiento de casos se usarían para escalar casos que estén en peligro de violar sus SLA. Estos se pueden configurar para escalar según la antigüedad del caso, la prioridad o incluso si el caso ha estado inactivo. Los casos escalados pueden luego remitirse automáticamente a agentes o supervisores con más experiencia para recibir atención urgente.

3. ¿Cómo abordaría el diseño de una solución para un centro de llamadas a gran escala que necesita gestionar grandes volúmenes de casos y llamadas?

– Para los centros de llamadas de gran volumen, le conviene aprovechar la función OmniCanal de Service Cloud, que garantiza que los casos se dirijan a los agentes adecuados según su disponibilidad y conjunto de habilidades, lo que ayuda a gestionar la carga de trabajo de manera eficiente. La integración de la telefonía mediante Open CTI permite a los agentes recibir y realizar llamadas directamente dentro de Salesforce, garantizando que tengan toda la información relevante del cliente al alcance de su mano.

4. ¿Cuál es su experiencia con la integración de aplicaciones de terceros en Service Cloud y cómo ha abordado la solución de problemas de integración en el pasado?

Mi enfoque implica primero garantizar que la aplicación de terceros tenga una documentación API sólida y cumpla con las mejores prácticas de seguridad y cumplimiento. Salesforce ofrece varias formas de integración, como mediante API REST o SOAP, servicios externos o incluso mediante aplicaciones AppExchange, si están disponibles.

5. ¿Cómo diseñaría una solución que utilice Service Cloud para rastrear la opinión del cliente e incorporar esa información en los flujos de trabajo de gestión de casos?

Service Cloud puede integrarse con herramientas que ofrecen análisis de sentimientos, incluido Einstein Sentiment de Salesforce. Al analizar el texto de las interacciones con los clientes (correos electrónicos, transcripciones de chat, publicaciones en redes sociales), se puede determinar el sentimiento (positivo, neutral, negativo). Estos datos de opinión se pueden almacenar como un campo en el objeto Caso o en un objeto personalizado relacionado.

6. ¿Puede dar un ejemplo de cómo ha utilizado Service Cloud para mejorar las capacidades de autoservicio del cliente y reducir la cantidad de solicitudes de soporte entrantes?

Una estrategia eficaz es implementar una comunidad o portal de clientes utilizando Salesforce Community Cloud, integrado con Service Cloud. Aquí se puede acceder a los artículos de la base de conocimientos, lo que permite a los clientes encontrar respuestas a sus preguntas. También se pueden crear casos directamente desde la comunidad y los clientes pueden verificar su estado sin necesidad de comunicarse con el soporte. La implementación de un chatbot a través de Einstein Bots también puede desviar consultas rutinarias al proporcionar respuestas automáticas a preguntas comunes.

7. ¿Has trabajado con Service Cloud Voice? ¿Cómo ha utilizado esta tecnología para mejorar el rendimiento del call center y la satisfacción del cliente?

Service Cloud Voice integra la telefonía en Salesforce, brindando una vista unificada del cliente y transcripción de llamadas en tiempo real. Esto permite a los agentes centrarse más en el cliente que en tomar notas. La transcripción en tiempo real, impulsada por Einstein, también puede proporcionar sugerencias para el siguiente paso, ayudando a los agentes más nuevos. La conclusión posterior a la llamada se acelera porque los datos de la llamada ya están en Salesforce, lo que reduce el trabajo posterior a la llamada y, en consecuencia, los tiempos de espera para los clientes. Los datos históricos de llamadas brindan información valiosa para el análisis de la opinión del cliente y el desempeño de los agentes, lo que impacta positivamente la capacitación y la satisfacción del cliente.

8. ¿Cómo abordaría el diseño de una solución para una empresa que opera en varios países con diferentes regulaciones de privacidad de datos?

– El cumplimiento de diversas normas de privacidad de datos se puede gestionar en Service Cloud mediante el uso de funciones como opciones de residencia de datos para almacenar datos en regiones específicas, enmascaramiento de datos, cifrado, seguridad a nivel de campo y reglas de acceso a registros para controlar quién puede acceder a qué datos.

9. ¿Cómo ha abordado los problemas de escalabilidad y rendimiento al diseñar soluciones de Service Cloud para grandes empresas?

  • Para las grandes empresas, las consideraciones incluyen la gestión del volumen de datos, el uso de las herramientas de optimización del rendimiento integradas de Salesforce y la revisión periódica de la organización para eliminar configuraciones y personalizaciones obsoletas.
  • También es importante diseñar con una mentalidad de “clics, no código” para minimizar el código personalizado, que puede introducir complejidad y sobrecarga de rendimiento.
  • Cuando es necesario un código personalizado, es vital seguir las mejores prácticas para la masificación y las consultas SOQL eficientes. Finalmente, el monitoreo a través del Optimizador, Health Check y otras herramientas de Salesforce puede ayudar a identificar y mitigar problemas de rendimiento de manera proactiva.

10. ¿Cómo ha utilizado Service Cloud para mejorar la retención de clientes y reducir las tasas de abandono?

En Service Cloud, la retención de clientes se puede mejorar significativamente utilizando las sólidas funciones de servicio al cliente de la plataforma. Por ejemplo, aprovecho las capacidades de análisis e informes de Service Cloud para realizar un seguimiento de las puntuaciones de satisfacción del cliente e identificar problemas comunes que provocan la insatisfacción del cliente. Al integrar los comentarios directamente en el sistema de gestión de casos, los agentes pueden abordar las inquietudes de manera proactiva antes de que se intensifiquen, lo que impacta directamente en la satisfacción y retención del cliente. Además, características como la comunicación personalizada con el cliente, artículos de conocimiento para el autoservicio y la resolución eficiente de casos a través del enrutamiento y escalamiento automatizados de casos ayudan a mantener una experiencia positiva para el cliente, reduciendo así la deserción.

11. ¿Ha trabajado con la funcionalidad Live Agent de Service Cloud? ¿Cómo ha utilizado esta tecnología para mejorar las experiencias de atención al cliente?

Sí, utilicé Live Agent dentro de Service Cloud para mejorar el soporte que reciben los clientes en tiempo real. Al integrar Live Agent, los clientes pueden chatear instantáneamente con agentes de soporte, lo que reduce los tiempos de espera y mejora la satisfacción general. Descubrí que incorporar el chat de Live Agent en sitios web y aplicaciones móviles donde los clientes son más activos reduce significativamente la barrera para acceder al soporte.

12. ¿Puede describir cómo diseñaría una solución de Service Cloud que incorpore el enrutamiento automatizado de casos al agente apropiado según el problema del cliente y el conjunto de habilidades del agente?

Para lograr esto, aprovecharíamos la función OmniCanal, que permite enrutar los casos según el conjunto de habilidades, la disponibilidad y la carga de trabajo del agente.

  1. Comenzaría por definir varios conjuntos de habilidades de agentes dentro del sistema y asociaría estas habilidades con los agentes correspondientes.
  2. Luego, establecía configuraciones de enrutamiento, donde los casos entrantes se evalúan según criterios predefinidos relacionados con el problema del cliente y luego se los relaciona con un agente que posee el conjunto de habilidades requerido.

13. ¿Cómo abordaría el diseño de una solución de Service Cloud que pueda manejar grandes volúmenes de casos manteniendo tiempos de respuesta consistentes y niveles de satisfacción del cliente?

  • Primero, implementaría reglas de asignación de casos para automatizar la distribución de casos a los agentes o colas correctos.
  • Luego, utilizaría la función de reglas de escalamiento de casos de Service Cloud para priorizar casos urgentes o de alto impacto.
  • Para mantener tiempos de respuesta constantes, se pueden utilizar funciones como reglas de respuesta automática para reconocer inmediatamente los envíos de casos.
  • Además, integraría una base de conocimientos integral para facilitar las opciones de autoservicio, reduciendo así la carga de casos para los agentes.

50% Me gusta VS
50% No me gusta

Seguir leyendo

Las Mejores Alternativas a Salesforce Experience Cloud

Las Mejores Alternativas a Salesforce Experience Cloud

Última actualización el 22 de septiembre de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • ¿Cuáles son las mejores alternativas a Experience Cloud del mercado? ¿Y es posible encontrar una herramienta sin código que le permita crear portales y aplicaciones totalmente personalizables?

Objetivos:

Después de leer este blog, tendrás:

  • Comprensión de Salesforce Experience Cloud, incluidas sus fortalezas y debilidades.
  • Conocimiento de los pros y los contras de utilizar desarrollo personalizado para crear portales y aplicaciones web.
  • Una introducción a Titan Web, con una explicación de cómo esta herramienta de código cero puede brindarle la libertad de crear cualquier aplicación web o portal que desee.

El director de ventas Eric Brown se acercó a Isabella Stewart , administradora de Salesforce en Gurukul On Cloud (GoC). Eric quiere un sistema totalmente digitalizado para gestionar los procesos internos de recursos humanos. La directora de recursos humanos y su equipo están muy ocupados utilizando procesos manuales y parcialmente digitalizados para contratar, gestionar nóminas y cuidar el bienestar de los empleados. ¡Asegurarse de que todo el papeleo y la administración estén actualizados es una pérdida de hasta 12 horas cada semana! Está empezando a ser abrumador.

La empresa quiere un portal para empleados rentable y totalmente personalizable, integrado con Salesforce, que no requiera codificación ni conocimientos técnicos especiales para su implementación. Saben que Salesforce Experience Cloud es una posible solución, pero también les preocupa que sea costoso y no lo suficientemente flexible para sus necesidades. Entonces, ¿cuáles son las alternativas de Experience Cloud ?

Experiencia en la nube

Salesforce Experience Cloud, anteriormente conocida como Salesforce Community, se introdujo en 2013 como una plataforma para crear comunidades en línea de marca. A lo largo de los años, Salesforce Experience Cloud evolucionó con actualizaciones y mejoras. Hoy en día, sirve como una solución integral para crear portales atractivos, aplicaciones web, comunidades y experiencias de autoservicio, lo que permite a las organizaciones ofrecer interacciones fluidas e impulsar el compromiso de clientes, socios y empleados.

La creación de aplicaciones web y portales de autoservicio con Experience Cloud puede mejorar la experiencia de sus empleados en el lugar de trabajo y aliviar la presión de su departamento de recursos humanos. Un portal de autoservicio o una aplicación web creada con Experience Cloud proporciona a los empleados acceso directo a su información personal y profesional, lo que facilita la actualización de información y registros en cualquier momento o lugar.

Echemos un vistazo más de cerca a algunas de las ventajas y desventajas de utilizar Experience Cloud para crear portales para su organización.

Las mayores ventajas de Experience Cloud:

  • Plantillas listas para usar para impulsar su implementación
  • Soluciones Lightning Bolt disponibles de forma gratuita o compradas en Salesforce AppExchange
  • Acceso completo a los datos de Customer 360 guardados en Salesforce
  • Salesforce Experience Cloud funciona a través de un software intuitivo de arrastrar y soltar, por lo que no es necesario tener ninguna experiencia técnica especial ni conocimientos de codificación.
  • Dado que Experience Cloud es nativo de Salesforce, no es necesario realizar ningún trabajo de integración adicional. El software ya habla el idioma de los administradores de Salesforce y tiene la interfaz de usuario con la que estarían familiarizados.
  • Puedes crear páginas públicas y privadas. La ventaja de esto es que sólo los usuarios con los permisos de acceso adecuados podrán visitar espacios específicos.
  • Las opciones listas para usar de Experience Cloud le brindan G2M rápido y lo más probable es que pueda crear su portal o sitio en uno o dos días.
  • También tiene la opción de diseñar su portal o sitio web de la manera que desee utilizando imágenes y colores personalizados para que coincidan con la apariencia de su marca.
  • Listo para dispositivos móviles

Contras de Experience Cloud:

  • Las opciones listas para usar no le brindan mucha flexibilidad para personalizar y ajustar el diseño de su página para satisfacer sus necesidades.
  • Experience Cloud es algo limitado desde la perspectiva de la experiencia del usuario; por ejemplo, no puede utilizar elementos repetidos, edición en línea de tablas, pantallas modales y otros elementos atractivos. Por ejemplo, es posible que desee crear un elemento que abra la biblioteca de cámaras del usuario al hacer clic en él, pero con Salesforce Experience Cloud esto es imposible.
  • Salesforce Experience Cloud es definitivamente caro, por lo que si desea optar por esta solución, prepárese para pagar
  • No se puede diferenciar entre la experiencia del usuario de escritorio y móvil usando opciones listas para usar. Para ello es necesario recurrir al desarrollo personalizado.
  • Sin validaciones de entrada en tiempo real. Primero debes hacer clic en el botón “Guardar”.
  • Las integraciones fuera de Salesforce son tareas complejas y requieren un desarrollo extenso
  • Hay una cantidad limitada de plantillas disponibles y estas solo cubren casos de uso específicos. Esto significa que es posible que no encuentre la plantilla adecuada para las necesidades de su negocio.

Ejemplo de plantillas de Salesforce Experience Cloud a continuación. Crédito: https://www.salesforce.com/products/experience-cloud/features/templates/

¿Puede el desarrollo personalizado superar las limitaciones de Experience Cloud?

Aprovechar los recursos del desarrollo personalizado es otra forma de crear un portal o sitio web que se adapte a las necesidades de su negocio. Y en muchos sentidos, esta opción le ayuda a superar las limitaciones de Experience Cloud. Estas son algunas de las principales razones para utilizar el desarrollo personalizado, así como sus inconvenientes:

Ventajas del desarrollo personalizado:

  • Lo bueno de utilizar el desarrollo personalizado para crear sus aplicaciones y portales es que puede hacer lo que quiera con su lienzo en blanco, por ejemplo, integrarlo con múltiples sistemas externos a Salesforce.
  • Puede emplear desarrolladores para crear cualquier UX que desee, de modo que no esté limitado a Salesforce UX al determinar la experiencia que tienen los clientes cuando visitan su sitio.
  • Puedes crear diseños dinámicos para cualquier dispositivo, por ejemplo, portátil o móvil, sin restricciones.
  • Su portal o sitio puede personalizarse para cualquier caso de uso que se le ocurra. ¡Si puedes soñarlo puedes hacerlo!
  • Proporciona mayor control y propiedad: con un portal o sitio web de desarrollo propio, las organizaciones tienen total propiedad y control sobre la propiedad intelectual, el código fuente y las mejoras futuras.

El desarrollo personalizado ofrece la gran ventaja de brindarle libertad absoluta para crear el portal de sus sueños sin barreras, restricciones ni compromisos. Pero este método no está exento de desventajas. Vea a continuación algunos de los principales puntos débiles:

Desventajas del desarrollo personalizado:

  • Falta de experiencia técnica: desarrollar un portal o una aplicación web requiere habilidades y recursos técnicos especializados
  • Limitaciones de tiempo y recursos: crear una aplicación o un portal web puede ser un proceso que requiere mucho tiempo y una inversión significativa.
  • La salida al mercado puede verse seriamente retrasada, lo que podría afectar negativamente a sus objetivos comerciales.
  • Rápidos avances tecnológicos: el panorama tecnológico evoluciona continuamente y periódicamente surgen nuevas características, marcos y plataformas. Desarrollar una aplicación web o un portal internamente requiere mantenerse actualizado con las últimas tecnologías y mejores prácticas.
  • Desafíos de mantenimiento y soporte: una vez que se desarrolla un portal de autoservicio o una aplicación web, el mantenimiento y el soporte continuos son esenciales para su buen funcionamiento.
  • Básicamente, dependerá de los recursos de desarrollo y se verá paralizado cuando desee realizar actualizaciones simples. ¡No suena divertido!
  • Problemas de integración: desarrollar una aplicación web o un portal internamente puede plantear conflictos de integración con sistemas, bases de datos o servicios de terceros existentes.
  • Consideraciones de seguridad y cumplimiento: crear una aplicación o un portal seguro implica implementar medidas de seguridad sólidas y garantizar el cumplimiento de las normas de protección de datos.
  • Centrarse en las competencias básicas: las organizaciones deben evaluar si el desarrollo de una aplicación o portal se alinea con sus competencias básicas y prioridades estratégicas.
  • ¡Dinero dinero dinero! Esta es definitivamente tu opción más cara, así que prepárate para acumular una factura.

¡Haciéndolo todo con la plataforma de experiencia digital de Titan!

Titan es una plataforma de experiencia completa que le brinda la libertad de crear sus propios portales, sitios de autoservicio, formularios de Salesforce , encuestas y mucho más. Y es una de las mejores alternativas a Experience Cloud del mercado.

Titan es una plataforma sin código con una interfaz intuitiva de arrastrar y soltar que permite a los administradores de Salesforce crear y configurar sitios web potentes para cualquier industria y caso de uso. Entonces, la verdadera pregunta es: ¿cómo se compara Titan con Experience Cloud? ¿Tiene también ventaja sobre el desarrollo personalizado? A continuación, detallamos cómo Titan Web puede permitirle crear sitios web impresionantes y portales personalizados:

Puntos ganadores de Titán:

  • Plataforma de código cero con una interfaz sencilla de arrastrar y soltar, por lo que no necesita gastar dinero en desarrollos costosos
  • Integración bidireccional en tiempo real con Salesforce y acceso completo a Customer 360
  • Plantillas listas para usar para acelerar su comercialización
  • Experiencia de usuario 100 % flexible por dispositivo para viajes de cliente personalizados
  • Totalmente de marca para que coincida con la apariencia de su organización.
  • El enfoque móvil primero le brinda la capacidad de escalar
  • Totalmente seguro y compatible con los principales marcos regulatorios como GDPR, SOC 2 e HIPAA
  • Cree perfiles personalizados para clientes y socios que sean fáciles de implementar
  • Genere documentos y fírmelos desde su aplicación o portal
  • Capacidades sin conexión para que pueda utilizar esta herramienta incluso cuando esté fuera del alcance de Internet
  • Compatible con múltiples idiomas y monedas
  • Integraciones integradas de terceros
  • Capacidades completas de gestión de versiones
  • Rentable en comparación con la competencia

Ahora, echemos un vistazo a las desventajas de Titan:

  • El tiempo de incorporación puede variar entre 4 y 20 horas, según la complejidad de su caso de uso.
  • Ocasionalmente, para una lógica o un diseño de diseño muy complejos, una organización necesitará agregar código JS y/o CSS para ajustarse a sus necesidades.
  • El dominio/subdominio del sitio web está limitado a uno por cliente. Se pueden comprar dominios adicionales por un costo adicional

El arma secreta de Titan es su poder para crear aplicaciones web totalmente personalizables sin tener que escribir una sola línea de código. Sin concesiones ni agendas ocultas para que pueda acelerar su comercialización.

Comparación de Experience Cloud frente a la competencia

Arriba, profundizamos en Salesforce Experience Cloud y sus principales alternativas. Pero, ¿cuál es el resultado final y quién sale como el verdadero ganador? Eche un vistazo a nuestra tabla comparativa a continuación para descubrirlo:

Experiencia en la nube Desarrollo a la medida Plataforma Titán
Costo Medio Muy caro Medio
Hora de comprar Corto Largo Muy corto
Esfuerzo de mantenimiento prolongado Bajo Muy alto Bajo
Recursos necesarios para el proyecto Administrador de SF Desarrolladores Administrador de SF
Flexibilidad de diseño Muy poco Lleno Lleno
Experiencia de usuario Lo mismo que Salesforce. No puedes crear tu propia experiencia de usuario Puedes desarrollar cualquier cosa que puedas soñar. Casi todo lo que puedas soñar
Marca Sí con temas personalizados Sí con temas personalizados
Integración de Salesforce Requiere desarrollo por integración.
Integraciones de terceros Requiere complementos pagos o desarrollo Requiere complementos pagos o desarrollo
Validaciones de datos en tiempo real No
Flujo de trabajo y automatización No
Móvil Listo para dispositivos móviles Diseño completamente dinámico por dispositivo Diseño completamente dinámico por dispositivo
Conocimiento de Salesforce Compatible Requiere desarrollo Compatible
Compromiso digital de Salesforce Compatible Requiere desarrollo Compatible

Depende 100% de usted decidir las funciones y capacidades que necesita para crear los sitios web y portales de sus sueños. Pero está claro que si está buscando una herramienta web sin código, ultraflexible y rentable que mejore la experiencia del usuario, Titan es una excelente opción.

Quizás recuerde que anteriormente en este artículo una empresa estaba buscando una solución flexible y sin código para crear un portal de recursos humanos para los empleados. Eligieron utilizar Titan y estos son los resultados:

  • Los empleados inician sesión en el portal:
  • Reciben una autenticación de dos factores enviada a su correo electrónico para que puedan iniciar sesión en el portal sin administrar ninguna otra contraseña.
  • Las páginas web y los portales se muestran dinámicamente según la autenticación del usuario, proporcionando una experiencia de usuario dinámica con cada clic.
  • Todo está construido sólo con herramientas de arrastrar y soltar. No es necesaria ninguna codificación, ya que todos los datos fluyen hacia y desde Salesforce en tiempo real.
  • El Portal de Recursos Humanos brinda a los empleados un fácil acceso a información personal y profesional, lo que hace que sea muy conveniente actualizar registros y sus propios datos personales:
  • Los formularios digitales personalizados han eliminado los errores de entrada y las imprecisiones de los datos con el precompletado dinámico utilizando datos de Salesforce.
  • En el pasado, cada vez que un empleado quería reservar sus días de vacaciones, tenía que completar un formulario de licencia manual, escanearlo y enviarlo por correo electrónico a Recursos Humanos para su aprobación. Ahora simplemente hacen clic en la pestaña de días de vacaciones para gestionar las solicitudes de licencia.
  • El Portal de Recursos Humanos del Empleado permite a los empleados registrar pedidos de equipos de TI directamente desde sus dispositivos móviles, computadoras portátiles y de escritorio.
  • Los empleados pueden presentar solicitudes de gastos de la empresa antes de que se procesen para la nómina y pueden presentar las solicitudes para recibir el pago antes de la fecha límite de nómina. Esto significa que no hay que esperar a que se paguen las reclamaciones de gastos.
  • Incluso hay un Centro de conocimiento donde los empleados pueden obtener respuestas a todas sus preguntas frecuentes y solucionar problemas rápidamente:
  • Recursos Humanos ahorra 40 horas al mes en trabajo manual (¡incluida la nómina!) y los empleados están más comprometidos.
  • La empresa logró hacer todo esto dentro del presupuesto y en un tiempo récord, sin tener que implementar ningún código ni desarrollo personalizado.

Prueba de concepto

Consulte este portal de recursos humanos sin código donde los empleados pueden iniciar sesión y realizar diversas acciones de autoservicio:

[contenido incrustado]

Salesforce Experience Cloud es una solución conocida con un historial decente en permitir a las empresas crear aplicaciones y portales para mejorar la experiencia del cliente. Aun así, no está exento de limitaciones: falta de flexibilidad en lo que respecta a la experiencia del usuario, ninguna opción real para diferenciar entre la experiencia de escritorio y móvil, y dificultad para integrarse con herramientas fuera de Salesforce, ¡por nombrar solo algunas!

Utilizar el desarrollo personalizado para crear su propia aplicación o portal personalizado resolverá la mayoría de los mayores problemas de Experience Cloud. Con el desarrollo personalizado, obtienes total libertad para crear cualquier portal o aplicación que puedas soñar y obtener diseños dinámicos para cualquier dispositivo. Si bien el desarrollo personalizado mitiga los puntos débiles de Experience Cloud, esta solución presenta sus propios desafíos, que incluyen trabajo y mantenimiento de desarrollo complicados, gastos adicionales y una comercialización más lenta.

Titan gana a lo grande al brindarle lo mejor de ambos mundos: obtiene software de arrastrar y soltar combinado con la libertad y flexibilidad que brinda el desarrollo personalizado. Si está buscando la alternativa líder a Experience Cloud y le gustó lo que leyó, ¡póngase en contacto hoy!

Evaluación formativa

¿Qué es lo que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntete libre de compartir en los comentarios a continuación.

Seguir leyendo

Einstein GPT para desarrolladores: ahora en versión piloto ☁️

Einstein GPT para desarrolladores: ahora en versión piloto ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Einstein GPT para desarrolladores: ahora en fase piloto | Blog de desarrolladores de Salesforce

La IA generativa es una tecnología transformadora que aumenta la productividad de los desarrolladores, acelera el desarrollo de aplicaciones de software y reduce la barrera para que cualquiera aprenda a programar. En el TrailblazerDX de este año, anunciamos Einstein GPT para desarrolladores , la solución de inteligencia artificial generativa de Salesforce que libera la productividad de los desarrolladores y les permite desarrollar Salesforce más rápido . Hoy, estamos encantados de anunciar que Einstein GPT para desarrolladores ahora está en piloto cerrado.

Creado específicamente para lenguajes y marcos de Salesforce, Einstein GPT para desarrolladores puede generar código Apex utilizando lenguaje natural. El soporte para LWC llegará pronto. Nuestro objetivo es que esté disponible en Beta abierta en Dreamforce 23 , para que todos puedan tener acceso a la herramienta. En este blog, exploraremos cómo comenzar con Einstein GPT para el desarrollo de Apex y cómo su potencial puede revolucionar su proceso de desarrollo.

Einstein GPT para desarrolladores frente a otras herramientas de codificación de IA

Las herramientas de codificación de IA generativa disponibles en la actualidad se entrenan principalmente en lenguajes públicos, como Java, Python y otros, así como en código disponible públicamente. Dado que los lenguajes específicos de Salesforce, como Apex y LWC, son propietarios, estas herramientas a menudo carecen de la capacitación necesaria para brindar recomendaciones precisas.

Además, las herramientas de codificación de IA son tan poderosas como el contexto que se les proporciona. Dado que estas herramientas de codificación públicas carecen del contexto de Salesforce de su organización, como los metadatos, las recomendaciones pueden ser inexactas o insuficientes para satisfacer sus necesidades. Por último, el uso de herramientas de inteligencia artificial disponibles públicamente expone su código privado más allá del límite de confianza de Salesforce y podría hacerlo público, una posible vulnerabilidad de seguridad.

Con Einstein GPT para desarrolladores, utilizamos CodeGen , nuestro propio modelo de código abierto para la síntesis de programas. Hospedamos CodeGen dentro del límite de confianza de Salesforce y lo hemos capacitado en lenguajes específicos de Salesforce como Apex y LWC. Con una base dinámica incorporada al proceso de generación de código, Einstein GPT enriquece sus recomendaciones utilizando sus metadatos y código. Nuestra capa de confianza de IA dentro de Einstein GPT garantiza que sus datos y código permanezcan seguros dentro de Salesforce y nunca se almacenen externamente.

Comience con Einstein GPT para desarrolladores

Einstein GPT para desarrolladores se encuentra actualmente en una fase piloto cerrada. Nuestro plan es que esté disponible en Open Beta para Dreamforce 2023. Una vez que su organización esté habilitada para esta herramienta, puede instalar la extensión Einstein GPT en su VS Code Desktop usando un archivo VSIX compartido. Einstein GPT también estará disponible en Code Builder , nuestro IDE basado en web, que se espera que esté disponible de forma general en octubre. ¡Estén atentos a las actualizaciones!

Para utilizar la herramienta Einstein GPT para desarrolladores de forma eficaz:

  1. Abra su VS Code, vaya a Archivo > Abrir carpeta en el menú y abra un proyecto de Salesforce DX existente o configure un nuevo proyecto.
  2. Para trabajar con Einstein GPT para desarrolladores, ejecute el comando SFDX: Autorizar una organización para conectarse a una organización sandbox o a una organización borrador de Salesforce. Podrá utilizar Einstein GPT para desarrolladores dentro de este entorno.

Si está utilizando organizaciones borrador, active Einstein GPT para desarrolladores habilitando la función adicional de organización borrador. Simplemente edite y guarde el archivo config/project-scratch-def.json en su proyecto DX y agregue la función EinsteinGPTForDevelopers a su lista de funciones existente.

Por ejemplo:

Finalmente, puede comenzar a generar código Apex escribiendo un mensaje mediante el comando Paleta de comandos: SFDX: generar código con Einstein GPT (ver captura de pantalla a continuación) . Tenga en cuenta que debe estar dentro de un archivo Apex ( .cls ) para que aparezca el comando.

A continuación se muestra un mensaje de ejemplo:

Quiero crear una clase de Apex. Llamémoslo OpportunityQuerySelector. Cree un método llamado getSumOfOpportunityRecords que recupere la cantidad de registros de oportunidades vinculados a un registro de cuenta específico. El método debe aceptar accountId como parámetro. Siga las mejores prácticas de seguridad y asegúrese de que el código se ejecute en el modo de usuario.

Y luego el resultado se muestra a continuación.

Si bien el código generado anteriormente no requirió muchas ediciones, es posible que necesite personalizar la salida generada por Einstein GPT según sus necesidades durante el desarrollo. El panel Einstein GPT: Historial y comentarios dentro del IDE le permite compartir comentarios sobre el resultado generado. ¡Estos comentarios son imprescindibles para ayudarnos a capacitar a nuestro LLM y mejorar su resultado! Estamos emocionados de escuchar sus comentarios.

Transformando el proceso de desarrollo

Recién estamos comenzando con la IA generativa para transformar su flujo de trabajo de desarrollo. Mira lo que viene pronto:

  • Compatibilidad con Lightning Web Component (LWC): genere código LWC basado en el procesamiento del lenguaje natural (NLP)
  • Finalización predictiva de código en línea: complete automáticamente la siguiente línea de código sugerida con metadatos contextuales del proyecto.
  • Verificación del rendimiento del código: escanee el código Apex y corrija errores de tiempo de ejecución durante el proceso de desarrollo
  • Asistencia conversacional: Pídale a Einstein que genere código contextual y documentación, explique el código o resuelva problemas complejos.

Conclusión

A medida que Einstein GPT para desarrolladores amplíe sus capacidades para admitir LWC, proporcionar finalización de código inteligente y brindar asistencia conversacional, podrá desarrollar la plataforma Salesforce más rápido que nunca. Nuestro objetivo es que esté disponible en Beta abierta en Dreamforce 2023 , para que todos puedan tener acceso a la herramienta. ¡Únase a nosotros en Dreamforce '23 para jugar y profundizar en Einstein GPT para desarrolladores!

Recursos adicionales

Sobre el Autor

Mohith Shrivastava es desarrollador defensor en Salesforce con una década de experiencia en la creación de productos a escala empresarial en la plataforma Salesforce. Mohith se encuentra actualmente entre los principales contribuyentes de Salesforce Stack Exchange, un foro de desarrolladores donde los desarrolladores de Salesforce pueden hacer preguntas y compartir conocimientos. Puedes seguirlo a través de LinkedIn .

Obtenga las últimas publicaciones de blog y episodios de podcasts para desarrolladores de Salesforce a través de Slack o RSS.

Añadir a holgura Suscríbete a RSS

Seguir leyendo

Validaciones personalizadas mediante flujos activados por registros

Validaciones personalizadas mediante flujos activados por registros

Última actualización el 3 de agosto de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • ¿Cómo se escribe una regla de validación utilizando un flujo desencadenado por registros antes de guardar sin crear metadatos adicionales?

Objetivos:

Después de leer este blog, podrá:

  • Comprender la regla de validación
  • Flujo antes de guardar activado por registro de usuario para crear una regla de validación
  • Mostrar el mensaje de error en la parte superior de la página
  • Y mucho más

👉 Anteriormente, escribí varias publicaciones sobre la validación y Salesforce Flow. ¿Por qué no echarles un vistazo mientras estás en ello?

  1. Adición de validación a los componentes de la pantalla de flujo
  2. ¿Regla de validación usando un flujo antes de guardar? ¡Sí!
  3. Cómo corregir el error FIELD_CUSTOM_VALIDATION_EXCEPTION)

A Benjamin Moore , administrador de Salesforce en Gurukul On Cloud (GoC), se le ha encomendado un requisito específico. Debe restringir que los usuarios creen una nueva oportunidad dentro de la cuenta si existe una oportunidad abierta. El siguiente texto debe utilizarse para el mensaje de error:

Utilice la oportunidad abierta existente dentro de esta cuenta. Si necesita más ayuda o tiene preguntas sobre la gestión de oportunidades, póngase en contacto con el soporte de TI.

¿Qué es la regla de validación?

Una regla de validación permite que un administrador del sistema defina una lógica personalizada y mensajes de error para garantizar la integridad de los datos. La regla puede contener una fórmula o una expresión que evalúe los datos en uno o más campos y devuelva un valor verdadero o falso . Por ejemplo, la regla incluye un mensaje de error que se muestra cuando devuelve un valor verdadero que indica que se están ingresando datos incorrectos. Recuerde, una regla de validación solo se activa cuando se crea o edita un registro .

En este artículo, hablé sobre muchos hechos ocultos que no son muy conocidos sobre la regla de validación . Por ejemplo, mostré cómo usar una regla de validación para administrar requisitos usando tipos de metadatos personalizados.

¿Qué es Antes de Guardar Flujo?

El flujo antes de guardar es un disparador que se realiza antes de una operación , como una inserción, actualización, eliminación, etc. Puede usar dicho flujo para verificar o cambiar valores antes de que los datos se actualicen o inserten en la base de datos. Guardar antes es mucho más rápido porque cada registro no se guarda en la base de datos nuevamente. Evitar ese procedimiento de guardado adicional significa omitir otra ronda de reglas de asignación, reglas de respuesta automática, reglas de flujo de trabajo y otras personalizaciones que tardan en ejecutarse. Use un flujo antes de guardar en los siguientes casos de uso:

  1. Actualizar campos en registros nuevos o modificados: significa que desea actualizar los campos en el registro que inició el Flujo
  2. Activar una regla de validación (no necesaria después del lanzamiento de winter'24)

Lea este artículo para obtener más información sobre cuándo usar el flujo anterior frente al flujo posterior al guardado.

Enfoque de Campeón de Automatización (I-do):

Paso 2: uso del elemento de decisión para verificar si la oportunidad se creó o actualizó

Ahora usaremos el elemento Decisión para verificar si el registro de oportunidad fue creado o actualizado.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Decisión .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. En Detalles del resultado , ingrese la etiqueta que el nombre de la API se completará automáticamente.
  4. Requisitos de condición para ejecutar el resultado : se cumplen todas las condiciones (Y)
    1. Fila 1:
      1. Recurso : {!$Record.Id}
      2. Operador : es nulo
      3. Valor : {!$ConstanteGlobal.Verdadero}
  5. Cuándo ejecutar el resultado : si se cumplen los requisitos de la condición
  6. Haz clic en la X en la parte superior para guardar tus cambios.

Paso 3: agregar un elemento Obtener registro para encontrar oportunidades abiertas relacionadas

El siguiente paso es usar el elemento Obtener registros para encontrar oportunidades abiertas relacionadas en la cuenta.

  1. En Flow Designer, debajo del nodo Creado , haga clic en el icono + y seleccione el elemento Obtener registros .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. Seleccione el objeto Oportunidad de la lista desplegable.
  4. Seleccione Se cumplen todas las condiciones (Y) .
  5. Establecer condiciones de filtro
    1. Fila 1:
      1. Campo : ID de cuenta
      2. Operador : Igual
      3. Valor : {!$Record.AccountId}
    2. Haga clic en Agregar condición
      1. Fila 1:
        1. Campo : EstáCerrado
        2. Operador : Igual
        3. Valor : {!$ConstanteGlobal.Falso}
  6. Cuántos registros almacenar:
    1. seleccione Todos los registros
  7. Cómo almacenar datos de registro:
    1. Elija la opción para Almacenar automáticamente todos los campos .
  8. Haz clic en la X en la parte superior para guardar tus cambios.

Paso 4: uso del elemento de decisión para verificar si se encontró o no una oportunidad abierta  

Ahora, usaremos el elemento Decisión para comprobar si el elemento Obtener registros anterior devuelve un registro de oportunidades abiertas.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Decisión .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. En Detalles del resultado , ingrese la etiqueta que el nombre de la API se completará automáticamente.
  4. Requisitos de condición para ejecutar el resultado : se cumplen todas las condiciones (Y)
    1. Fila 1:
      1. Recurso: {!Get_Related_Opportunity}
      2. Operador: es nulo
      3. Valor: {!$ConstanteGlobal.Falso}
  5. Cuándo ejecutar Resultado : Si se cumplen los requisitos de la condición .
  6. Haga clic en Listo .

Paso 5: agregar un elemento de error personalizado para mostrar mensajes de error

  1. En el nodo , seleccione el elemento Error personalizado .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. Establecer detalles del mensaje de error 1
    1. Dónde mostrar el mensaje de error : en una ventana en una página de registro
    2. Mensaje de error:
      1. Utilice la oportunidad abierta existente dentro de esta cuenta. Si necesita más ayuda o tiene preguntas sobre la gestión de oportunidades, póngase en contacto con el soporte de TI.
  4. Haz clic en la X en la parte superior para guardar tus cambios.

Al final, Benjamin's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completará automáticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versión de API para ejecutar el flujo : 59
  5. Etiqueta de entrevista : regla de validación personalizada mediante flujo {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

¡Casi llegamos! Una vez que todo se vea bien, haga clic en el botón Activar .

👉 Mira el video para obtener instrucciones paso a paso.

[contenido incrustado]
Cosas para recordar
  1. El límite para el campo del mensaje de error es de 255 caracteres.
  2. Solo puede agregar un mensaje de error para una página.
  3. Solo puede agregar un mensaje de error por campo.
  4. no es posible utilizar el enlace con su mensaje de error.
    1. parámetro de escape Indica si cualquier marcado HTML en el mensaje de error personalizado se debe escapar ( verdadero ) o no ( falso ). Este parámetro se ignora tanto en Lightning Experience como en la aplicación móvil Salesforce, y el HTML siempre se escapa. El parámetro de escape solo se aplica en Salesforce Classic. Lea este artículo para obtener más información.

Prueba de concepto

A partir de ahora, si un usuario intenta crear una nueva oportunidad en una cuenta que ya tiene una oportunidad abierta, se activará el flujo activado por registro antes de guardar que hemos creado y mostrará un mensaje de error.

Evaluación formativa:

¡Quiero saber de ti!

¿Qué es una cosa que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntase libre de compartir en los comentarios a continuación.

Seguir leyendo

Capture firmas electrónicas con componentes web Lightning en dispositivos móviles ☁️

Capture firmas electrónicas con componentes web Lightning en dispositivos móviles ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Capture firmas electrónicas con componentes web Lightning en dispositivos móviles | Blog de desarrolladores de Salesforce

¿Alguna vez ha necesitado recopilar una firma electrónica sobre la marcha? Tal vez necesite verificar un pago, asegurarse de que se procesen transacciones exitosas o incluso actualizar los registros después de que se haya completado un servicio. Una firma electrónica es útil como paso de verificación de muchas maneras. Permitir que los trabajadores de campo capturen firmas sobre la marcha es uno de los casos de uso móvil más comunes que escuchamos de nuestros clientes. Por lo tanto, me complace compartir que hemos creado un componente web Lightning de muestra que le permite capturar firmas y adjuntarlas a un registro de Salesforce. Si bien creamos esto para casos de uso móvil, no hay nada que le impida usarlo también en computadoras de escritorio con pantalla táctil. Trabajar con el LWC de captura de firmas Veamos un ejemplo en acción. Dreamhouse es una aplicación de muestra de bienes raíces ficticia que se puede usar para web y dispositivos móviles. Los agentes de bienes raíces, cuando están en el proceso de cerrar un trato, deben poder capturar el nombre y la firma del comprador para asociarlos con la propiedad que se vendió. Para hacer esto, los desarrolladores de Dreamhouse pueden utilizar un nuevo componente LWC de muestra que hemos creado. ¡Vamos a sumergirnos en él!

Configuración de la configuración de LWC

Para nuestro requisito Dreamhouse anterior, debemos poder recopilar el nombre y la información de la firma del LWC. Esto se puede hacer a través de tres pasos.

  1. Configure su diseño HTML LWC
  2. Configura tus estilos LWC
  3. Conecte su interfaz con las API de JavaScript de LWC

¡Vamos a sumergirnos en más detalles sobre los pasos!

1. Configure su diseño HTML de LWC

Para comenzar, vaya a la sección NameAndSignatureCapture del directorio de muestra de LWC en GitHub. Luego, copie el componente signaturePad en la carpeta lwc de su proyecto. Después de copiar el código del componente de muestra, puede hacer referencia al componente escribiendo <c-signature-pad> y establecer sus atributos para configurarlo.

<dx-code-block title language="html" code-block="

«>

2. Configura tus estilos LWC

A continuación, los estilos de la interfaz también se pueden ajustar para satisfacer sus necesidades. Para nuestra demostración de Dreamhouse, importemos una nueva familia de fuentes. Para hacer esto, simplemente configure los estilos para su componente LWC como se ve a continuación.

También puede personalizar el diseño del LWC a su gusto haciendo referencia a la clase adecuada y los atributos HTML.

3. Conecte su interfaz con las API de LWC

Por último, debemos asegurarnos de que la firma sea capturada correctamente por el LWC. A los efectos de nuestro ejemplo Dreamhouse, queremos poder guardar la firma proporcionada por el usuario final.

El SignaturePad LWC que proporcionamos se puede configurar para capturar datos y personalizar la interfaz a través de las API de JavaScript y sus atributos HTML correspondientes. Para hacer esto, simplemente invoque los métodos API y conéctelos a sus atributos HTML correspondientes en el <c-signature-pad> . Consulte la lista a continuación para el atributo HTML y las asignaciones de la API de JavaScript

Funcionalidad Descripción Atributo HTML = "tipo" API de JavaScript (Tipo)
Habilitar firma de nombre Permite a los usuarios finales escribir su nombre y devuelve un texto para firmar generado automáticamente a medida que los usuarios escriben su nombre. enable-name-signing=”booleano” enableNameSigning(booleano)
Habilitar dibujo de firma Le permite solicitar a los usuarios finales que dibujen su propia firma personalizada en el panel de firma proporcionado. habilitar-firma-dibujo = "booleano" enableSignatureDrawing (booleano)
Grosor de trazo característico Personalice el grosor del trazo del lápiz en las capturas de firma electrónica. trazo-grosor = "entero" grosor del trazo (entero)
Color de la pluma de firma Personalice el color de tinta del bolígrafo que se proporciona al usuario final. bolígrafo-color=”Cadena” plumaColor(Cadena)
Color de la almohadilla de firma Personalice el color del pad de firma que ve el usuario final. pad-color=”Cadena” padColor(Cadena)
Color de fuente de la firma Personaliza la fuente de la firma. fuente-color = "Cadena" font.color=Cadena
Configuración de una etiqueta de campo de entrada Establezca una etiqueta para el nombre del campo de entrada. nombre-entrada-etiqueta=”Cadena” nombreInputLabel=”Cadena”
Configuración de una etiqueta de almohadilla Establezca un nombre para la etiqueta sobre el panel de firma. nombre-entrada-etiqueta=”Cadena” nombreInputLabel=”Cadena”
Guardar firma Permite guardar una firma autogenerada y/o personalizada. onclick={guardar firma} pad.getSignature()
Firma clara Permite eliminar la firma anterior si es necesario volver a hacerlo. onclick={clarar Firma} pad.clearSignature()

Tenga en cuenta que también agregamos un método clearSignature y saveSignature para permitir borrar y guardar firmas respectivamente. Puede hacer esto configurando sus propios métodos de JavaScript que se conectan a pad.setSignature() y pad.clearSignature() . Estos se pueden conectar a los componentes <lightning-button> . Veamos un ejemplo de esto a continuación.

Ahora que tenemos los métodos de JavaScript identificados, veamos algunos de ellos en acción. Esto se puede hacer usando el siguiente JavaScript.

{ if (font.family === "Great Vibes" && font.status === "unloaded") { // Ensure that the font is loaded so that signature pad could use it. // If you are using a different font in your project, don’t forget // to update the if-condition above to account for it. font.load(); } }); } saveSignature() { const pad = this.template.querySelector("c-signature-pad"); if (pad) { const dataURL = pad.getSignature(); if (dataURL) { // At this point you can consume the signature, for example by saving // it to disk or uploading it to a Salesforce org/record. // Here we just preview it in an image tag. this.imgSrc = dataURL; } } } clearSignature() { const pad = this.template.querySelector("c-signature-pad"); if (pad) { pad.clearSignature(); } this.imgSrc = null; }
} «>

Tenga en cuenta que agregamos un método clearSignature que se invoca cuando se hace clic en el botón Borrar, así como un método saveSignature que se invoca cuando se hace clic en el botón Guardar.

Algo a destacar sobre el componente es que responde completamente a los cambios de tamaño y orientación. También tenga en cuenta que el componente de captura de firmas ha sido diseñado para funcionar en la web, el panel táctil o el lápiz para dispositivos móviles o tabletas.

Además, Signature Capture LWC es compatible con la web y los dispositivos móviles y es la solicitud más común utilizada en la aplicación móvil Salesforce , así como en nuestra aplicación Mobile Test Harness . Eche un vistazo a la demostración a continuación para ver cómo se ejecuta en acción.

Conclusión

Esperamos que haya disfrutado de esta publicación de blog y que esté ansioso por usar las capacidades de captura de firma en su LWC para dispositivos móviles. Para empezar:

  • ¡Buceo en! Consulte nuestro repositorio GitHub de ejemplos móviles de LWC para ver y probar los ejemplos de LWC de las capacidades de captura de firmas en acción. Luego, una vez que esté familiarizado con los flujos…
  • ¡Personalízalo! Tome las muestras de Signature Capture LWC y amplíelas para personalizarlas según las necesidades de su negocio.
  • ¡Alcanzar! Si tiene alguna pregunta, comentario o idea, puede conectarse con nosotros en nuestra comunidad Salesforce Mobile Trailblazer .

Para obtener más información sobre nuestras ofertas móviles, consulte los siguientes enlaces:

Sobre el Autor


Ashwin Nair es un Product Manager en Salesforce que se enfoca en Salesforce Mobile. Actualmente está trabajando en Mobile Platform Experiences y ha estado en el espacio de desarrollo web y móvil durante más de siete años. Síguelo en LinkedIn .

Obtenga las últimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a través de Slack o RSS.

Agregar a Slack Suscríbete a RSS

Seguir leyendo

Incrustar flujos de pantalla en el componente web Lightning

Incrustar flujos de pantalla en el componente web Lightning

Última actualización el 19 de julio de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • ¿Cómo incrusta un flujo de pantalla dentro de un componente web Lightning?

Objetivos:

Después de leer este blog, podrá:

  • Incruste el flujo de pantalla dentro de un componente web Lightning
  • Aplicar representación condicional en el componente web Lightning
  • Use uiRecordApi para obtener el valor del campo del registro sin usar la clase de Apex
  • y mucho más

En el pasado, escribí algunos artículos sobre Lightning Web Component . ¿Por qué no echarles un vistazo mientras estás en ello?

  1. Pasar datos del componente web Lightning al flujo de pantalla
  2. Uso del componente web Lightning para mostrar un banner de alerta

Janel Parrish trabaja como desarrollador junior en Gurukul on Cloud (GoC). Se le ha encomendado un requisito comercial para desarrollar un componente LWC con las siguientes funcionalidades:

  1. Debería mostrar un flujo de pantalla llamado 'parterFlow' cuando el tipo de cuenta es 'Socio tecnológico'.
  2. Debería presentar un flujo de pantalla llamado 'customerFlow' cuando el tipo de cuenta es 'Cliente – Directo'.
  3. El componente LWC debe diseñarse con la capacidad de incorporarse en la página de registro de rayos de la cuenta.

Enfoque de Campeón de Automatización (I-do):

Utilizaremos el componente lightning-flow para incrustar un flujo de pantalla en el componente lightning web. Para crear un flujo en el componente Lightning Web, establezca el atributo flowApiName del componente Lightning-Flow en el nombre de flujo que desea usar. El componente incluye botones de navegación (Atrás, Siguiente, Pausa y Finalizar) para que los usuarios naveguen dentro del flujo.

También usaremos un adaptador de cable uiRecordApi que nos permite interactuar con registros de Salesforce desde los componentes del componente web lightning sin escribir código Apex. Esta API le permite realizar operaciones como recuperar los datos de un registro o los detalles del diseño, crear, eliminar o actualizar un registro, etc. Estos son algunos de los métodos clave proporcionados por uiRecordApi :

  1. getRecord : este método le permite obtener datos de registro.
  2. getRecordCreateDefaults : este método proporciona los valores predeterminados que utiliza Salesforce al crear un nuevo registro.
  3. getRecordUi : obtiene los detalles de diseño de un registro, como qué campos se muestran, cómo se muestran, etc.
  4. createRecord : este método le permite crear un nuevo registro.
  5. deleteRecord – Le permite eliminar un registro.
  6. updateRecord : te permite actualizar un registro existente.

En el archivo de configuración XML, usaremos lightning__RecordPage como destino para permitir que el componente web de iluminación se use en una página de registro en Lightning App Builder.

Práctica guiada (nosotros hacemos):

Hay 3 pasos para resolver el requisito comercial de Janel utilizando Lightning Web Component y Screen Flow . Debemos:

  1. Cree un ScreenFlow (customerFlow) para manejar la solicitud del cliente
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue una variable de texto para almacenar el nombre de la cuenta
    3. Agregue una pantalla para mostrar el nombre de la cuenta desde una variable de texto
  2. Cree un ScreenFlow (partnerFlow) para manejar la solicitud del cliente
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue una variable de texto para almacenar el nombre de la cuenta
    3. Agregue una pantalla para mostrar el nombre de la cuenta desde una variable de texto
  3. Cree un componente web relámpago para mostrar los diferentes flujos de pantalla según el tipo de cuenta

Paso 1.1: Definir propiedades de flujo (customerFlow)

  1. Haga clic en Configuración .
  2. En el cuadro Búsqueda rápida, escriba Flujos .
  3. Seleccione Flujos , luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   y haga clic en Crear y configurar el flujo.
  5. Se abrirá el diseñador de flujo para usted.

Paso 1.2: agregue una variable de texto al nombre de la cuenta de la tienda

  1. En Caja de herramientas , seleccione Administrador y, a continuación, haga clic en Nuevo recurso para almacenar el nombre de la cuenta.
  2. Ingrese la siguiente información :
    1. Tipo de recurso : Variable
    2. Nombre de API : nombre de cuenta
    3. Tipo de datos : Texto
    4. Valor predeterminado : {!$GlobalConstant.EmptyString}
    5. Comprobar disponible para entrada
    6. Comprobar disponible para la salida
  3. Haga clic en Listo.

Paso 1.3: agregue una pantalla para mostrar el nombre de la cuenta desde la variable de texto

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Pantalla .
  2. Ingrese la siguiente información :
    1. Ingrese la etiqueta, el nombre de la API se completará automáticamente.
  3. Haga clic en Listo.

Al final, Janel's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completará automáticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versión de API para ejecutar el flujo : 58
  5. Etiqueta de entrevista : customerFlow {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

Paso 2.1: Definir propiedades de flujo (partnerFlow)

  1. Haga clic en Configuración .
  2. En el cuadro Búsqueda rápida, escriba Flujos .
  3. Seleccione Flujos , luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   y haga clic en Crear y configurar el flujo.
  5. Se abrirá el diseñador de flujo para usted.

Paso 2.2: agregue una variable de texto al nombre de la cuenta de la tienda

  1. En Caja de herramientas , seleccione Administrador y, a continuación, haga clic en Nuevo recurso para almacenar el nombre de la cuenta.
  2. Ingrese la siguiente información :
    1. Tipo de recurso : Variable
    2. Nombre de API : nombre de cuenta
    3. Tipo de datos : Texto
    4. Valor predeterminado : {!$GlobalConstant.EmptyString}
    5. Comprobar disponible para entrada
    6. Comprobar disponible para la salida
  3. Haga clic en Listo.

Paso 2.3: agregue una pantalla para mostrar el nombre de la cuenta desde la variable de texto

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Pantalla .
  2. Ingrese la siguiente información :
    1. Ingrese la etiqueta, el nombre de la API se completará automáticamente.
  3. Haga clic en Listo.

Al final, Janel's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completará automáticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versión de API para ejecutar el flujo : 58
  5. Etiqueta de entrevista : flujo de socio { !$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

Paso 3: cree un componente web Lightning para mostrar los diferentes flujos de pantalla según el tipo de cuenta

Debajo de la plantilla de componente web lightning, se muestra una tarjeta Lightning titulada Iniciar pedido . Dependiendo de si la propiedad isPartner o isCustomer es verdadera, se iniciará y mostrará el Lightning Flow correspondiente ("rakeshistomMVP__partnerFlow" o "rakeshistomMVP__customerFlow").

embedFlowToLWC.html

Utilizaremos el componente lightning-flow para incrustar un flujo de pantalla en el componente lightning web. Desglosemos el código:

  • En LWC, el archivo HTML de cada componente debe envolverse con una etiqueta <plantilla> .
  • <template if:true={isPartner}> y <template if:true={isCustomer}> : estas son plantillas condicionales que muestran contenido en función de la veracidad de las propiedades isPartner e isCustomer , respectivamente. El contenido dentro de estas plantillas solo se representará si la condición correspondiente es verdadera.

<plantilla> <div class="slds-m-alrededor_medio"> <lightning-card title="Iniciar pedido" icon-name="estándar:pedidos"> <div class="slds-m-alrededor_medio"> <template if:true={esSocio}> <lightning-flow onstatuschange={handleStatusChange} flow-api-name="rakeshistomMVP__partnerFlow" flow-input-variables={inputVariables}></lightning-flow> </plantilla> <template if:true={esCliente}> <lightning-flow onstatuschange={handleStatusChange} flow-api-name="rakeshistomMVP__customerFlow" flow-input-variables={inputVariables}></lightning-flow> </plantilla> </div> </tarjeta-relámpago> </div>
</plantilla>
embedFlowToLWC.js

Este código JavaScript de muestra usa el decorador @api para crear propiedades públicas. Por ejemplo, recordId es una propiedad reactiva pública que contiene el ID de la página de registro. Mientras que el decorador @wire lee los datos de Salesforce. getRecord es una función del módulo lightning/uiRecordApi que recupera un registro. accountType y accountName se importan del esquema de Salesforce.

  • Las declaraciones de importación se utilizan para importar los módulos y las dependencias necesarios. LightningElement es el componente básico para crear componentes web Lightning.
  • account({ error, data }) es una función que maneja la respuesta de la llamada getRecord . Si hay un error, asigna el error a this.error . Si se devuelven datos, establece this.accountName en el nombre de la cuenta y establece isPartner o isCustomer en verdadero según el tipo de cuenta.
  • get inputVariables() es un método captador que devuelve una matriz de objetos, que representa variables de entrada para un flujo. En este caso, devuelve el nombre de la cuenta.

import { LightningElement, api, wire } de 'lwc';
importar { getRecord } desde 'lightning/uiRecordApi';
importar tipo de cuenta desde '@salesforce/schema/Account.Type';
importar nombre de cuenta desde '@salesforce/schema/Account.Name'; exportar la clase predeterminada FlowLauncher extiende LightningElement { @api recordId; nombre de la cuenta; esSocio = falso; esCliente = falso; @wire(getRecord, { recordId: '$recordId', campos: [nombre de cuenta, tipo de cuenta] }) cuenta ({ error, datos }) { si (error) { this.error = error; } más si (datos) { this.accountName = data.fields.Name.value; if(data.fields.Type.value === 'Socio tecnológico') { this.isPartner = verdadero; this.isCustomer = false; } else if(data.fields.Type.value === 'Cliente - Directo') { this.isCustomer = true; this.isPartner = false; } } } obtener variables de entrada () { devolver [ { nombre: 'nombre de cuenta', tipo: 'Cadena', valor: este.nombreDeCuenta } ]; } handleStatusChange(evento) { if(evento.detalle.estado === 'FINALIZADO') { //Acción después de que un flujo haya terminado } }
}
embedFlowToLWC.js-meta.xml

El elemento isExposed se establece en verdadero, lo que hace que el componente esté disponible para su uso en herramientas como Lightning App Builder o Flow Builder.

El elemento de objetivos se usa para especificar dónde se puede usar su componente. En este caso, la etiqueta lightning__RecordPage significa que este componente está diseñado para usarse en una página de registro en Lightning App Builder.



<?versión xml=”1.0″ codificación=”UTF-8″?>
<LightningComponentBundle xmlns=”http://soap.sforce.com/2006/04/metadata”>
<apiVersion>58.0</apiVersion>
<isExposed>verdadero</isExposed>
<target>relámpago__RecordPage</target>
</objetivos>
</LightningComponentBundle>

Prueba de concepto

Evaluación formativa:

¡Quiero saber de ti!

¿Qué es una cosa que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntase libre de compartir en los comentarios a continuación.

Seguir leyendo

Pasar datos del componente web Lightning al flujo de pantalla

Pasar datos del componente web Lightning al flujo de pantalla

Última actualización el 17 de julio de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • ¿Cómo pasa datos del componente web lightning al flujo de pantalla principal?

Objetivos:

Después de leer este blog, podrá:

  • Incruste un componente web relámpago dentro del flujo de pantalla
  • Pase los datos del componente web lightning a una variable de flujo
  • Interactuar con el componente web lightning y los elementos de flujo de pantalla en la misma pantalla
  • y mucho más

En el pasado, escribí algunos artículos sobre Lightning Web Component . ¿Por qué no echarles un vistazo mientras estás en ello?

  1. Uso del componente web Lightning para mostrar un banner de alerta
  2. Obtenga el Id. de registro y el nombre de la API del objeto en el componente web Lightning

Janel Parrish trabaja como desarrollador junior en Gurukul on Cloud (GoC). Janel tiene un requisito comercial para hacer lo siguiente:

  1. Desarrollar un componente LWC capaz de recibir entradas de latitud y longitud.
  2. Pase los valores introducidos a los componentes de flujo de pantalla correspondientes.

Construir pantallas con componentes reactivos

Con la función Crear pantallas con componentes interactivos (actualmente en versión beta), ahora puede habilitar la interacción directa entre un componente web Lightning y otros elementos de flujo en la misma pantalla.

Anteriormente, no existía una disposición directa para la interacción dinámica entre un componente web Lightning y los elementos de flujo. Como resultado, los usuarios tenían que navegar a la siguiente pantalla para ver los datos pasados por el componente web Lightning en Screen Flow.

Enfoque de Campeón de Automatización (I-do):

Al crear el componente web Lightning, también utilizaremos el evento FlowAttributeChangeEvent . Esto permitirá que un componente controle la navegación del flujo y notifique al flujo los cambios en los valores de los atributos.

Los eventos FlowAttributeChangeEvent solo se admiten en componentes donde el destino es lightning__FlowScreen .

Práctica guiada (nosotros hacemos):

Hay 2 pasos para resolver el requisito empresarial de Janel utilizando Lightning Web Component y Screen Flow . Debemos:

  1. Cree un componente web Lightning de ubicación de entrada para Screen Flow
  2. Pasos de flujo de Salesforce
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue una pantalla para mostrar el componente personalizado de ubicación de entrada
    3. Agregar un componente de número de entrada para mostrar la latitud desde la ubicación de entrada Componente LWC
    4. Agregar un componente de número de entrada para mostrar la longitud desde la ubicación de entrada Componente LWC

Paso 1: Cree un componente web Lightning de ubicación de entrada para Screen Flow

En primer lugar, cree un componente web Lightning de ubicación de entrada con el siguiente código. El componente lightning-input-location representa un campo de geolocalización compuesto que acepta valores de latitud y longitud introducidos por el usuario, siendo ambos coordenadas geográficas expresadas en grados decimales. Le permite identificar ubicaciones utilizando estas coordenadas.

El rango aceptable para la latitud está entre -90 y 90, mientras que la longitud acepta valores de -180 a 180. Cualquier entrada más allá de estos rangos especificados genera un mensaje de error. Este ejemplo muestra un campo de geolocalización compuesto, que muestra una latitud de 27,70750 y una longitud de -122,3948370.

Si no sabe cómo crear un componente Lightning, consulte esta guía para desarrolladores, Crear un componente web Lightning .

lwcToScreenFlow.html

Utilizaremos el componente de ubicación de entrada de rayos para aceptar valores de latitud y longitud. Desglosemos el código:

  • En LWC, el archivo HTML de cada componente debe envolverse con una etiqueta <plantilla> .
  • latitude={latitude} :- Esto vincula la propiedad de latitud de la clase JavaScript de LWC con el atributo de latitud del componente.
  • longitude={longitude} :- Similar a la latitud, esto une la propiedad de longitud de la clase JavaScript de LWC con el atributo de longitud del componente.
  • onchange={handleChange} :- Esto configura un detector de eventos en el componente. Cada vez que cambia el valor del componente (ya sea latitud o longitud), se llama al método handleChange de la clase JavaScript de LWC.

<plantilla> <relámpago-entrada-ubicación etiqueta="Coordenadas predeterminadas" latitud={latitud} longitud={longitud} onchange={handleChange}> </ubicación-de-entrada-del-relámpago>
</plantilla>
lwcToScreenFlow.js

Este código JavaScript de muestra utiliza el decorador @api para crear propiedades públicas, es decir, accesibles desde otros componentes o utilizadas en plantillas HTML. Por ejemplo, @api latitude y @api longitude declaran dos propiedades públicas.

  • FlowAttributeChangeEvent crea y distribuye el evento personalizado que transfiere datos del componente web Lightning a un flujo.
  • handleChange(event) es un método de controlador de eventos que se llama cuando ocurre un evento de cambio en el componente lightning-input-location en la plantilla HTML de LWC.
  • this.latitude = event.target.latitude y this.longitude = event.target.longitude , estas líneas actualizan las propiedades de latitud y longitud con los valores del objetivo del evento (el componente lightning-input-location).
  • [“latitud”, “longitud”].forEach((loc) => this.dispatchEvent(new FlowAttributeChangeEvent(loc, this[loc]))) , esta línea recorre una matriz que contiene cadenas de latitud y longitud, y para cada uno de estos, envía un nuevo FlowAttributeChangeEvent.

importar { LightningElement, api } desde 'lwc';
importar {FlowAttributeChangeEvent} desde 'lightning/flowSupport'; exportar la clase predeterminada LwcToScreenFlow extiende LightningElement { @api latitud; @api longitud; handleChange(evento){ esta.latitud = evento.objetivo.latitud; this.longitude = event.target.longitude; ["latitud", "longitud"].forEach((loc) => this.dispatchEvent(new FlowAttributeChangeEvent(ubicación, esta[ubicación])) ); }
}
lwcToScreenFlow.js-meta.xml

El elemento isExposed se establece en verdadero, lo que hace que el componente esté disponible para su uso en herramientas como Lightning App Builder o Flow Builder. El elemento de objetivos se usa para especificar dónde se puede usar su componente. En este caso, la etiqueta lightning__FlowScreen significa que este componente está diseñado para usarse en las pantallas de Salesforce Flow.

Los elementos targetConfigs y targetConfig le permiten definir propiedades que se pueden establecer en el contexto del constructor. En este caso, las propiedades son latitud y longitud . Ambos están configurados para ser del tipo Integer y tienen la función de outputOnly , lo que significa que se pueden configurar en el flujo, pero el usuario no puede modificarlos dentro del componente. Estas propiedades se pueden usar para pasar datos del LWC al flujo.


<?versión xml="1.0" codificación="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadatos"> <apiVersion>58.0</apiVersion> <isExposed>verdadero</isExposed> <objetivos> <target>relámpago__FlowScreen</target> </objetivos> <configuraciones de destino> <targetConfig objetivos="relámpago__FlowScreen"> <property label="Latitude" name="latitude" type="Integer" role="outputOnly"/> <property label="Longitud" name="longitud" type="Integer" role="outputOnly"/> </targetConfig> </configuraciones de destino>
</LightningComponentBundle>

Paso 2.1: Definir propiedades de flujo

  1. Haga clic en Configuración .
  2. En el cuadro Búsqueda rápida, escriba Flujos .
  3. Seleccione Flujos , luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   y haga clic en Crear y configurar el flujo.
  5. Se abrirá el diseñador de flujo para usted.

Paso 2.2: agregue una pantalla para mostrar el componente personalizado de ubicación de entrada

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Pantalla .
  2. Ingrese la siguiente información :
    1. Ingrese la etiqueta, el nombre de la API se completará automáticamente.
  3. Haga clic en Listo.

Paso 2.3: Agregue un componente de número de entrada para mostrar la latitud desde el componente LWC de ubicación de entrada

  1. En la sección Entrada en Elemento de pantalla , arrastre y suelte el componente Número en la pantalla.
  2. Ingrese la siguiente información :
    1. Ingrese la etiqueta, el nombre de la API se completará automáticamente.
    2. Valor predeterminado : {!lwcToFlow.latitude}
  3. Haga clic en Listo.

Paso 2.4: Agregar un componente de número de entrada para mostrar la longitud desde la ubicación de entrada Componente LWC

  1. En la sección Entrada en Elemento de pantalla , arrastre y suelte el componente Número en la pantalla.
  2. Ingrese la siguiente información :
    1. Ingrese la etiqueta, el nombre de la API se completará automáticamente.
    2. Valor predeterminado : {!lwcToFlow.longitude}
  3. Haga clic en Listo.

Al final, Janel's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completará automáticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versión de API para ejecutar el flujo : 58
  5. Etiqueta de entrevista : Pase de Screen Flow a LWC {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

Prueba de concepto

Evaluación formativa:

¡Quiero saber de ti!

¿Qué es una cosa que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntase libre de compartir en los comentarios a continuación.

Seguir leyendo

Comenzando con Acciones Externas ☁️

Comenzando con Acciones Externas ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Introducción a las acciones externas | Blog de desarrolladores de Salesforce

Tuve excelentes conversaciones con clientes y socios en Connections este año, así como a través de la comunidad Trailblazer de MC Account Engagement , con respecto a las acciones externas de Account Engagement . Seguía surgiendo una pregunta: "¿Cómo empiezo con las acciones externas?" En esta publicación, aprenderá qué son las acciones externas, cómo configurarlas y cómo probarlas. Además, sintonice una próxima sesión de codeLive el 20 de julio a las 10 a. m. PT , donde realizaré una demostración de codificación en vivo para mostrarle cómo crear una acción externa y responder sus preguntas.

¿Qué son las Acciones Externas?

Las acciones externas son una parte clave deMarketing App Extensions , ya que proporcionan una forma de desencadenar una acción en un sistema externo. El otro componente es Actividades externas, que proporciona una forma de activar la automatización de la participación de la cuenta en función de un evento de participación que ocurre en un sistema externo. Piense en ello como las dos caras de una moneda, las acciones se activan, las actividades se activan. Combinadas, forman una aplicación de extensibilidad de automatización para un servicio, por lo que puede tener una extensión de aplicación de marketing por SMS, por ejemplo.

Por este motivo, las acciones externas se empaquetan en una extensión de aplicación de marketing. En el momento de escribir este artículo, las actividades externas aún no se pueden empaquetar, pero eventualmente también se empaquetarán en la extensión de la aplicación de marketing.

Si desea conectar una aplicación de terceros para automatizar la ejecución de una acción de prospecto en ese sistema, entonces esta es definitivamente la función para usted. En esta publicación, profundizaremos en el lado de la acción externa de las extensiones de aplicaciones de marketing.

¿Cuáles son algunos buenos casos de uso para las acciones externas?

Bueno, si me preguntan, ¡diría absolutamente todo! Puede que estés pensando: “¡Claro, todo el mundo dice eso!”. Sin embargo, las posibilidades que desbloquean las acciones externas son realmente amplias. Si alguna vez ha dicho: "Me gustaría que cuando un prospecto llegue a este paso, yo pudiera <insertar deseo aquí>", entonces deseaba una acción externa.

Puede usar una acción externa para registrarse en un seminario web de Zoom desde Account Engagement (consulte el ejemplo en GitHub ). También puede usar una acción externa para enviar un mensaje SMS a través de Twilio, que presentamos en una publicación de blog anterior . Incluso puedes usar acciones externas con webhooks; Usé la función de captura de webhook de Zapier para crear una acción externa que usaba un cliente potencial como desencadenante de un Zap.

¿Qué constituye una acción externa?

Una acción externa consta de una acción invocable de Apex, metadatos de la extensión de la aplicación de marketing, metadatos de una acción externa y una forma de gestionar la autenticación. Los metadatos para las extensiones de la aplicación de marketing y las actividades externas conectan la acción invocable con la participación de la cuenta. Los componentes que se usarán para la autenticación pueden variar según el tipo de autenticación que admita el servicio. Como OAUTH 2.0 es bastante común, el componente que uso más es un proveedor de autorización y Credenciales con nombre . Las credenciales con nombre también facilitan la administración de la autenticación en mi código, y el sistema hace la mayor parte del trabajo.

¿Qué habilidades necesito para trabajar con Acciones Externas?

Con una gran flexibilidad viene la complejidad, por lo que necesitará algunas habilidades en ciertas áreas para construir con éxito una acción externa. Los siguientes son temas clave de los que necesitará una comprensión básica antes de abordar su propia acción externa.

SLDC de Salesforce

Comprender el ciclo de vida del desarrollo de Salesforce es muy importante para tener éxito en general. Recomiendo aprender Visual Studio y el proceso de implementación de la CLI. No se necesita maestría, solo lo básico para poder empezar. Trailhead ofrece una ruta para ayudarlo a configurar su espacio de trabajo .

Documentación de la API REST

El patrón del que hablamos en este artículo se basa en las API REST JSON. Para comprender lo que es posible y recopilar las entradas pertinentes para una acción externa, debe poder leer una especificación API. Consulte las especificaciones de la API de Account Engagement y Twilio .

Implementación de Apex y Apex

Apex Invocable Actions es mi forma preferida de codificar mis acciones externas, ya que me permite la mayor flexibilidad y control. Recomendaría, como mínimo, familiarizarse con la compilación y la implementación de código Apex mediante el proyecto Quick Start: Apex de Trailhead. Para obtener más información, encontré útil el trailmix de Apex Basics . No necesita convertirse en un experto, pero al menos debe estar lo suficientemente informado como para poder leer el código de la aplicación de referencia .

Flujo de Salesforce (opcional)

No necesita conocer Salesforce Flow para aprender Acciones externas. Sin embargo, es una herramienta de prueba muy poderosa para sus acciones externas, lo que facilita la creación de una interfaz de usuario para controlar las entradas durante la prueba. Si está familiarizado con Engagement Studio, Flow será bastante fácil ya que tiene muchos de los mismos conceptos. Utilicé la ruta Crear flujos con Flow Builder para ponerme al día. Otro beneficio de aprender Salesforce Flow es que abre la puerta a la creación de todo tipo de automatización de procesos comerciales.

¿Cómo debo configurar mi entorno de desarrollador?

Es importante configurar sus entornos de desarrollador y contar con las herramientas adecuadas antes de comenzar con las acciones externas. Yo uso las siguientes herramientas.

  • Postman : utilizo Postman para explorar una nueva API, por lo que puedo aprender a realizar una solicitud y responder de forma sencilla. Postman también proporciona una manera fácil de generar ejemplos.
  • CLI de Visual Studio + Salesforce — Uso Visual Studio para codificar mi acción invocable y la implemento en mi organización de desarrollador. La mayoría de las veces, es simplemente copiar y pegar un ejemplo anterior y editarlo para mi nuevo caso de uso.
  • Entorno de desarrollador/sandbox : este es un entorno seguro para construir, desarrollar y empaquetar sus acciones externas. Tenga en cuenta que, en el momento de escribir este artículo, solo admitimos paquetes de primera generación (1GP) , por lo tanto, no configure su organización de desarrollador como Dev Hub.
  • Salesforce Flow : personalmente me gusta usar ScreenFlows para probar una acción invocable. Es bueno poder controlar completamente la entrada antes de conectarla a acciones externas y programas ES.
  • Consola de desarrollador de Salesforce : esto le permite ver rápidamente el código o ver los registros de sus pruebas de flujo de pantalla.

Patrón básico para llamadas API REST con acciones externas

Si bien puede codificar acciones externas de muchas maneras, existe un patrón básico que recomiendo al realizar llamadas a la API REST.

Las dos etiquetas que debe recordar son InvocableVariable , que define las entradas y salidas de la acción invocable, e InvocableMethod , que es el método a llamar al ejecutar la acción invocable. Puede ver cómo se aplican en el siguiente código de ejemplo.

Normalmente creo dos clases, una para la entrada y otra para la solicitud de API. Separar mi código en dos clases facilita jsonificar la carga útil. Mi clase de entrada contiene todos los campos de variables invocables que la acción invocable necesita en la entrada. Mi solicitud de API contiene los campos de la solicitud JSON.

InvocableMethod construirá la carga útil a partir de la entrada, la convertirá a JSON y luego la agregará a la solicitud HTTP. A continuación, configura el resto de la solicitud HTTP agregando la URL, los encabezados y el método. Finalmente, realiza la llamada a la API y comprueba si el resultado es correcto o, de lo contrario, genera un error útil para diagnosticar un problema.

Consideración importante: el marco de acción externa espera que se devuelva un error si hay una falla en lugar de detectar el error y luego devolver el éxito. Si se devuelve un error, se informará en la tabla de errores.

Poniendo a prueba tus acciones externas

De vez en cuando, mientras crea una acción externa, encontrará errores. Cuanto más pueda probar sobre la marcha, más fácil será descubrir dónde radica el problema. Es por eso que recomiendo agregar un paso de prueba para probar en Salesforce Flow antes de probar en Engagement Studio. Elimina la configuración de la acción externa de la imagen, por lo que si la verifica aquí, pero no funciona en Engagement Studio, sabrá que el problema radica en la configuración de la acción externa.

Las pruebas lo ayudan a identificar errores, pero determinar la causa raíz y corregirlos es otra cosa. A continuación se presentan algunas de las técnicas que utilizo para diagnosticar las causas fundamentales.

  • Consola de desarrollador de Salesforce : utilizo la consola de desarrollo para ejecutar mis casos de prueba y confirmar la cobertura de mi código. Durante las pruebas exploratorias en Flow, mantengo abierta mi consola de desarrollo, por lo que genera registros para usar en la investigación de errores.
  • Rastreos de registro de Salesforce : si el error ocurre durante mi prueba de Engagement Studio, coloco un rastreo de usuario en el usuario de integración B2BMA, para poder ver mis registros de Apex y diagnosticar el problema más a fondo. Tenga cuidado, podría terminar con una gran cantidad de datos. El Usuario de Integración B2BMA es el usuario que ejecuta acciones externas.
  • Errores de acción externa de compromiso de cuenta : la tabla proporciona cualquier error devuelto por la acción externa que resultó en una falla. Es útil ver lo que sucedió durante una ejecución de ES.

SUGERENCIA: si tiene una cuenta de Gmail, puede usar un "+" para crear varios registros con su dirección de correo electrónico. Por ejemplo, puedo registrar tanto "ejemplo@ejemplo.com" como "ejemplo+usuario2@ejemplo.com" como prospecto, y cualquier correo enviado a esas direcciones iría al buzón de correo de ejemplo@ejemplo.com. Por ejemplo, usé esto para probar el ejemplo de registro de Zoom porque no quería que el correo electrónico registrado rebotara.

Errores comunes

Los errores van a suceder, así es la vida. Me he encontrado con algunos escenarios que me han hecho casi tirarme de los pelos.

El primero es garantizar que la acción exterior sea activa. Si la acción no aparece en Engagement Studio, es probable que esta sea la causa. Recuerde, debe activar tanto la extensión de la aplicación de marketing como la acción externa, además de asignarla a esa unidad comercial.

El siguiente es asegurarse de que su clase de Apex esté activa. La mayoría de las veces ya estará marcado como activo, es el estado predeterminado cuando creas una nueva clase. Es exactamente por eso que es fácil pasarlo por alto.

Otro es buscar extensiones de aplicaciones de marketing al empaquetar. No puedo decirte cuántas veces busco acciones externas, solo para tener un momento de confusión antes de recordar.

Finalmente, si su acción externa no funciona, pero no ve errores, verifique que la acción invocable fue diseñada para generar un error en caso de falla.

Lo anterior no es de ninguna manera exhaustivo, y es probable que encuentre sus propias alegrías. Sin embargo, recomiendo compartirlos con la comunidad si encuentra algunos buenos.

¿Que estas esperando? ¡Empiece hoy!

Ahora sabe casi todo lo que hago sobre las acciones externas, desde cómo funciona la función hasta los errores comunes. Recuerde que Acciones externas es su herramienta siempre que se encuentre diciendo: "Me gustaría hacer algo cuando el cliente potencial haga esto", y lo ayudará a automatizar esa acción.

Entonces, configure su entorno de desarrollador, revise la aplicación de referencia y comience a construir su acción externa hoy. El 20 de julio a las 10 a. m. (hora del Pacífico) , realizaremos una sesión de CodeLive en nuestro canal de YouTube para desarrolladores de Salesforce , así que únase y síganos mientras construimos una extensión de la aplicación de marketing de Twilio.

Recursos

Sobre el Autor

Christopher Cornett es gerente sénior de productos en Salesforce, responsable de la experiencia del desarrollador de Account Engagement. Ha trabajado para Salesforce durante más de cuatro años y tiene más de 13 años de experiencia en gestión de productos, trabajando principalmente en plataformas que van desde la atribución de big data hasta el fraude. Christopher ha ayudado a ofrecer API V5 y extensiones de aplicaciones de marketing, ayudando a los clientes a crear integraciones personalizadas para que su pila de marketing funcione para ellos. Le apasiona la experiencia del desarrollador y le encanta jugar con todas las excelentes funciones para ver qué es posible.

Obtenga las últimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a través de Slack o RSS.

Agregar a Slack Suscríbete a RSS

Seguir leyendo

Cómo puede escribir un buen artículo de base de conocimientos

Cómo puede escribir un buen artículo de base de conocimientos

Un gran servicio al cliente no siempre involucra a un agente. Descubrimos que el 59% de los clientes prefieren herramientas de autoservicio para preguntas simples y problemas de servicio.

Sus clientes pueden obtener fácilmente las respuestas que necesitan con los artículos de la base de conocimientos, que son artículos de ayuda informativos en su sitio. Pueden encontrar lo que necesitan en cualquier momento (incluso a las 3 am), lo que libera a los agentes para que se concentren en solicitudes de servicio más complejas.

Los agentes de servicio también pueden usar los artículos de la base de conocimientos para resolver los problemas de los clientes y reducir su tiempo promedio de atención.

Proporcione las respuestas que sus clientes quieren

¿Pueden sus clientes encontrar soluciones a sus problemas sin pedir ayuda a un agente? Descubra cómo puede ofrecer una estrategia de autoservicio llena de conocimientos en Salesforce+.

Esta publicación de blog le dirá todo lo que necesita saber sobre cómo crear un artículo de la base de conocimientos. Aprenderá qué es un artículo de conocimiento, por qué son importantes, qué incluir cuando está escribiendo y consejos y trucos (como IA generativa) para ayudarlo a comenzar.

¿Qué es un artículo de la base de conocimientos?

Un artículo de la base de conocimientos es una página web que responde a una pregunta frecuente, soluciona un problema o ayuda a sus clientes a utilizar sus productos y servicios. A menudo incluyen instrucciones y respuestas escritas, pero también pueden incluir imágenes, videos, enlaces y otros elementos multimedia.

Los artículos de la base de conocimientos generalmente se encuentran en un lugar central en el sitio web o la plataforma de una empresa; esto podría ser un centro de ayuda, una página de preguntas frecuentes o un portal de soporte. Este centro debería facilitar que sus clientes encuentren las respuestas que buscan.

Si bien la estructura de este centro variará según las necesidades de su negocio y sus clientes, debe tener una función de búsqueda, etiquetas de artículos basadas en sus ofertas y títulos que dejen en claro de qué trata el artículo.

Si su centro de contacto tiene un chatbot , puede mostrar información de artículos de conocimientos en respuesta a un mensaje del cliente. Muy pronto, los chatbots con tecnología de IA generativa podrán responder preguntas de servicio y dar respuestas mejores y más personalizadas a partir de la base de conocimientos.

¿Por qué son importantes los artículos de la base de conocimientos?

Estas son las tres razones principales por las que los artículos de la base de conocimientos son importantes para su empresa:

  • Proporcionar una mejor experiencia de servicio: es 10 veces más probable que los clientes usen el autoservicio que contactar directamente a un centro de servicio. Tener un centro de conocimiento donde sus clientes puedan encontrar fácilmente las respuestas les brinda la experiencia de servicio que desean y les permite obtener servicio las 24 horas del día, los 7 días de la semana.
  • Reduzca la carga de casos en su centro de contacto: a medida que más clientes resuelven sus problemas de forma independiente, menos casos requieren el apoyo de un agente. Esto libera a los agentes para que se concentren en resolver problemas más complejos de los clientes y reduce la carga de trabajo general del centro de contacto.
  • Reduzca el tiempo promedio de manejo: a medida que los agentes resuelven casos únicos y formalizan el conocimiento institucional en artículos, más agentes pueden usar esa información para resolver sus casos más rápido y reducir el tiempo promedio de manejo. Las investigaciones muestran que el uso de artículos de la base de conocimientos puede resultar en una resolución un 33 % más rápida .

Cómo escribir un artículo de la base de conocimientos

Esta sección lo guiará a través de los pasos importantes que debe seguir antes de escribir un artículo de la base de conocimiento, qué elementos incluir y algunos consejos útiles para que sea aún más fácil escribir un artículo de conocimiento.

Antes de escribir un artículo de conocimiento

Hay algunos pasos que desea tomar antes de escribir su artículo: el primero es averiguar sobre qué tema escribir.

Considere estas tres preguntas cuando identifique el tema correcto para su artículo:

  • ¿Cuáles son las preguntas más comunes para las que recibe solicitudes de servicio?
  • ¿Cuáles son los problemas más comunes con los que sus clientes necesitan ayuda?
  • ¿Qué información ayudaría a sus clientes a aprovechar al máximo sus productos y servicios?

Una vez que haya identificado los problemas más comunes, asegúrese de no tener un artículo de conocimiento sobre este tema. Si un artículo ya existe, decida si necesita ser editado para agregar información actualizada.

Si aún no existe ningún artículo sobre ese tema, ¡es hora de comenzar a escribir!

4 componentes de un buen artículo de base de conocimiento

  • Un título claro: deja que tu cliente sepa qué cubrirá tu artículo en el título. Asegúrese de que el título sea claro, conciso y describa con precisión el contenido del artículo. Esto también hace que el artículo sea más fácil de encontrar.
  • Listas con viñetas o subtítulos: haga que su artículo de conocimiento sea fácil de hojear para que sus clientes no tengan que leer cada palabra para encontrar lo que necesitan. Cree listas con viñetas o subtítulos que muestren lo que se cubre en cada sección. Si está escribiendo un tutorial, escriba instrucciones paso a paso, incluidos los botones o elementos del menú para hacer clic, y colóquelos en orden cronológico.
  • Imágenes, enlaces o videos : brinda a tus clientes tantos detalles como puedas para que puedan resolver el problema por sí mismos. Agregue capturas de pantalla, imágenes, enlaces a otros artículos o videos a su artículo para ayudarlos.
  • Lenguaje simple: escriba de una manera que todos puedan entender fácilmente. Haga todo lo posible para evitar la jerga que se relaciona específicamente con su producto y servicio. Sus clientes no tendrán tanto conocimiento del producto como usted, así que use un lenguaje simple en cada paso de su artículo.

Aspecto de un artículo completo de la base de conocimientos

Este es un ejemplo de un artículo de la base de conocimientos que creamos para un software de pago ficticio llamado ZapPay. Este artículo de conocimientos ayudaría a los clientes de ZapPay a vincular su cuenta bancaria a su cuenta de ZapPay.

Conecta tu cuenta bancaria a tu cuenta de ZapPay

Descripción general

  • Descubra cómo conectar su cuenta ZapPay a su cuenta bancaria para enviar dinero, pagar facturas y transferir ZapCash a su cuenta bancaria.

SUGERENCIA: asegúrese de tener a mano su cuenta bancaria y números de ruta antes de comenzar este proceso.

  1. Inicie sesión en su cuenta de ZapPay.
  2. Desde el tablero, toque su nombre y luego haga clic en Perfil.
  3. Seleccione "Conectar cuenta bancaria".
  4. A partir de ahí, aparecerá una ventana emergente en su pantalla.
  5. Ingrese su número de cuenta bancaria en el cuadro de texto "Número de cuenta" y su número de ruta en el cuadro de texto "Número de ruta".
  6. Vuelva a verificar que sus datos sean correctos antes de continuar.
  7. Una vez que haya terminado, seleccione "Guardar".
  8. Dentro de las 24 horas, verá un retiro de ZapPay de diez centavos o menos en su cuenta y luego un reembolso por la misma cantidad poco después. Esto es para garantizar que pueda retirar y depositar dinero con éxito entre su cuenta de ZapPay y su cuenta bancaria.

¡Felicidades! ¡Has conectado con éxito tu ZapPay a tu cuenta bancaria! Si necesita ayuda adicional, consulte los siguientes enlaces:

  • Agregar dinero a mi cuenta de ZapPay
  • Transferir dinero de ZapPay a mi cuenta bancaria
  • Desconectar cuenta bancaria
  • Agregar tarjeta de crédito a la cuenta de ZapPay

3 consejos simples para comenzar con los artículos de la base de conocimientos (pista: IA)

Ahora que tiene lo que necesita para escribir el artículo perfecto de la base de conocimientos, así es como puede comenzar.

  • Obtenga información de registros y notas de casos antiguos para asegurarse de que está incluyendo tantos detalles como sea posible y de que está siguiendo los mismos pasos para obtener una resolución.
  • Para garantizar la precisión y la legibilidad, trabaje con un administrador para configurar un proceso de aprobación de artículos de conocimiento. Esto garantizará que la gramática y la ortografía sean correctas, que la información sea precisa y que el formato de los artículos sea uniforme en todo el centro.
  • Conecte una herramienta de IA generativa a su consola de servicio y haga que cree el primer borrador de su artículo de conocimiento basado en los detalles de la conversación y los datos de CRM para que sus agentes experimentados lo revisen. Esto le ahorrará tiempo y lo ayudará a publicar sus artículos más rápido.

Ahora sabe qué es un artículo de la base de conocimientos y por qué es importante tanto para los clientes como para los agentes. Comience a escribir artículos hoy para brindarles una excelente experiencia de servicio y aumentar la eficiencia de su centro de contacto.

Ahorre tiempo para sus clientes y agentes

Con herramientas de autoservicio como los artículos de la base de conocimientos, los clientes pueden obtener respuestas a las preguntas más frecuentes en cualquier momento, lo que libera a sus agentes. Nuestra guía muestra cómo las organizaciones de servicio de alto rendimiento facilitan el autoservicio.

Seguir leyendo

¿Intenta ganar clientes de Internet de fibra? 3 formas en que la IA puede ayudar

¿Intenta ganar clientes de Internet de fibra? 3 formas en que la IA puede ayudar

A medida que más empresas y personas buscan una conectividad a Internet más rápida que la que pueden proporcionar los cables, la fibra es una inversión popular. Dado que se espera que el mercado mundial de la fibra alcance los 31 300 millones de USD para 2030 , está claro que el auge de la fibra hasta el hogar está aquí.

La IA puede ayudarlo a capitalizar esto, escalando sus esfuerzos para obtener nuevos clientes y ayudándolo a brindar un mejor servicio a los actuales .

Adquirir la mayor cantidad de clientes lo más rápido posible es el nombre del juego para los proveedores de fibra hasta el hogar. Las enormes inversiones en infraestructura están presionando aún más a las empresas de telecomunicaciones para que hagan precisamente eso.

Modernice el servicio con la automatización

Aproveche la IA y la automatización para liberar a los equipos de servicio al cliente de tareas mundanas, brindar un servicio de calidad y ser más eficientes.

Sin embargo, la cantidad de nuevos clientes que puede atraer disminuye cada vez que se retrasa un nuevo proyecto, ya sean instalaciones de infraestructura más amplias o viviendas individuales. Eso perjudica su resultado final y la satisfacción del cliente .

Entonces, ¿cómo puede agregar más eficiencia al proceso sin acumular inversiones más significativas? Ahí es donde entran la IA y la automatización. La IA generativa puede ayudar a los proveedores de comunicaciones a optimizar sus inversiones, y eso incluye ayudar a capitalizar el auge de la fibra.

Las implementaciones de IA generativa pueden permitirle hacer preguntas específicas basadas en los datos de CRM de su empresa, ayudándole a tomar decisiones más informadas, lo que lleva a mejores resultados comerciales.

La tecnología de inteligencia artificial generativa que es segura, confiable y se basa en la amplitud de los datos de su cliente puede optimizar su inversión en fibra en cada paso del camino. Desde la identificación de vecindarios para proyectos de infraestructura hasta la optimización de las instalaciones de hogares individuales, así es como puede ayudar.

1. Identificar ubicaciones para la inversión de fibra hasta el hogar

Para capitalizar el auge de la fibra hasta el hogar, el uso de la IA generativa comienza desde el inicio del proceso, identificando en qué vecindarios colocar la fibra.

La tecnología de IA generativa puede analizar datos históricos, datos demográficos y tendencias del mercado para identificar dónde invertir en implementaciones o actualizaciones de infraestructura, por ejemplo. Junto con sus propios puntos de datos seguros, como la tasa de ganancia de su empresa en varios vecindarios, la IA generativa lo ayudará a encontrar las soluciones de diseño de red más rentables y eficientes.

También puede ayudar a los proveedores de fibra a identificar las comunidades con el mayor nivel de interés en la fibra, así como a crear flujos de trabajo inteligentes para aumentar los ingresos por registro e instalación más rápidamente.

2. Escale sus ventas de fibra de alto rendimiento

Tenga en cuenta que la IA que implementa es tan buena como los datos en los que se basa . Puede usar IA con sus datos protegidos para adaptar sus esfuerzos de marketing, como diseñar anuncios personalizados visualmente atractivos para dirigirse a audiencias específicas en función del historial de navegación y compras, creando modelos predictivos para pronosticar el comportamiento de compra de los clientes.

La IA generativa junto con las capacidades de IA basadas en el aprendizaje automático de larga data es el "santo grial" para escalar su alcance, según Vala Afshar, evangelista digital jefe de Salesforce. Eso también se aplica al despliegue de fibra en tantos hogares y empresas como sea posible.

Puede ayudar a optimizar sus ventas y marketing a través de otros beneficios, como:

  • Puntuación de clientes potenciales : use IA para analizar y priorizar automáticamente los clientes potenciales de instalación de fibra en función de su probabilidad de conversión.
  • Perspectivas de cuentas y oportunidades : la IA y los algoritmos de aprendizaje automático pueden recopilar y analizar datos de fuentes internas y externas para proporcionar una visión holística de posibles cuentas de fibra y oportunidades de ventas.
  • Pronóstico predictivo : con el análisis predictivo, la IA puede extraer datos históricos, patrones y otras correlaciones para brindarles a los proveedores de fibra la capacidad de anticipar el comportamiento del cliente, predecir tendencias de ventas y tomar otras decisiones basadas en datos.

Yendo un paso más allá, la IA generativa predice las tendencias de ventas futuras, analiza los datos de ventas y crea una comunicación personalizada, lo que lo ayuda a aprovechar al máximo la tendencia de fibra hasta el hogar.

La IA generativa también puede ayudar a su equipo de ventas a cerrar y optimizar nuevos acuerdos de fibra.

Puede crear propuestas y contratos a partir de datos de clientes, agilizando la creación, mejorando la personalización, la eficiencia y la precisión en todo el proceso.

El análisis de gestión de pedidos, en todo, desde métricas de rendimiento de pedidos, seguimiento y gestión de inventario, puede ayudar a identificar oportunidades de ventas adicionales y recomendaciones de productos, ahorrando horas de trabajo en tareas administrativas.

3. Mejore su proceso de instalación para trabajadores y clientes

La IA tampoco se detiene una vez que sus técnicos están en el campo.

Brinda a los despachadores una visibilidad completa para hacer coincidir los trabajadores y las asignaciones, y asigna proyectos de manera consistente en función de las habilidades, la ubicación, el inventario y las reglas comerciales. Les permite ver la fuerza de trabajo móvil y cada trabajo en una sola pantalla.

Los chatbots o asistentes virtuales con tecnología de IA pueden proporcionar actualizaciones en tiempo real sobre instalaciones o solicitudes de servicio que reducen el tiempo de intervención humana.

Puede ofrecer las siguientes mejores acciones y resolución de problemas para los técnicos de servicio de campo durante la instalación. Por ejemplo, los algoritmos de visión por computadora pueden analizar imágenes o videos de los sitios de instalación para guiar a los técnicos a través del proceso y garantizar la precisión en el camino e identificar cualquier problema que deba abordarse.

Esto crea un proceso de instalación simplificado y le permite entrar y salir de más hogares y negocios más rápido. AI lo ayuda a brindar el excelente servicio que los clientes esperan, brindándole una ventaja en la carrera de fibra hasta el hogar.

Uniéndolo todo con IA generativa

Veamos un ejemplo de un proveedor de fibra que utiliza IA generativa para convertir una simple solicitud de servicio de un cliente de banda ancha comercial en una posible instalación significativa de fibra para varias oficinas. Supongamos que un cliente se pone en contacto con el centro de servicio por inquietudes sobre videoconferencias nerviosas entre sus seis oficinas.

En el pasado, después de enterarse del problema, un representante de ventas regresaba e investigaba las ubicaciones de sus oficinas, cuántos empleados y el tipo de negocio. Luego usarían esa información para predecir el ancho de banda, o incluso si está disponible en las ubicaciones, necesario para una solución. El representante, junto con los arquitectos técnicos, establecería cuál es la solución, pensaría en una venta adicional y redactaría una propuesta y un contrato.

Eso podría tomar semanas o meses en completarse.

En su lugar, la IA puede tomar la indicación del cliente (arreglando videoconferencias sin fluctuaciones entre seis ubicaciones) y proporcionar instantáneamente las respuestas a todas las preguntas necesarias para resolver el problema.

Esta tecnología puede extraer datos seguros de sus clientes e identificar información relevante, como dónde se encuentran esas seis ubicaciones y el número de empleados por ubicación. Al leer los datos que ya tiene, la IA generativa puede informarle si la tecnología mejorada está disponible para esas ubicaciones.

También puede incorporar una recomendación de venta adicional instantánea, que en este caso, por ejemplo, sería instalar fibra en las ubicaciones para aumentar el ancho de banda y la mejor velocidad y calidad posibles para videoconferencias.

Luego, la IA generativa entrega una propuesta y un contrato utilizando toda esa información privada dentro de su dominio. Un representante de ventas y un ingeniero de red están en todo momento para proporcionar retroalimentación humana para ajustar o adaptar la respuesta, brindando el toque personal necesario para que todo funcione bien.

Pero gran parte del trabajo manual, el trabajo administrativo, lo realiza la IA. Reduce el proceso que habría tomado semanas o meses manualmente a solo unos pocos días, mientras libera los recursos de su empresa para enfocarse en tareas de mayor nivel, como enfocarse en expandir la fibra al hogar y la oficina.

Ya sea identificando ubicaciones para instalar fibra o alertando a los representantes sobre una oportunidad de venta adicional, la IA generativa y la automatización pueden ayudar a potenciar la carrera de su empresa para adquirir clientes de fibra y optimizar esas fuertes inversiones.

Gana ventaja en el auge de la fibra

Descubra las estrategias y tecnologías fundamentales necesarias para iluminar las experiencias de sus suscriptores de fibra.

Seguir leyendo

Explore el adaptador de cable GraphQL, ahora en versión beta ☁️

Explore el adaptador de cable GraphQL, ahora en versión beta ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Explore el adaptador de cable GraphQL, ahora en versión beta | Blog de desarrolladores de Salesforce

¡Atención, desarrolladores de Salesforce! Hemos estado incursionando en GraphQL durante algún tiempo y estamos llevando las cosas al siguiente nivel. Hace unos meses, anunciamos el lanzamiento piloto del adaptador de cable GraphQL. Mantenga sus soportes porque estamos implementando la versión beta del adaptador de cable GraphQL de Salesforce en nuestro lanzamiento de verano '23. En este blog, exploraremos las novedades de la versión Beta y cómo utilizar Recetas de LWC para crear fácilmente su aplicación Salesforce con la tecnología de GraphQL.

La versión Beta del GraphQL Wire Adapter es un avance significativo en la gestión de datos de Salesforce en LWC. Con la introducción de nuevas funciones, como Recetas LWC, Actualización de datos e Integridad referencial, el proceso de desarrollo se ha vuelto más ágil y eficiente.

El adaptador de cable GraphQL permite consultar datos de Salesforce mediante consultas expresivas con funcionalidades como filtrado, clasificación, paginación y seguimiento de relaciones padre/hijo. También incluye una capa de gestión de datos y almacenamiento en caché del lado del cliente de Lightning Data Service. Estas funciones mejoran la eficiencia y la velocidad del acceso a los datos de Salesforce desde sus aplicaciones web y móviles de LWC.

El adaptador de cable GraphQL interactúa con la API de Salesforce GraphQL, que expone todos los objetos estándar y personalizados disponibles a través de la API de la interfaz de usuario, junto con los metadatos de los objetos. La API también mantiene la seguridad a nivel de objeto y de campo del usuario actual durante la ejecución de la consulta.

Para familiarizarse con el esquema de la API de GraphQL, sugerimos revisar la documentación del esquema utilizando el cliente de Altair GraphQL . Las herramientas disponibles en este cliente facilitan la redacción de su consulta GraphQL y su validación. Luego puede copiar y pegar su consulta directamente en su código JavaScript en Visual Studio Code.

Novedades en Beta:

  1. Recetas LWC: estos son componentes listos para usar que muestran varios casos de uso de GraphQL
  2. Actualización de datos: un mecanismo para actualizar los datos devueltos por su consulta de GraphQL
  3. Integridad referencial: este mecanismo garantiza la coherencia de los datos y las referencias a los recursos de Salesforce, como entidades y campos, son sólidas.

Analicemos cada una de estas características en detalle.

Recetas LWC

LWC Recipes es un repositorio de GitHub con una colección de ejemplos de código disponibles públicamente para componentes web Lightning. Incluye tres recetas GraphQL para ayudarlo a comenzar rápidamente a crear su aplicación Salesforce con GraphQL.

El repositorio proporciona instrucciones sobre cómo configurar su entorno, crear su organización de Salesforce, clonar el repositorio en su máquina local e implementar la aplicación en su organización. El código fuente se puede importar directamente a su Visual Studio Code como un proyecto que puede personalizar según sus necesidades.

Una vez que implemente la aplicación Recetas de LWC en su organización de Salesforce, es posible que vea los siguientes componentes mediante consultas de GraphQL.

Aquí hay una descripción general de los cuatro componentes de LWC que usan consultas GraphQL:

  • graphqlContacts : obtiene contactos que cumplen ciertos criterios, ordenados por nombre y limitados a los primeros cinco registros
  • graphqlVariables : captura la entrada del usuario en una barra de búsqueda en una variable y compone una consulta para devolver contactos cuyo nombre coincide parcialmente con la cadena de entrada
  • graphqlRefresh : obtiene una cantidad de empleados en una cuenta y actualiza los datos al hacer clic en el usuario
  • graphqlPagination : Habilita la paginación a través de una lista de contactos

Dado que muchos de nuestros clientes preguntan sobre la paginación, profundicemos un poco más. El adaptador de cable GraphQL es compatible con la paginación basada en cursores de GraphQL. Puede recorrer las páginas de los resultados de su consulta y controlar la cantidad de resultados que desea obtener cada vez. Para especificar el número de registros a devolver, utilice el first argumento. El número predeterminado es 10.

Si hasNextPage es verdadero, puede proporcionar el valor de endCursor al argumento after de una consulta posterior para solicitar la siguiente página de resultados.

Aquí hay una captura de pantalla de cómo podría verse el proyecto Recetas de LWC en Visual Studio Code. Puede ver un código de ejemplo para la implementación de la paginación.

Actualización de datos

En el mundo del desarrollo de aplicaciones, mostrar datos actualizados es fundamental para una buena experiencia de usuario y para generar confianza. Por lo tanto, en la versión Beta del GraphQL Wire Adapter, presentamos la función refreshGraphQL .

Esta función permite a los desarrolladores activar manualmente una repetición de la consulta. ¿El resultado? Una actualización de los datos proporcionados por el adaptador de cable GraphQL, lo que garantiza que los usuarios siempre vean los datos más actualizados.

Esta actualización se puede activar a pedido, como un clic de botón de un usuario o un evento de JavaScript específico. Esto significa que puede optimizar su aplicación para que se actualice solo cuando sea necesario, lo que proporciona una manera eficiente de mantener los datos actualizados y maximizar el rendimiento de la aplicación. En pocas palabras, la función refreshGraphQL ofrece un método amigable con el rendimiento para mantener los datos actualizados, mejorando la experiencia del usuario y aumentando la confiabilidad de la aplicación.

Aquí hay un ejemplo de uso:

Consulte el componente graphqlRefresh en las recetas de LWC para ver otro ejemplo del uso de la función de actualización de datos.

Integridad referencial

La versión Beta del adaptador de cable GraphQL presenta integridad referencial. He aquí una breve descripción de sus beneficios e implicaciones.

Lightning Data Service (LDS), la capa de administración de datos del lado del cliente de Salesforce, mejora la eficiencia de la aplicación al permitir que los componentes compartan datos, reducir las llamadas al servidor y mantener la coherencia de los datos. También garantiza referencias sólidas a los recursos de Salesforce, propagando cambios de nombre y evitando eliminaciones cuando las referencias persisten.

En la versión piloto del adaptador, requerimos el uso de directivas @category para ayudar a LDS a comprender el esquema de datos y normalizar sus datos de GraphQL.

Sin embargo, en la versión Beta, estas directivas ya no se requieren manualmente. Si se usaron anteriormente, ahora se pueden eliminar de sus consultas de GraphQL. El compilador gestiona de forma autónoma estas directivas, agilizando su proceso de código y reduciendo posibles errores manuales.

¿Qué sigue para GraphQL?

Recordatorio: Salesforce es una empresa que cotiza en bolsa y los clientes deben basar sus decisiones de compra en los productos y servicios que están disponibles actualmente.

Estamos comprometidos a continuar invirtiendo en GraphQL. Esto es lo que puede esperar en los próximos lanzamientos (se aplica la declaración prospectiva):

Invierno '24:

  • Adaptador de cable GraphQL (GA)
  • Compatibilidad con mutaciones en la API de GraphQL
  • Compatibilidad con consultas agregadas en GraphQL Adapter
  • Capacidad de consulta de tareas y eventos en GraphQL API (Beta)

Primavera 24 y más allá:

  • Compatibilidad con mutaciones en GraphQL Adapter
  • Funciones avanzadas de paginación
  • Soporte de campos opcionales

Recursos para desarrolladores

Sobre el Autor

Suvda Myagmar es directora de gestión de productos en Salesforce y le apasionan las plataformas de datos e IA. Le encantan las carreras largas mientras escucha audiolibros.

Obtenga las últimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a través de Slack o RSS.

Agregar a Slack Suscríbete a RSS

Seguir leyendo

Herramientas para desarrolladores desde cero (Parte 1 de 2) ☁️

Herramientas para desarrolladores desde cero (Parte 1 de 2) ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Herramientas para desarrolladores desde cero (Parte 1 de 2) | Blog de desarrolladores de Salesforce

Tanto si es un nuevo desarrollador que acaba de empezar su carrera en el ecosistema de Salesforce como si es un desarrollador experimentado de Salesforce que aún no se ha cambiado a nuestras nuevas herramientas para desarrolladores, esta serie de publicaciones de blog es para usted. Le mostraremos cómo configurar y utilizar las herramientas que pueden ayudar a todos los desarrolladores de Salesforce a ser mucho más productivos y felices.

Antes de que empieces

Si es nuevo en Salesforce y no tiene una organización (instancia de Salesforce) disponible para practicar, regístrese en una organización Developer Edition . Es completamente gratis y tiene la mayoría de las funciones de Salesforce preinstaladas para que pruebe y aprenda. Deberá proporcionar un nombre de usuario en forma de dirección de correo electrónico, pero no es necesario que sea uno real. Es solo un nombre de usuario que debe ser único en todos los productos de Salesforce. Después de solicitar una organización, recibirá un correo electrónico con los pasos para iniciar sesión. Tome nota del nombre de usuario de la organización que proporcionó, ya que tendrá que usarlo más adelante.

Si es un desarrollador de Salesforce establecido y un usuario de Developer Console, este es el momento adecuado para adoptar las nuevas herramientas de desarrollador. Si bien Developer Console puede ser una forma rápida de cambiar algunas líneas de código, usar las herramientas más modernas cambiará las reglas del juego, ya que incluyen un montón de capacidades que simplificarán su trabajo. Usar las nuevas herramientas requiere un cambio de hábitos al principio, pero te prometo que muy pronto entenderás sus beneficios. Además, tenga en cuenta que ya no estamos invirtiendo en Developer Console, y problemas como la falta de soporte para Lightning Web Components son algo que no abordaremos.

Instalación de las herramientas de desarrollador

Los metadatos de su organización están en la nube, pero para desarrollarse de una manera más productiva, desarrollará localmente. El modus operandi será trabajar con los metadatos en su máquina local y sincronizarlos con su organización, lo que significa recuperarlos o implementarlos cuando sea necesario.

Una alternativa al desarrollo local es usar Code Builder (Beta) , un IDE basado en web que puede iniciar desde su organización y que tiene las herramientas de desarrollador instaladas. Sin embargo, en este blog, nos centraremos en el flujo de trabajo de desarrollo local.

El primer paso es instalar las siguientes herramientas en su máquina:

  • CLI de Salesforce : esta es la herramienta de interfaz de línea de comandos que utilizará para escribir comandos para mover su código entre su entorno local y su organización, ejecutar pruebas, implementar datos de muestra y mucho más. Si no le gusta escribir comandos en una terminal, no tema, ya que tenemos opciones alternativas como se describe en esta publicación de blog.
  • Código VS : este es el IDE que usará para desarrollar en su máquina local.
  • Java : algunas funciones en las extensiones de Salesforce para VS Code dependen de la plataforma Java, kit de desarrollo de edición estándar (JDK). Instálelo siguiendo las instrucciones vinculadas.
  • Extensiones de Salesforce para VS Code : Este es un grupo de extensiones de VS Code que aumentan las capacidades de VSCode, exponiendo la mayoría de los comandos de la CLI de Salesforce en la interfaz de usuario de VS Code, para que pueda ejecutarlos con clics. Las extensiones también agregan funciones para habilitar la depuración, facilitar las pruebas, permitirle explorar los metadatos en su organización y más.

Creación de un proyecto de Salesforce DX

Cuando trabaja con los metadatos de una organización localmente, los archivos de metadatos deben almacenarse en una carpeta de proyecto, siguiendo una estructura determinada. Eso es lo que llamamos un proyecto de Salesforce DX.

Una vez instaladas las herramientas para desarrolladores, puede continuar y crear un proyecto de Salesforce DX que luego conectará a su organización. Una forma de hacerlo es escribir un comando que utilice la CLI de Salesforce para crear el proyecto. Puede escribir ese comando en una terminal normal.

sf project generate -n myProject

Nota: la CLI de Salesforce contiene dos ejecutables, sfdx y sf . En este blog, escribiremos los comandos utilizando el ejecutable y la sintaxis más modernos, que es sf .

El indicador -n indica el nombre del proyecto. La CLI de Salesforce aplicará scaffolding a un proyecto en una carpeta con ese nombre. Una vez que se crea el proyecto, puede abrirlo en VS Code, con File → Open Folder .

Gracias a las extensiones de Salesforce para VS Code, existe una forma sin escribir para ejecutar los comandos de la CLI de Salesforce. Simplemente abra la paleta de comandos de VS Code con View → Command Palette y escriba SFDX para ver todos los comandos disponibles. También podríamos haber creado el proyecto con SFDX: Create Project en lugar de escribir el comando.

Autorizar y establecer una organización como predeterminada

Una vez que su proyecto esté configurado, el siguiente paso es autorizar la CLI de Salesforce para que funcione con su organización. Comencemos esta vez con la forma de hacerlo sin escribir. Cuando abra el proyecto por primera vez, simplemente haga clic en el botón Sin conjunto de organizaciones predeterminado y aparecerá la paleta de comandos, sugiriendo que autorice una organización. Proceda siguiendo las instrucciones del comando.

Otra forma de hacerlo es ejecutar un comando CLI de Salesforce. Esta vez, y de ahora en adelante, le recomiendo que use el terminal integrado de VS Code para ejecutar comandos, ya que tener todas las herramientas en la misma pantalla reduce el cambio de contexto. Puede abrirlo en Terminal → New Terminal .

El comando CLI de Salesforce utilizado para autorizar una organización es:

sf org login web -s

Luego, siga las instrucciones dadas por el comando. El indicador -s configurará esa organización como su organización predeterminada para este proyecto. Puede ver la organización predeterminada de su proyecto en la barra inferior de VS Code.

Todos los comandos de la CLI de Salesforce tienen varios indicadores disponibles. Por ejemplo, si desea conectarse a una zona de pruebas, puede pasar la URL de la instancia de la zona de pruebas a sf org login web usando -r . Para ver la ayuda del comando y todos sus indicadores disponibles, ejecute el comando agregando --help al final.

Cuando trabaja con varias organizaciones, será común autorizar la CLI de Salesforce con varias organizaciones. Puede ver las organizaciones a las que la CLI de Salesforce tiene autorización para acceder ejecutando sf org list . Puede cambiar la organización predeterminada de un proyecto haciendo clic en el nombre de la organización en la barra inferior de VS Code, como hicimos para autorizar por primera vez, o ejecutando:

sf config set target-org=your-org-username@sf.com

Permítanme compartir con ustedes un último consejo. Las organizaciones pueden tener alias. Esto es útil cuando no desea recordar nombres de usuario largos o complejos. Para establecer un alias, escriba el siguiente comando.

sf alias set myalias=your-org-username@sf.com

Cuando se establece un alias, puede utilizar el alias en lugar del nombre de usuario de la organización en cualquiera de los comandos de la CLI de Salesforce.

Implementación de metadatos en la organización

Una vez que la CLI de Salesforce y su IDE estén autorizados con su organización, y la organización esté configurada como la organización predeterminada para su proyecto, puede comenzar a desarrollar e implementar cambios. Por ejemplo, digamos que queremos crear una clase de Apex. Puede crear el archivo de metadatos que representa la clase de Apex manualmente en la carpeta classes . Sin embargo, es mucho más efectivo crear la clase desde la paleta de comandos.

También puede crear una clase escribiendo el siguiente comando de la CLI de Salesforce:

sf apex generate class -n myClass -d force-app/main/default/classes

Una vez que su clase esté lista para implementarse en su organización, hay varias formas de hacerlo. Una forma es especificar los metadatos en el comando.

sf project deploy start -m ApexClass

Una segunda forma es especificar una carpeta para implementar.

sf project deploy start -p force-app/main/default/classes

Y una tercera forma, disponible gracias a Salesforce Extensions for VS Code, es hacer clic con el botón derecho en el archivo y hacer clic en Deploy This Source to Org .

Todas esas opciones le permiten ejecutar las implementaciones usted mismo. Si desea automatizar este paso e implementar un archivo cada vez que se guarda, puede establecer la configuración Implementar al guardar VS Code en "Verdadero" y ahorrar algo de tiempo.

Cuando se implementan sus metadatos, normalmente querrá abrir su organización para realizar pruebas. Puede iniciar sesión utilizando su navegador como de costumbre. Pero para los desarrolladores, es más eficiente hacer clic en el botón de abrir organización en la barra inferior de VS Code.

Conclusión

En esta publicación de blog, aprendió cómo obtener una organización gratuita para el desarrollo y cómo instalar las herramientas de desarrollo que todo desarrollador de Salesforce debería usar hoy. Ha entendido cómo crear un proyecto y autorizarlo con su organización y, por último, cómo implementar metadatos mediante la CLI de Salesforce o VS Code. En la Parte 2 de esta serie, aprenderá cómo recuperar metadatos, trabajar con organizaciones con seguimiento de origen y usar bibliotecas de Node para cuidar la calidad de su código. Además, compartiremos otras gemas ocultas de las extensiones de Salesforce para VS Code. Si te gusta un formato de video, mira nuestro episodio de codeLive . Y si tiene preguntas, no dude en hacerlas en Salesforce Developers Trailblazer Community . ¡Estén atentos para la segunda publicación de blog de esta serie mañana!

Sobre el Autor

Alba Rivas trabaja como Principal Developer Advocate en Salesforce. Puedes seguirla en Linkedin , Twitter o GitHub .

Obtenga las últimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a través de Slack o RSS.

Agregar a Slack Suscríbete a RSS

Seguir leyendo

Eliminación definitiva de registros con Salesforce Flow

Eliminación definitiva de registros con Salesforce Flow

Última actualización el 22 de mayo de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • ¿Cómo eliminar registros de Salesforce utilizando Flow?

Objetivos:

Después de leer este blog, podrá:

  • Comprender la anotación @InvocableMethod
  • Más información sobre el método database.emptyRecycleBin
  • Configurar la acción de Apex para eliminar registros de forma permanente de Flow
  • Configurar el flujo de pantalla con el elemento Eliminar registro
  • Y mucho más

¿Qué es la eliminación completa?

La eliminación definitiva es la eliminación permanente de los registros especificados de la Papelera de reciclaje. Cuando los datos se eliminan de forma permanente, es casi imposible recuperarlos. Esto generalmente se logra a través de los métodos Database.EmptyRecycleBin .

Al vaciar los contenedores de reciclaje, tenga en cuenta las siguientes reglas y pautas:

  • Una vez que los registros se eliminan de la Papelera de reciclaje mediante esta llamada, se pueden consultar mediante queryAll() durante algún tiempo. Por lo general, este tiempo es de 24 horas, pero puede ser más corto o más largo.
  • Una vez que los registros se eliminan mediante la llamada Database.EmptyRecycleBin , no se pueden recuperar.

Warren Mason es administrador de sistemas en Gurukul on Cloud (GoC). En GoC están utilizando Salesforce Flow para optimizar los procesos de ventas. Warren tiene un requisito para eliminar clientes potenciales sin correo electrónico. Está construyendo un flujo de pantalla:

  1. Descubra todos los clientes potenciales sin correo electrónico
  2. Eliminar definitivamente tales clientes potenciales

Enfoque de Campeón de Automatización (I-do):

Si bien esto se puede resolver con varias herramientas de automatización como Apex Trigger y otras, usaremos Salesforce Flow y llamaremos a un método de Apex . Para llamar a un método de Apex , agregue el elemento Acción a su Flujo de Salesforce y seleccione una clase de Apex con una anotación @InvocableMethod .

En este artículo, usaremos la llamada clase de base de datos EmptyRecycleBin . Con Database.EmptyRecycleBin es posible borrar los registros de Salesforce. El método EmptyRecycleBin() elimina los registros de la papelera de reciclaje inmediatamente. A partir del lanzamiento de Summer'23 , no es posible acceder directamente al método EmptyRecycleBin desde Flow, por eso estamos usando la clase Apex Invocable.

Antes de discutir la solución, permítame mostrarle un diagrama del proceso a un alto nivel. Dedique unos minutos a revisar el siguiente diagrama de flujo para comprenderlo.

Comencemos a construir este proceso de automatización.

Práctica guiada (nosotros hacemos):

Hay 2 pasos para resolver el requisito comercial de Warren usando Screen Flow . Debemos:

  1. Cree una clase de Apex y una clase de prueba para eliminar registros de forma permanente de la Papelera de reciclaje.
  2. Flujo de fuerza de ventas
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue un elemento Obtener registros para encontrar todos los clientes potenciales sin dirección de correo electrónico
    3. Agregue un elemento de decisión para verificar los clientes potenciales encontrados o no (del paso 2)
    4. Agregue el elemento Eliminar registros para eliminar clientes potenciales
    5. Agregar acción: llame a Empty RecycleBin Invocable Apex Class

Paso 1: Cree una clase de Apex y una clase de prueba

Ahora, tenemos que comprender una nueva anotación de Apex, es decir, @InvocableMethod . Esta anotación nos permite usar un método de Apex como algo que se puede llamar desde Flow y Apex. Los métodos invocables se llaman con la API REST y se usan para invocar un solo método de Apex. Los métodos invocables tienen valores de entrada y salida dinámicos y admiten llamadas de descripción.

La anotación InvocableVariable identifica una variable de clase utilizada como parámetro de entrada o salida para la acción invocable de un método InvocableMethod. Si crea su propia clase personalizada para usarla como entrada o salida de un método invocable, puede anotar variables de miembros de clase individuales para que estén disponibles para el método.

La anotación de variable invocable admite los modificadores que se muestran en este ejemplo.


@InvocableVariable(label='variableLabel' description='variableDescription' requerido=(verdadero | falso))

La clase EmptyRecycleBin contiene dos variables, una para eliminar un solo registro y otra para manejar la eliminación de varios registros. Siéntase libre de pasar el valor a una o ambas variables según sea necesario. Cree la siguiente clase en su organización.


clase pública EmptyRecycleBin { @InvocableMethod(label='Papelera de reciclaje vacía' description='Eliminar permanentemente los registros de la Papelera de reciclaje.' iconName='slds:estándar:record_delete' categoría = 'Acciones de Apex personalizadas') ejecución de vacío estático público (Lista <Solicitudes> lista de solicitudes) { List<SObject> recordstoDelete = New List<SObject>(); para (Solicitudes req: lista de solicitudes) { if(req.obj != null){ recordstoDelete.add(req.obj); } if(req.listofSObjects != null){ recordstoDelete.addAll(req.listofSObjects); } } if(registrosparaEliminar.tamaño()>0){ Database.emptyRecycleBin(registrosparaEliminar); } } Solicitudes de clases públicas{ @InvocableVariable (descripción ='Aceptar un registro de tipo SObject.' requerido=falso) objeto público SObject; @InvocableVariable (descripción ='Aceptar múltiples registros de un tipo SObject.' requerido=falso) public List<SObject> listofSObjects; }
}

Copie el código de GitHub o instálelo usando esta URL .

Paso 2.1: Definir propiedades de flujo

  1. Haga clic en Configuración .
  2. En el cuadro Búsqueda rápida, escriba Flujos .
  3. Seleccione Flujos y luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   opción y haga clic en Crear y configurar el flujo.
  5. Se abrirá el diseñador de flujo para usted.

Paso 2.2: Adición de elementos Obtener registros para encontrar clientes potenciales sin correo electrónico

El siguiente paso es usar el objeto Prospecto para encontrar los prospectos sin dirección de correo electrónico.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Obtener registros .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. Seleccione el objeto Prospecto de la lista desplegable.
  4. Seleccione Se cumplen todas las condiciones (Y) .
  5. Establecer condiciones de filtro
    1. Fila 1:
      1. Campo : Correo electrónico
      2. Operador : Igual
      3. Valor : {!$ConstanteGlobal.EmptyString}
  6. Cuántos registros almacenar:
    1. Seleccionar todos los registros
  7. Cómo almacenar datos de registro:
    1. Elija la opción para Almacenar automáticamente todos los campos .

Paso 2.3: uso del elemento de decisión para verificar la variable de recopilación de registros (del paso 2)

Ahora usaremos el elemento Decisión para comprobar la Variable de recopilación de registros del paso 2 para saber si devuelve el cliente potencial o no.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Decisión .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. En Detalles del resultado , ingrese la etiqueta que el nombre de la API se completará automáticamente.
  4. Requisitos de condición para ejecutar el resultado : se cumplen todas las condiciones (Y)
    1. Fila 1:
      1. Recurso: {!Get_Leads}
      2. Operador: es nulo
      3. Valor: {!$ConstanteGlobal.Falso}
    2. Haga clic en Listo .

Paso 2.4: Agregar acción: eliminar registros para eliminar clientes potenciales

El siguiente paso es eliminar los clientes potenciales que encontramos en el Paso 2.2 . Para ello utilizaremos el elemento Eliminar Registros .

  1. En Flow Designer, debajo del nodo , haga clic en el icono + y seleccione el elemento Eliminar registros .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. Para Cómo encontrar registros para eliminar, seleccione Usar los ID almacenados en una variable de registro o una variable de colección de registros .
  4. Selecciona el   {!Get_Leads} de la lista desplegable.
  5. Haga clic en Listo.

Paso 2.5: Adición de una acción para llamar a una clase de Apex invocable

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Acción .
  2. Seleccione la clase de Apex invocable EmptyRecycleBin .
  3. Ingrese un nombre en el campo Etiqueta : el nombre de la API se completará automáticamente.
  4. Establecer valores de entrada:
    1. Objeto para “listofSObjects” (Entrada) : Lead
    2. Objeto para "obj" (Entrada) : Plomo
  5. Almacenar valores de entrada
    1. listofSObjects : {!Get_Leads}
  6. Haga clic en Listo .

Al final, Warren's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, guarde el flujo.

Prueba de concepto

  1. Creé 201 clientes potenciales sin una dirección de correo electrónico para probar el flujo anterior.
  2. Ahora ejecute el flujo de pantalla y espere a que se complete el flujo.
  3. Vuelva a la Papelera de reciclaje para asegurarse de que los clientes potenciales se hayan eliminado definitivamente.

Evaluación formativa:

¡Quiero saber de ti!

¿Qué es una cosa que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntase libre de compartir en los comentarios a continuación.

Seguir leyendo

Acceda dinámicamente a etiquetas personalizadas en Apex

Última actualización el 23 de mayo de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • ¿Cómo acceder dinámicamente a la etiqueta personalizada en Apex?

Objetivos:

Después de leer este blog, podrá:

  • Acceda a la etiqueta personalizada en Apex dinámicamente
  • Acceda a la etiqueta personalizada en Apex de forma dinámica para un idioma
  • y mucho más

Ben Halpern es un desarrollador Jr. de Salesforce en Gurukul On Cloud (GoC) . Ben está escribiendo código Apex para una historia de usuario que requiere obtener la siguiente etiqueta personalizada en alemán e hindi.

Enfoque de Campeón de Automatización (I-do):

Después del lanzamiento de S ummer'23 , puede usar el método System.Label.get(namespace, label, language) para obtener una etiqueta personalizada, especificando opcionalmente un idioma . La función ahora permite la resolución dinámica de nombres de etiquetas en tiempo de ejecución, incluida la anulación del idioma actual del usuario si existe una traducción para el idioma solicitado.

También puede comprobar si existe una traducción para una etiqueta y un idioma en un espacio de nombres mediante Label.translationExists(namespace, label, language) . No puede acceder a las etiquetas que están protegidas en un espacio de nombres diferente.

Práctica guiada (nosotros hacemos):

Hay 3 pasos para resolver el requisito comercial de Ben usando Apex y Custom Label . Debemos:

  1. Configuración del banco de trabajo de traducción
  2. Crear etiquetas personalizadas
  3. Script de Apex para acceder dinámicamente a etiquetas personalizadas

Paso 1: configurar el banco de trabajo de traducción

Este paso es opcional; sin embargo, debemos asegurarnos de que el banco de trabajo de traducción esté configurado correctamente para los requisitos actuales. Lea este artículo de ayuda para obtener instrucciones paso a paso.

Asegúrese de agregar idiomas para la traducción, asignar traductores para cada idioma y activar o desactivar las traducciones de un idioma. Agregaré mi cuenta de usuario a hindi y alemán para el caso de uso comercial actual.

Paso 2: crea etiquetas personalizadas

  1. Haga clic en Configuración .
  2. En el cuadro Búsqueda rápida, escriba Etiquetas personalizadas .
  3. Seleccione Etiquetas personalizadas y luego haga clic en Nueva etiqueta personalizada .
    1. Cree la etiqueta personalizada como se muestra en la siguiente captura de pantalla:
  4. Haga clic en Ejecutar .

Paso 2: Script de Apex para acceder dinámicamente a etiquetas personalizadas

  1. Haga clic en Configuración | Consola de desarrollador .  
  2. Usaré la herramienta Ejecutar Apex anónimo en Developer Console para ejecutar el código Apex.
    1. Un bloque anónimo es un código Apex que no se almacena en los metadatos, pero se puede compilar y ejecutar. Los bloques anónimos se ejecutan como el usuario actual y pueden fallar al compilarse si el código viola los permisos de objeto y de nivel de campo del usuario.
  3. Para abrir la ventana Ejecutar anónimo, haga clic en Depurar | Abra la ventana Ejecutar anónimo .
     String choiceInEnglish = System.Label.get('rakeshistomMVP','PreferredFoodChoice','');
    system.debug('Valor original-'+choiceInEnglish); String choiceInHindi = System.Label.get('rakeshistomMVP','PreferredFoodChoice','hi');
    system.debug('Hindi Value-'+choiceInHindi); String choiceInGerman = System.Label.get('rakeshistomMVP','PreferredFoodChoice','de');
    system.debug('Valor alemán-'+elecciónEnAlemán);
Seguir leyendo

Muévete a 2GP Administrado con Migraciones de Paquetes ☁️

Muévete a 2GP Administrado con Migraciones de Paquetes ☁️

Esta es una traducción que desde EGA Futura ofrecemos como cortesía a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoamérica .

El enlace a la publicación original, lo encontrarás al final de este artículo.

Pasar a 2GP administrado con migraciones de paquetes | Blog de desarrolladores de Salesforce

Han pasado casi cuatro años desde que lanzamos por primera vez el paquete administrado de segunda generación (2GP) , que permite a nuestros socios de AppExchange crear y distribuir soluciones utilizando un modelo de desarrollo basado en CLI, basado en fuente y fácil de automatizar.

Desde entonces, recibimos una gran cantidad de excelentes comentarios de nuestra comunidad de desarrolladores, y continuamos innovando en múltiples áreas relacionadas con la experiencia del desarrollador, el rendimiento, la paridad del tipo de metadatos con el paquete administrado de primera generación (1GP), etc. Cada vez que nos reunimos con desarrolladores de ISV, constantemente escuchamos sobre la necesidad de que Salesforce los ayude a ellos y a sus clientes a pasarse al mundo de 2GP.

¡Hoy, tengo algunas noticias emocionantes para compartir con todos ustedes! Estamos abordando la pregunta n.º 1 de nuestros desarrolladores de ISV al presentar una nueva función: Migraciones de paquetes . En pocas palabras, Package Migrations automatiza por completo el proceso de convertir paquetes 1GP a 2GP y migra sin problemas a los clientes con paquetes instalados a 2GP. Si es un socio ISV que crea paquetes administrados, ¡esta publicación de blog es para usted!

Antes de sumergirnos en los detalles de las migraciones de paquetes, echemos un vistazo a algunos beneficios de usar 2GP para el desarrollo de paquetes.

Beneficios de usar 2GP para el desarrollo de paquetes

En el corazón de 2GP se encuentra un modelo de desarrollo basado en fuente, donde un repositorio de código fuente como Git representa la fuente de la verdad para su paquete. Esto es fundamentalmente diferente del mundo de 1GP, donde utiliza una organización de empaquetado para mantener todos los metadatos que desea empaquetar y distribuir a sus clientes.

Este modelo de desarrollo impulsado por la fuente, impulsado por la CLI de Salesforce , puede aumentar drásticamente la productividad y la colaboración de su equipo. Los desarrolladores pueden usar Dev Hub para activar rápidamente organizaciones temporales , crear una función de forma conjunta y comprometerla con el control de código fuente. Cuando esté listo para distribuir una nueva versión de su 2GP, simplemente extraiga la rama correspondiente a una máquina local y use la CLI para crear su nueva versión del paquete.

Es importante destacar que este enfoque basado en CLI también significa que puede integrar fácilmente su proceso de empaque por completo en CI/CD, lo que facilita la automatización completa de su flujo de trabajo. Puede, por ejemplo, ejecutar automáticamente Salesforce Code Analyzer en una base de código y, siempre que no se encuentren problemas, crear una nueva versión del paquete.

En el mundo de 1GP, estabas atrapado usando un espacio de nombres diferente para cada uno de tus paquetes. En 2GP, todos sus paquetes pueden compartir el mismo espacio de nombres, lo que le permite aprovechar un enfoque verdaderamente modular para el desarrollo de paquetes para mantener sus paquetes bien organizados. También es posible declarar explícitamente dependencias entre paquetes , asegurando que todo funcione en conjunto sin problemas.

Con 2GP, también obtiene un control de versiones flexible, lo que le permite abandonar versiones de paquetes que ya no desea utilizar. En su lugar, puede especificar un ancestro de la versión del paquete y crear efectivamente una nueva rama en la que desee continuar con su desarrollo.

Finalmente, apoyar a los clientes nunca ha sido tan fácil con 2GP. En el mundo de 1GP, los parches solo se pueden crear desde una organización de parches. Con el modelo de desarrollo basado en el código fuente de 2GP, puede simplemente crear una versión del paquete de parches directamente desde la CLI y, siempre que el parche cumpla con los requisitos relacionados con los cambios menores y la ascendencia del paquete, se crea y está listo para instalarse en la organización de su cliente.

Dicho todo esto, 2GP puede agregar mucho valor a su proceso de desarrollo. ¡Ahora, averigüemos cómo las Migraciones de paquetes pueden ayudarlo a llegar al mundo de 2GP!

Introducción a las migraciones de paquetes

Package Migrations amplía la funcionalidad de 2GP con comandos CLI adicionales y capacidades adicionales para ayudar a los desarrolladores de ISV a realizar una transición completa al mundo de 2GP. Actualmente se encuentra en Developer Preview y está abierto para que todos los desarrolladores de ISV lo prueben en sus paquetes 1GP existentes. ¡Siga leyendo para saber cómo participar en la versión preliminar para desarrolladores!

Hay dos elementos para las migraciones de paquetes: conversión de paquetes y migración de paquetes.

La conversión de paquetes se inicia a través del nuevo comando sf package convert . Toma una versión específica de su paquete 1GP existente (Acme v1.0 en este ejemplo) y usa algo de magia detrás de escena para convertirlo en una versión de paquete 2GP correspondiente (Acme v1.0.0.1 usando la numeración de versión 2GP).

Una vez que tenga una versión de paquete 2GP convertida, puede migrar clientes a 2GP. Si tiene un suscriptor con Acme v1.0 instalado, iniciaría el proceso tratándolo como una actualización de paquete normal: a través de la CLI con sf package install (ver documentos ), instalación de URL o actualizaciones automáticas.

Mientras intenta instalar su paquete 2GP convertido v1.0.0.1, que coincide con la versión mayor.menor del paquete 1GP instalado en el suscriptor A, ejecutamos una nueva lógica que inicia el proceso de migración del paquete . Sin cambiar ningún metadato en la organización del cliente, y sin requerir la intervención del usuario si usa actualizaciones automáticas, simplemente cambiamos las referencias del paquete para que apunten al nuevo paquete 2GP.

Una vez que un cliente migre a 2GP, cualquier parche o actualización del paquete de este cliente deberá usar 2GP.

Participación en la versión preliminar para desarrolladores de migraciones de paquetes

Para probar las migraciones de paquetes, debe ser un socio ISV con acceso a la comunidad de socios de Salesforce .

En la Comunidad de socios, encontrará un canal exclusivo para esta versión preliminar para desarrolladores. Le recomendamos que se una a este canal y configure las notificaciones para enviar por correo electrónico cada publicación para recibir las últimas actualizaciones del equipo de Migraciones de paquetes.

En este canal, encontrará una serie de enlaces útiles, incluido un formulario para registrarse en Developer Preview. Necesitaremos algunos detalles, como su ID de organización de empaquetado, para que podamos activar la función Migraciones de paquetes.

Es importante destacar que participar en Developer Preview no tendrá ningún impacto en su paquete de 1GP. Por lo tanto, no se preocupe y participe, ya que sus comentarios son esenciales para ayudarnos a identificar y resolver problemas lo antes posible.

Una vez que esté activado, puede comenzar a probar las migraciones de paquetes.

Probar la conversión de un paquete administrado de primera generación

Muy bien, ¡comencemos! En primer lugar, asegúrese de haber instalado la CLI de Salesforce.

Si lo instaló anteriormente, asegúrese de estar usando la última versión:

sf update

Ahora asegúrese de que está ejecutando dentro del contexto de un proyecto de SalesforceDX. Puedes crear un nuevo proyecto usando:

sf project generate --name <Your project name>

Vincule el espacio de nombres de su 1GP administrado iniciando sesión en su DevHub y siga los pasos .

¡Eso es todo para la configuración! Ahora puede continuar e intentar convertir su paquete.

sf package convert --installation-key mdpTest --package 033xxx --wait 20

Repasemos los parámetros. Estamos utilizando la clave de instalación mdpTest . Será necesario cada vez que intente instalar esta versión del paquete en el futuro. Alternativamente, puede usar --installation-key-bypass para omitir la clave de instalación. Deberá ingresar su ID de paquete 1GP completo comenzando con 033 después de --package . El proceso de conversión puede demorar un poco y, por lo tanto, agregamos la opción --wait para esperar 20 minutos.

A medida que se ejecuta el proceso de conversión, obtendrá una actualización de su estado. Suponiendo que todo salió bien, recibirá un mensaje de éxito con la ID y la URL de instalación para la versión del paquete 2GP recién convertida.

Converting Package... ... Successfully created the package version [08cxxx00000KzFSAA0]. Subscriber Package Version Id: 04txxx00000u1cqAAA
Package Installation URL: https://login.salesforce.com/packaging/installPackage.apexp?p0=04txxx00000u1cqAAA
As an alternative, you can use the "sfdx package:install" command.

¡Felicitaciones, su paquete ahora está convertido a 2GP! Si encontró algún problema en el camino, infórmenos utilizando el formulario en el grupo Comunidad de socios .

Nota: Al momento de escribir esta publicación de blog, este comando convertirá la última versión administrada y lanzada de su paquete. Estamos trabajando para permitirle convertir versiones de paquetes Beta y anteriores. Por otro lado, durante Developer Preview, no es posible promocionar paquetes 2GP convertidos al estado Lanzado.

Ahora que su paquete está convertido, probemos la migración de una organización suscriptora.

Probar la migración de un paquete administrado de primera generación instalado

Para probar la migración de un suscriptor, deberá crear una organización borrador ya que, durante la versión preliminar para desarrolladores, solo admitimos organizaciones borrador. Puede configurar una nueva organización borrador como esta:

sf org create scratch -f project-scratch-def.json -a MyScratchOrg

En el código anterior, -f apunta a su archivo de definición de organización borrador . Debe asegurarse de que su archivo de definición de organización borrador incluya cualquier función de Salesforce de la que pueda depender su paquete. Finalmente, estamos usando MyScratchOrg como el alias de esta organización.

Con la configuración de la organización borrador, continúe e instale la versión del paquete 1GP que convirtió anteriormente utilizando la URL de instalación que obtiene de su organización de empaquetado 1GP. Esta debería ser su última versión administrada y lanzada en este momento.

Puede confirmar que el paquete se instaló correctamente durante la pantalla de instalación. Vea el ejemplo a continuación.

Y consulte la sección Paquetes instalados del menú Configuración.

Ahora que instaló su 1GP en la organización borrador, está listo para la migración.

Inicie el proceso de migración utilizando la URL de instalación que recibió al final del proceso de conversión del paquete:

https://login.salesforce.com/packaging/installPackage.apexp?p0=04txxx00000u1cqAAA

Ahora pasará por el mismo conjunto de pantallas que el anterior, pero esta vez para su paquete 2GP convertido.

Actualmente, la interfaz de usuario muestra que la "instalación" se ha completado. En realidad, lo que hicimos fue una migración de paquetes que se completó con éxito.

Tenga en cuenta que en este ejemplo, he usado la segunda compilación Beta para la versión 1.7, que corresponde a la misma versión mayor.menor que la versión del paquete 1GP instalada anteriormente. Como el 2GP convertido, durante la Vista previa del desarrollador, se crea como una versión Beta, se muestra como tal.

Una vez más, puede confirmar la versión del paquete actualizado en la sección Paquetes instalados del menú Configuración, que también muestra, en este ejemplo, que el número de versión es 1.7 (Beta 2).

Una vez que haya migrado el paquete en su organización borrador, le recomendamos que lo pruebe para asegurarse de que funciona como se esperaba.

También debe aprovechar la oportunidad para verificar si las aplicaciones, como la aplicación de administración de licencias o la aplicación de administración de funciones, muestran la información correcta para su paquete migrado. Si encuentra algo que no está bien, por favor plantéelo como un problema y lo investigaremos.

Mientras tanto …

Se necesitarán algunos lanzamientos para que las migraciones de paquetes estén disponibles de forma general. Su participación en Developer Preview, probando sus paquetes y brindándonos comentarios, es esencial para ayudarnos a identificar y resolver problemas antes.

Mientras tanto, ¿qué más puedes hacer? Le recomendamos que experimente con el uso de paquetes de segunda generación como parte de su modelo de desarrollo actual basado en 1GP. ¿Confundido? Dejame explicar.

Como mencioné anteriormente, hay una serie de ventajas específicas de 2GP. De estos, hay algunos de los que puede comenzar a beneficiarse hoy. Estos son los pasos que puede seguir:

  1. Puede configurar su control de código fuente y alimentarlo con metadatos extraídos de su organización de empaquetado.
  2. Puede crear un DevHub y organizaciones borrador derivadas para el desarrollo utilizando metadatos de su control de código fuente.
  3. Puede crear un paquete 2GP para desarrollo interno y pruebas que reflejen su paquete 1GP, pero usando un espacio de nombres solo interno o el mismo que su paquete 1GP. Las colisiones de espacios de nombres evitarán que los paquetes 1GP y 2GP con el mismo espacio de nombres se instalen en el mismo entorno.
  4. Una vez que esté satisfecho con el contenido de su paquete 2GP, puede migrar los metadatos desde la rama de control de fuente correspondiente a su organización de empaquetado y emitir una nueva versión de su paquete para distribuir a los clientes.

Esto lo ayudará a sumergirse en el mundo de 2GP y, una vez que Package Migrations esté disponible de forma general, podrá abandonar su modelo de desarrollo de 1GP por completo y pasar por completo a un modelo de desarrollo de 2GP.

Conclusión

Estamos muy entusiasmados con las migraciones de paquetes, pero necesitamos su ayuda para asegurarnos de que sea lo mejor posible. Si es un desarrollador de ISV, continúe y regístrese para la Vista previa para desarrolladores en la Comunidad de socios.

¡Estamos ansiosos por recibir sus comentarios!

Más recursos

Grupo de vista previa para desarrolladores en la comunidad de socios

Embalaje gestionado de segunda generación (documentación)

Sobre el Autor

John Belo es director de gestión de productos para productos de experiencia de desarrollador y se centra en migraciones de paquetes, analizador de código de Salesforce y análisis de aplicaciones de AppExchange. Ha estado en Salesforce durante más de siete años y pasó la mayor parte de este tiempo en el equipo de AppExchange. Comenzó liderando un equipo de evangelistas técnicos de ISV en EMEA y ahora es parte del equipo de gestión de productos de experiencia de desarrollador, siempre con la intención de ayudar a los ISV a tener el mayor éxito posible.

Obtenga las últimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a través de Slack o RSS.

Agregar a Slack Suscríbete a RSS

Seguir leyendo

Contact Centers vs. Call Centers: ¿Cuál es la diferencia?

Contact Centers vs. Call Centers: ¿Cuál es la diferencia?

Los términos centro de llamadas y centro de contacto a menudo se usan indistintamente y, aunque ambos son centros de atención al cliente, no son exactamente lo mismo. Los centros de llamadas se enfocan únicamente en las comunicaciones telefónicas, mientras que los centros de contacto modernos brindan soporte a través de una variedad de canales, que incluyen teléfono, correo electrónico, chat en vivo, artículos de conocimiento de autoservicio y chatbots. Profundicemos en las diferencias entre un centro de contacto y un centro de llamadas, para que pueda decidir el mejor enfoque de servicio al cliente para su negocio.

Los clientes de hoy tienen grandes expectativas para las empresas con las que hacen negocios. Descubrimos que el 94% de los clientes dicen que una experiencia positiva de servicio al cliente los hace más propensos a realizar una compra nuevamente. Sin embargo, solo el 13% de los clientes dicen que pueden resolver sus problemas con poco esfuerzo.

¿Cómo es una experiencia positiva del cliente? Se trata de reunirse con los clientes donde están, utilizando los métodos de comunicación y la tecnología que prefieren, y brindando una variedad de opciones de servicio, en lugar de limitar el servicio solo por teléfono. A medida que las preferencias de los clientes evolucionan con la tecnología, más centros de llamadas se están transformando en centros de contacto .

Modernice su centro de contacto

La combinación correcta de canales y herramientas de servicio al cliente puede ayudarlo a ser más eficiente y mejorar la satisfacción del cliente. Nuestra guía revela cómo las organizaciones de servicio de alto rendimiento lo hacen posible.

¿Qué es un centro de llamadas?

Un centro de llamadas es un grupo de servicio al cliente remoto o local que brinda servicio al cliente por teléfono. Los centros de llamadas pueden emplear desde unos pocos agentes para pequeñas y medianas empresas hasta cientos para grandes corporaciones.

Cada agente generalmente maneja varias llamadas telefónicas por día para ayudar con los problemas de los clientes, desde consultas de facturación hasta problemas técnicos complejos. Algunos centros de llamadas utilizan software de administración de relaciones con los clientes (CRM) para resolver problemas más rápido y proporcionar a los agentes datos de clientes, pero muchos centros de llamadas todavía están trabajando para adoptar esta tecnología.

Un centro de contacto es un centro de servicio al cliente que proporciona una variedad de canales de comunicación, incluidos teléfono, correo electrónico, redes sociales, chat, SMS y mensajería, videoconferencia , uso compartido de pantalla y más. Los agentes suelen tener la experiencia para trabajar en todos estos canales o en un subconjunto especializado según la estructura de su equipo.

Un centro de contacto también utiliza la tecnología CRM para capacitar a los agentes para ayudar a los clientes, acelerar los tiempos de respuesta y brindar interacciones y ofertas personalizadas.

Las preferencias de comunicación del cliente varían ampliamente. Alguien que está en movimiento puede marcar una línea de servicio al cliente, mientras que alguien en su escritorio puede comunicarse con un agente a través del chat en vivo.

Cuando los centros de contacto enrutan las solicitudes de múltiples canales a los agentes de servicio en función de su disponibilidad y conjunto de habilidades, los agentes de servicio pueden realizar múltiples tareas y aumentar su eficiencia.

Una métrica clave para el éxito del centro de contacto es la reducción del trabajo manual de los agentes. Los agentes tienen tareas como notas de casos, transferencias de datos y enrutamiento de llamadas, lo que puede reducir la velocidad y la eficiencia del servicio que brindan.

Los centros de contacto utilizan la automatización y la inteligencia artificial (IA) para reducir estas tareas de la carga de trabajo de sus agentes para que puedan concentrarse en resolver los problemas de los clientes y brindar una experiencia de servicio perfecta. Estas tecnologías pueden hacer cosas como transcribir automáticamente llamadas telefónicas, sugerir respuestas de chat en vivo o encontrar artículos de ayuda para que los agentes los compartan con los clientes.

La IA generativa está facilitando aún más la eficiencia. Cuando se aplica al servicio, la IA generativa puede tomar datos del cliente, como una consulta del cliente o información de la cuenta, y crear algo nuevo a partir de ellos. Algunos ejemplos de estos poderosos casos de uso incluyen la generación automática de artículos de conocimientos basados en datos de resolución de casos, brindar respuestas personalizadas a preguntas de chat en vivo y extraer datos en tiempo real para ayudar a los agentes a resolver los problemas de los clientes rápidamente.

Los centros de llamadas tienen un enfoque singular: brindar un servicio de calidad por teléfono. Los centros de contacto adoptan un enfoque omnicanal que muchos consumidores encuentran más conveniente (ya no hay que esperar en la línea telefónica ni escuchar la serenata de la música del ascensor).

Elección de canal

Sus clientes solo quieren que sus problemas se resuelvan lo más rápido posible. Al final del día, debe reunirse con ellos donde están a través de sus canales de comunicación preferidos, que variarán según el tipo de servicio o producto que ofrezca.

Con un centro de contacto, puede llegar a los clientes en estos canales:

  • Teléfono
  • Correo electrónico
  • Medios de comunicación social
  • Formularios en línea
  • Bases de conocimiento
  • Portales de autoservicio para clientes
  • Chat en línea/soporte en vivo
  • aplicaciones de mensajería
  • Texto/SMS
  • Aplicaciones móviles
  • Comunidades y foros de discusión
  • Soporte de vídeo

Su industria influirá en gran medida en los canales de servicio al cliente que brinda su empresa. ¿Eres una empresa de servicios públicos? Entonces, el autoservicio , los SMS y el teléfono son fundamentales para su centro de contacto. ¿Qué tal un minorista de comercio electrónico? Sus clientes ya están comprando en línea; poder comunicarse con usted a través de la web o el chat móvil probablemente sea importante para ellos.

A pesar de la expansión y aceptación de los canales digitales y la variedad de preferencias de los clientes, el 81 % de los profesionales de servicios dicen que el teléfono es un canal preferido para problemas complejos, por lo que incluso los centros de contacto digitales deben mantener abiertas las líneas telefónicas.

Servicio al cliente personalizado

Una diferencia importante entre un centro de llamadas y un centro de contacto es el uso de los datos del cliente y la tecnología CRM para brindar un servicio al cliente personalizado.

Cuando el teléfono es la única opción para ponerse en contacto con una empresa, las interacciones tienden a ser simples, como restablecer la contraseña de una cuenta o hacer una pregunta, y menos frecuentes con el mismo cliente. Y dado que la tecnología CRM solo la utilizan algunos centros de llamadas, los agentes pueden tener información limitada sobre un cliente y sus preferencias.

Los centros de contacto tienden a manejar tareas más complejas. Los problemas más simples de los clientes generalmente se resuelven a través de canales de bajo contacto (piense en artículos de autoservicio, chatbots , SMS o chat en vivo), mientras que los problemas más complejos se manejan por teléfono.

Un agente de servicio en un centro de contacto usa la instancia de CRM de la empresa para hacer referencia a interacciones pasadas , ver qué productos o paquetes tiene actualmente el cliente y brindar opciones personalizadas de ventas cruzadas o adicionales. Esto es posible gracias a la integración de los datos de ventas, servicios, marketing y comercio, todos canalizados a través de una única plataforma de CRM.

Habilidades de agente

Su elección de centro de contacto frente a centro de llamadas también se reducirá a las habilidades de sus agentes y al presupuesto y los recursos disponibles para la capacitación de agentes.

Dado que los agentes del centro de contacto utilizan más canales digitales y asincrónicos que los centros de llamadas, deben poder realizar múltiples tareas y deben sentirse cómodos con la tecnología digital. Los agentes del centro de llamadas, por otro lado, deben pensar rápidamente y mantener la calma para reducir las situaciones en tiempo real.

Los agentes de servicio al cliente deben tener la combinación correcta de habilidades blandas y duras para cumplir con las expectativas del cliente. Cuando se trata de habilidades blandas, deben ser comunicadores y oyentes competentes, buenos pensadores críticos y solucionadores de problemas, y ser capaces de resolver conflictos en situaciones tensas. Cuando se trata de habilidades duras, necesitan saber cómo usar tableros, herramientas de servicio, consolas, herramientas de automatización y acceso a datos de clientes para hacer bien su trabajo y hacer recomendaciones más personalizadas a los clientes en tiempo real.

Los centros de llamadas son más sencillos de operar, con altos costos operativos provenientes de la plantilla y los sistemas telefónicos o el software. Su simplicidad puede ser atractiva para las empresas que desean evitar complicar demasiado su estrategia de servicio al cliente, especialmente si tienen una base de clientes pequeña y conocida que prefiere obtener el servicio por teléfono.

Por el contrario, los centros de contacto personalizan la experiencia del cliente al proporcionar varios canales de servicio según las preferencias del cliente. Esto facilita que los problemas se resuelvan de forma asincrónica y los problemas más complejos se resuelvan por teléfono. Este enfoque rentable es lo que llamamos " Cambio a escala ".

El 48% de los clientes han cambiado de marca para un mejor servicio al cliente.

Informe de estado del cliente conectado de Salesforce

Si bien los centros de contacto generalmente tienen costos continuos más altos debido a las licencias de software, sus clientes tienen una mejor experiencia de servicio cuando pueden elegir cómo interactúan con su negocio. Esto significa que sus clientes se sienten satisfechos o incluso encantados después de una interacción de servicio, lo que conducirá a una puntuación CSAT más alta , una mayor lealtad del cliente y generará más ingresos de clientes repetidos y renovados.

Estrategia de call center vs. contact center

Si no está seguro de qué estrategia de servicio al cliente es adecuada para usted, hágase las siguientes preguntas:

  • ¿Qué tan grande es la base de clientes que atiendes?
    • R: Daremos servicio a un grupo demográfico de nicho pequeño
    • B: Tendremos una base de clientes amplia y diversa
  • ¿Qué tan difícil será resolver estos problemas para sus clientes?
    • R: La mayoría de los problemas son fáciles de resolver.
    • B: Los problemas variarán en complejidad
  • ¿Qué tan importante es para su empresa brindar un servicio personalizado al cliente?
    • R: El servicio personalizado no es una prioridad para mi negocio
    • B: El servicio personalizado es una prioridad para mi negocio
  • ¿Qué tan importante es para su negocio ofrecer múltiples canales de soporte?
    • R: Tener múltiples canales de soporte no es muy importante para mi negocio
    • B: Tener múltiples canales de soporte es importante para mi negocio
  • ¿Su empresa tiene un presupuesto de servicio limitado o puede admitir múltiples licencias de software y tecnología?
    • R: Mi negocio tiene un presupuesto limitado para servicio al cliente
    • B: Mi empresa tiene presupuesto para admitir múltiples licencias de software y tecnologías

Si respondió en su mayoría con A, entonces una estrategia de centro de llamadas puede ser la mejor opción para su negocio. Si respondió con B en su mayoría, entonces un centro de contacto es la mejor estrategia para usted.

El 94% de los clientes dice que un buen servicio al cliente los hace más propensos a realizar otra compra.

Informe de estado del cliente conectado de Salesforce

El servicio al cliente es el negocio de asegurarse de que sus clientes se mantengan felices y leales. Los centros de llamadas siguen siendo relevantes en ciertos contextos, pero el mundo está cambiando; asegúrese de que sus modelos de atención al cliente cambien con él.

Cree una mejor experiencia de centro de contacto

Vea cómo puede combinar IA, datos y CRM para conectarse en el canal correcto, personalizar cada conversación y escalar su servicio al cliente.

Seguir leyendo

Retrospectiva de un desarrollador de plataforma de TrailblazerDX '23 ☁️

Retrospectiva de un desarrollador de plataforma de TrailblazerDX '23 ☁️

TrailblazerDX '23 estuvo lleno de innovación y contenido para los desarrolladores. En este blog, la perspectiva de un desarrollador de Salesforce Platform y una lista de recursos de TDX.

La publicación Retrospectiva de un desarrollador de plataforma de TrailblazerDX '23 apareció primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Diferentes formas de hacer que el componente de la pantalla sea de solo lectura

Diferentes formas de hacer que el componente de la pantalla sea de solo lectura

Última actualización el 9 de abril de 2023 por Rakesh Gupta Gran idea o pregunta duradera: ¿Cómo hacer que el componente de pantalla sea de solo lectura? Objetivos: después de leer este blog, podrá: Agregar texto de solo lectura al componente de pantalla usando Display Text Agregar texto de solo lectura al componente de pantalla usando un Lightning Web personalizado

La publicación Diferentes formas de hacer que el componente de pantalla sea de solo lectura apareció primero en Automation Champion .

Seguir leyendo

Buscar el siguiente día hábil a partir de una fecha específica

Buscar el siguiente día hábil a partir de una fecha específica

Última actualización el 7 de abril de 2023 por Rakesh Gupta Gran idea o pregunta duradera: no queremos trabajar los fines de semana o días festivos, ¡todos lo entendemos! Si es así, ¿cree que nuestros clientes o prospectos lo hacen? Si tiene dudas, intente enviar un correo electrónico a

La publicación Buscar el siguiente día hábil a partir de una fecha específica apareció por primera vez en Automation Champion .

Seguir leyendo

¡Múltiples acciones programadas dentro de un solo flujo!

¡Múltiples acciones programadas dentro de un solo flujo!

Última actualización el 2 de abril de 2023 por Rakesh Gupta Gran idea o pregunta duradera: ¿Cómo se programan varios correos electrónicos con Salesforce Flow? Objetivos: En este artículo, el lector aprenderá lo siguiente: Cómo usar Salesforce Flow para enviar múltiples alertas por correo electrónico usando rutas programadas y mucho más Negocios

La publicación ¡Múltiples acciones programadas dentro de un solo flujo! apareció por primera vez en Automation Champion .

Seguir leyendo

Uso del flujo de credenciales del cliente para una autenticación API más sencilla ☁️

Uso del flujo de credenciales del cliente para una autenticación API más sencilla ☁️

Las API de Salesforce ahora son compatibles con las credenciales de cliente de OAuth, lo que facilita más que nunca establecer integraciones de servidor a servidor que no necesariamente necesitan el contexto del usuario.

La publicación Uso del flujo de credenciales del cliente para una autenticación API más sencilla apareció primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Relación de contacto de cuenta en Salesforce

Relación de contacto de cuenta en Salesforce

Hola amigos, hoy vamos a entender acerca de la relación de contacto de cuenta en Salesforce En general, ¿cómo se relacionan la cuenta y un contacto entre sí? El contacto múltiple es… Leer más »

Seguir leyendo

Agregar seguidores de Chatter al registro

Cómo agregar automáticamente seguidores de Chatter al registro

La publicación Agregar seguidores de Chatter al registro apareció primero en Automation Champion .

Seguir leyendo