Categories
Developers Tutoriales de Salesforce

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

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2023/07/getting-started-with-external-actions.html

Categories
Developers Tutoriales de Salesforce

Comience a crear aplicaciones de Salesforce ahora con un nuevo proyecto de Trailhead ☁️

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.

Comience a crear aplicaciones de Salesforce ahora con un nuevo proyecto de Trailhead | Blog de desarrolladores de Salesforce

Los desarrolladores valoran y confían en Salesforce Platform porque simplifica el proceso de creación de soluciones empresariales seguras. Al utilizar las herramientas y los servicios integrados de la plataforma para la automatización, la integración y más, los desarrolladores pueden lograr el éxito comercial más rápido. Los desarrolladores de Salesforce abordan problemas comerciales complejos escribiendo código y utilizando herramientas sin código que ofrecen funciones simples rápidamente. Las herramientas sin código de la plataforma reducen la necesidad de que los desarrolladores escriban código repetitivo, para que puedan concentrarse en escribir código para funciones de mayor valor.

Para iniciar su viaje de desarrollo de Salesforce, hemos creado un nuevo Proyecto Trailhead: Comience con el desarrollo de Salesforce . Este blog le presenta el proyecto y proporciona una descripción general de lo que puede esperar de él.

Además de Salesforce Platform, el ecosistema más amplio de tecnologías de Salesforce incluye Heroku, MuleSoft, Marketing Cloud, Tableau, Slack y otros. El proyecto Trailhead del que hablaremos aquí está diseñado específicamente para desarrolladores que estén interesados en comenzar con Salesforce Platform.

requisitos previos

El único requisito previo para este proyecto es crear una cuenta en Trailhead , nuestra plataforma de aprendizaje en línea gratuita y divertida. Una vez que llegue a Trailhead, haga clic en el proyecto Comenzar con el desarrollo de Salesforce y siga las instrucciones del proyecto.

Si tiene experiencia previa en ingeniería de software, puede encontrar las instrucciones paso a paso fáciles de navegar. Sin embargo, los estudiantes sin experiencia en programación también deberían poder completar este proyecto.

Panorama de herramientas para desarrolladores de Salesforce

La plataforma Salesforce permite a los equipos de desarrollo elegir la herramienta adecuada para el trabajo adecuado. La combinación de herramientas sin código con código escrito hace que los desarrolladores sean más productivos y acelera el desarrollo.

Herramientas sin código: las herramientas sin código vienen listas para usar dentro del entorno de Salesforce. Los desarrolladores usan estas herramientas para crear modelos de datos de aplicaciones (Schema Builder), configurar la seguridad de los datos, escribir automatización sin código y mucho más.

Herramientas de código : como cualquier otra tecnología de desarrollo de software, los desarrolladores de Salesforce Platform utilizan herramientas de línea de comandos y un IDE. La CLI de Salesforce es la herramienta de línea de comandos que ejecuta comandos en organizaciones de Salesforce y funciona con archivos de origen en su máquina local. El paquete de extensión de Salesforce para Visual Studio Code contiene funciones que agilizan aún más el desarrollo y brindan una experiencia IDE.

Su primer paso hacia el desarrollo de Salesforce es aprender a instalar estas herramientas. La primera unidad del proyecto, Prepárese para desarrollar , está diseñada para ayudarlo a configurar el entorno de desarrollo y prepararse para crear aplicaciones.

El poder de menos código

Las aplicaciones modernas suelen necesitar una interfaz de usuario intuitiva, API para integrarse con otros sistemas y procesos, y una seguridad robusta, todo lo cual requiere un código complejo. La buena noticia es que Salesforce Platform proporciona herramientas integradas para ayudarlo a incorporar estas funciones en sus aplicaciones sin necesidad de escribir y mantener una gran cantidad de código.

La segunda unidad del proyecto, Crear un modelo de datos mediante clics , le presenta herramientas sin código para crear modelos de datos y también proporciona una descripción general de algunas de las capacidades listas para usar de la plataforma Salesforce.

Ampliación de los servicios listos para usar y las capacidades de la plataforma

Los desarrolladores pueden personalizar la plataforma Salesforce para resolver problemas comerciales complejos. Una de las formas en que pueden hacerlo es escribiendo código para ampliar las capacidades de las herramientas sin código de la plataforma.

JavaScript y Apex son los dos lenguajes más destacados en Salesforce Platform para escribir personalizaciones. Apex es el lenguaje de back-end más ampliamente adoptado en el ecosistema de Salesforce, y JavaScript se utiliza para el desarrollo de front-end que aparece a través de Lightning Web Components.

Escribiendo lógica de negocios en Apex

El lenguaje de programación de Apex está optimizado para ejecutarse en el entorno multiusuario de Salesforce. Está fuertemente tipado y orientado a objetos, y permite a los desarrolladores automatizar procesos comerciales de back-end complejos cuando se necesita código.

Apex se integra con la capa de persistencia de datos de Salesforce y tiene soporte integrado para trabajar con datos de Salesforce, lo que permite a los desarrolladores ser más productivos. Y además de eso, Apex fomenta automáticamente las buenas prácticas de codificación al hacer cumplir los límites del regulador y los requisitos de prueba .

Los desarrolladores de Salesforce necesitan conocer Apex, ya que les permite ampliar la funcionalidad lista para usar proporcionada por la Plataforma de Salesforce. La tercera unidad del proyecto, Write Business Login in Apex , cubre cómo escribir y probar el código Apex.

Personalización de la interfaz de usuario de Salesforce con componentes web Lightning

Los componentes web Lightning son elementos HTML personalizados que utilizan los estándares de los componentes web y están creados con HTML y JavaScript moderno. Un componente web Lightning (LWC) se ejecuta en el navegador de forma nativa y permite a los desarrolladores crear nuevas aplicaciones o personalizar la interfaz de usuario lista para usar de las aplicaciones existentes.

Saber cómo trabajar con LWC es una habilidad de desarrollo clave de Salesforce, ya que le permite crear experiencias personalizadas en la plataforma de Salesforce. La última y última unidad, Crear un componente de interfaz de usuario reutilizable con componentes web Lightning , lo guiará paso a paso a través del proceso de creación de un componente web Lightning.

¿Qué más puedes aprender?

Además del proyecto Trailhead que se analiza en este blog, tiene la oportunidad de aprender habilidades de desarrollo aún más importantes en Trailhead . Algunos que recomendamos incluyen:

Flujo de fuerza de ventas

Salesforce Flow le permite automatizar los procesos comerciales con poca o ninguna codificación, lo que le permite ahorrar tiempo y recursos. Puede interactuar con Apex y LWC. Por ejemplo, como desarrollador, puede escribir clases de Apex que Flow puede invocar. También puede crear una interfaz de usuario de flujo personalizada usando LWC, o tener su flujo alojado en la página en un LWC. Al combinar Flows, Apex y LWC, puede crear rápidamente soluciones que agreguen valor comercial.

Funciones de la fuerza de ventas

Para el código de escala elástica, puede utilizar Funciones de Salesforce . Estas unidades de código de funciones como servicio (FaaS) le permiten ampliar Salesforce utilizando lenguajes de código abierto como Java, JavaScript y Python. Las funciones de Salesforce también le permiten conectarse fácilmente a servicios de bases de datos administrados en Heroku. Escalar su aplicación Salesforce con código nunca ha sido tan fácil.

Cliente 360

La plataforma de Salesforce permite el éxito inmediato al trabajar sin problemas con Salesforce Customer 360 y proporcionar beneficios rápidos de tiempo de valor de código bajo. Sin embargo, las habilidades de desarrollador también son útiles cuando se trabaja con gran parte del panorama tecnológico de Salesforce. Esto incluye la creación de experiencias y recorridos personalizados con Marketing Cloud, la creación y el escalado de escaparates y sitios web de comercio electrónico con Commerce Cloud , la visualización de análisis basados en datos con Tableau o la creación de aplicaciones conectadas con Slack .

Conclusión

El proyecto Trailhead, Primeros pasos con el desarrollo de Salesforce , le brinda una descripción general de lo que es ser un desarrollador que trabaja con las capacidades de la plataforma Salesforce. Pero esto es sólo el comienzo. Cada una de las unidades dentro del proyecto tiene enlaces a otros recursos para brindarle una comprensión más profunda.

Finalmente, si te quedas atascado, recuerda que no estás solo. El grupo de desarrolladores de Salesforce en Trailblazer Community es donde puede colaborar, conectarse en red, crear conexiones y aprender con otros desarrolladores a nivel mundial.

Recursos

Comience con el desarrollo de Salesforce

Sobre el Autor

Mohith Shrivastava es promotor de desarrollo en Salesforce con una década de experiencia en la creación de productos a escala empresarial en la plataforma de Salesforce. Actualmente se está enfocando en las herramientas para desarrolladores de Salesforce, Apex y Lightning Web Components en Salesforce. Mohith se encuentra actualmente entre los principales contribuyentes en Salesforce Stackexchange, un foro de desarrolladores donde los desarrolladores de Salesforce pueden hacer preguntas y compartir conocimientos. Puedes seguirlo a través de su Twitter @msrivastav13.

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

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2022/11/get-started-building-salesforce-apps-now-with-a-new-trailhead-project.html