Your use case. Our milestone. The 200th post in our "Kaizen Series: Continuous Improvement for Developer Experience" is coming up. Share Now

X
Saltar al contenido principal
close
EXPLORAR TODOS LOS PRODUCTOS

Ventas

CRM

Un CRM para un seguimiento exhaustivo del cliente.

CRM
Sign

Aplicación de firma digital para empresas.

Sign
Forms

Diseñe formularios en línea para cada necesidad empresarial.

Forms
Bigin

Solución de gestión de procesos para equipos de atención al cliente.

Bigin
SalesIQ

Aplicación de chat en vivo para atraer y convencer a los visitantes del sitio web.

SalesIQ
Bookings

Aplicación de programación de citas para realizar consultas con los clientes.

Bookings
RouteIQ

Solución de visualización integral de mapas de ventas y planificación óptima de rutas.

RouteIQ
Suites
CRM Plus

Plataforma unificada para ofrecer una experiencia de primer nivel al cliente.

CRM Plus

Marketing

Campaigns

Cree y envíe campañas de correo electrónico dirigidas que impulsen las ventas, además de realizar un seguimiento de ellas.

Campaigns
Sign

Aplicación de firma digital para empresas.

Sign
Forms

Diseñe formularios en línea para cada necesidad empresarial.

Forms
Social

El software de gestión de redes sociales todo en uno.

Social
Survey

Diseñe encuestas para llegar a su audiencia e interactuar con ella.

Survey
SalesIQ

Aplicación de chat en vivo para atraer y convencer a los visitantes del sitio web.

SalesIQ
Sites

Nuestro diseñador de sitios web con conexión proporciona amplias opciones de personalización.

Sites
Backstage

Software de gestión de eventos integral.

Backstage
PageSense

Plataforma de personalización y optimización de la conversión del sitio web.

PageSense
Marketing Automation

Software integral para automatización de marketing.

Marketing Automation
LandingPage

Un creador inteligente de páginas de destino para aumentar las tasas de conversión.

LandingPage
Suites
Marketing Plus

Plataforma de marketing unificada para equipos de marketing.

Marketing Plus

Commerce

Commerce

Plataforma de ecommerce para gestionar y comercializar su tienda con conexión.

Commerce

Asistencia al cliente

Desk

Software de asistencia para ofrecer un excelente servicio de atención al cliente.

Desk
Assist

Asistencia remota y software de acceso remoto sin supervisión.

Assist
SalesIQ

Aplicación de chat en vivo para atraer y convencer a los visitantes del sitio web.

SalesIQ
Bookings

Aplicación de programación de citas para realizar consultas con los clientes.

Bookings
Lens

Software de asistencia remota interactiva con realidad aumentada.

Lens
Suites
Service Plus

Plataforma unificada para el servicio al cliente y los equipos de soporte.

Service Plus

Finanzas

Books

Potente plataforma de contabilidad para empresas en crecimiento.

Books
Expense

Sencilla plataforma de generación de informes de gastos.

Expense
Sign

Aplicación de firma digital para empresas.

Sign
Inventory

Acceda a un potente software de gestión de existencias y control de inventario.

Inventory
Gratis
Invoice

Solución de facturación totalmente gratuita.

Invoice
Commerce

Plataforma de ecommerce para gestionar y comercializar su tienda con conexión.

Commerce

Correo electrónico y colaboración

Mail

Servicio seguro de email en la nube para empresas de todos los tamaños.

Mail
Sign

Aplicación de firma digital para empresas.

Sign
WorkDrive

Administración de archivos en línea para equipos.

WorkDrive
Bookings

Aplicación de programación de citas para realizar consultas con los clientes.

Bookings
Cliq

Manténgase en contacto con sus equipos sin importar dónde se encuentre.

Cliq
Notebook

Un hermoso lugar para todas sus notas.

Notebook
Meeting

Realice seminarios web con conexión y reuniones de forma segura.

Meeting
Connect

Software de colaboración en equipo que reúne a las personas.

Connect
Learn

Plataforma de gestión de conocimientos y aprendizaje.

Learn
Office Integrator

Editores de documentos integrados para aplicaciones web.

Office Integrator
Writer

Procesador de textos para discusiones y escritura enfocada.

Writer
Show

Cree, edite y comparta diapositivas con una elegante aplicación de presentaciones.

Show
Sheet

El software de hojas de cálculo para equipos colaborativos.

Sheet
Calendar

Calendario empresarial en línea para gestionar eventos y programar citas.

Calendar
Suites
Workplace

Conjunto de aplicaciones diseñado para mejorar la productividad y la colaboración del equipo.

Workplace

RR. HH.

Expense

Sencilla plataforma de generación de informes de gastos.

Expense
Recruit

Intuitiva plataforma de reclutamiento diseñada para proporcionar soluciones de contratación.

Recruit
People

Software para organizar, automatizar y simplificar los procesos de RR.HH.

People
Sign

Aplicación de firma digital para empresas.

Sign
Workerly

Gestione al personal temporal con una solución de programación de empleados.

Workerly
Suites
People Plus

Plataforma integral de RR. HH. para que los empleados tengan una experiencia fluida.

People Plus

Gestión de seguridad y TI

Creator

Cree aplicaciones personalizadas para simplificar los procesos empresariales

Creator
Assist

Asistencia remota y software de acceso remoto sin supervisión.

Assist
Vault

Administrador de contraseñas en línea para equipos.

Vault
Lens

Software de asistencia remota interactiva con realidad aumentada.

Lens

Inteligencia empresarial y análisis

Analytics

Moderna plataforma de análisis e inteligencia empresarial de autoservicio.

Analytics
DataPrep

Servicio de preparación de datos con tecnología de IA para su organización fundamentada en datos.

DataPrep
Embedded BI

Análisis integrado y soluciones de BI sin marca, adaptadas a sus necesidades.

Embedded BI

Gestión de proyectos

Projects

Gestione los proyectos, realice un seguimiento de ellos y colabore con equipos.

Projects
Sprints

Herramienta de planificación y seguimiento para equipos de Scrum.

Sprints
BugTracker

Software de seguimiento automático de errores para gestionar los errores.

BugTracker

Plataformas para desarrolladores

Creator

Cree aplicaciones personalizadas para simplificar los procesos empresariales

Creator
Flow

Automatice los flujos de trabajo empresariales mediante la creación de integraciones inteligentes.

Flow
Office Integrator

Editores de documentos integrados para aplicaciones web.

Office Integrator
DataPrep

Servicio de preparación de datos con tecnología de IA para su organización fundamentada en datos.

DataPrep
Embedded BI

Análisis integrado y soluciones de BI sin marca, adaptadas a sus necesidades.

Embedded BI
CRM Plus

Plataforma unificada para ofrecer una experiencia de primer nivel al cliente.

Pruébelo ahora
CRM Plus
Service Plus

Plataforma unificada para el servicio al cliente y los equipos de soporte.

Pruébelo ahora
Service Plus
People Plus

Plataforma integral de RR. HH. para que los empleados tengan una experiencia fluida.

Pruébelo ahora
People Plus
Workplace

Conjunto de aplicaciones diseñado para mejorar la productividad y la colaboración del equipo.

Pruébelo ahora
Workplace
Marketing Plus

Plataforma de marketing unificada para equipos de marketing.

Pruébelo ahora
Marketing Plus
Conjunto todo en uno

Zoho One

el sistema operativo para las empresas

Gestione toda su empresa en Zoho con nuestro software unificado en la nube diseñado para ayudarlo a romper las barreras entre los departamentos y aumentar la eficiencia organizacional.

PROBAR ZOHO ONE
Zoho Marketplace

Gracias a las más de 2000 extensiones listas para su uso en más de 40 categorías, puede conectar sus herramientas empresariales favoritas con los productos Zoho que ya utiliza.

EXPLORAR MARKETPLACE

Configuración de la aplicación

Creación de un nuevo proyecto

Una vez que se haya registrado el cliente, puede comenzar a crear su propia aplicación iOS.

En la línea de comandos, desplácese hasta el directorio en el que desea crear el proyecto móvil y ejecute el siguiente comando:

zohoios create

Aquí se solicitará el ingreso de los siguientes elementos:

  1. Nombre de la aplicación móvil (por ejemplo, Aprobador de clientes potenciales).
  2. El nombre de la organización de su desarrollador de iOS.
  3. El identificador de la organización de su desarrollador de iOS.
  4. ID de cliente OAuth de Zoho (que se obtiene durante el registro de la aplicación).
  5. Secreto de cliente OAuth de Zoho (que se obtiene durante el registro de la aplicación).
  6. URL de redirección OAuth de Zoho (que se obtiene durante el registro de la aplicación).

Nota:

  • La URL de redirección debe corresponder con el esquema de URL personalizado de la aplicación.

Cuando se ejecute correctamente el comando anterior, se creará una carpeta de proyecto en el mismo directorio. El nombre de la carpeta del proyecto será el mismo que el nombre de la aplicación móvil.

Ejecución del proyecto

El nuevo proyecto creado es, en realidad, una aplicación iOS de demostración, que se puede ejecutar de manera instantánea mediante Xcode.

  1. Abra el archivo .xcworkspace del nuevo proyecto creado.
    La nueva aplicación de demostración creada se abrirá como un proyecto Xcode.
  2. Después de realizar la compilación correctamente, puede ejecutar este proyecto en un simulador.
    La aplicación se abrirá con una pantalla de inicio de sesión de Zoho en el simulador.
  3. Puede iniciar sesión con sus credenciales de Zoho CRM y ver los datos con la aplicación de demostración.

Diseño de la aplicación

Una vez que el proyecto se haya compilado y ejecutado correctamente, puede diseñar y crear nuevas pantallas y funcionalidades para la aplicación, según sus requisitos. No hay restricciones de front-end en el desarrollo de la aplicación. Sin embargo, para facilitar la autenticación del usuario, asegúrese de considerar los siguientes puntos durante el diseño de su aplicación.

No cambie ningún código que ya esté presente en AppDelegate.swift

Para encargarse del inicio y cierre de sesión:

Para encargarse correctamente del inicio de sesión del usuario, la pantalla de inicio ya está configurada en el SDK, a fin de asegurarse de que solo los usuarios que están registrados puedan ver los datos de las aplicaciones. Sin embargo, si desea mostrar su propia pantalla personalizada de inicio de sesión, puede establecer su propia vista como pantalla de Inicio.

En la clase ViewController de su pantalla de inicio personalizada, agregue este código como la acción del botón de inicio de sesión:

( UIApplication.shared.delegate as! AppDelegate ).loadLoginView { ( isSuccessfulLogin ) in
    if isSuccessfulLogin == true
    {
        // display your application's screen
    }
  }

Agregue este código como la acción del botón de  cierre de sesión:

( UIApplication.shared.delegate as! AppDelegate ).logout(completion: { (success) in
    if( success == true )
    {
        // logout successful
    }
  })

En el archivo AppConfiguration.plist

:

  1. OAuthscopes (obligatorio): los alcances de muestra ya se mencionaron en el archivo creado de propiedades; puede cambiar los alcances según sea necesario.Obtener más información.
  2. AccessType (opcional): tipo de entorno en CRM
    • Production: entorno que tiene usuarios con pago habilitado que acceden a datos empresariales importantes.
    • Development: entornos que puede ampliar, integrar y desarrollar sin afectar los entornos de producción.
    • Sandbox: entornos utilizados específicamente para probar la funcionalidad de la aplicación antes de implementarla en la producción o de presentarla a los consumidores.
  3. DomainSuffix (opcional): compatibilidad con varios centros de datos.
    • EE. UU.: www.zohoapis.com
    • Europa: www.zohoapis.eu
    • China: www.zohoapis.com.cn
  4. PortalID (opcional): mencione su ID de portal de CRM (por ejemplo: 65468393). No es necesario mencionar "PortalID" dentro del archivo de propiedades, si no tiene uno.
  5. ShowSignUp (opcional): establezca el valor como true si proporciona el recurso del inicio de sesión en la aplicación; de lo contrario, establézcalo como false.

Este archivo contiene valores de ciertas configuraciones que se requieren para ejecutar la aplicación. No cambie los nombres ni valores de las propiedades que ya existen, ya que se requieren para el correcto funcionamiento del SDK y de la aplicación.

Contenedores API de Zoho CRM

Todas las entidades de Zoho CRM se presentan como clases que tienen miembros y métodos que se emplean en una entidad en particular. ZCRMRestClient corresponde a la clase básica de la biblioteca del cliente.

La jerarquía y las relaciones de clases de la biblioteca se rigen por la jerarquía de entidades dentro de Zoho CRM. La jerarquía de clases de varias entidades de Zoho CRM se indica a continuación:

ZCRMRestClient
     -ZCRMOrganization
         -ZCRMUser
         -ZCRMRole
         -ZCRMProfile
     -ZCRMModule
         -ZCRMLayout
              -ZCRMSection
                  -ZCRMField
                  -ZCRMPickListValue
        -ZCRMCustomView
        -ZCRMModuleRelation
              -ZCRMJunctionRecord
        -ZCRMRecord
              -ZCRMInventoryLineItem
                  -ZCRMTax
             -ZCRMPriceBookPricing
             -ZCRMEventParticipant
             -ZCRMNote
             -ZCRMAttachment
        -ZCRMTrashRecord

Como aparece en la jerarquía, todas las clases de entidades tienen métodos de captura de sus propias propiedades y de captura de datos de sus entidades secundarias inmediatas mediante una solicitud API.

Por ejemplo, un objeto de un módulo de Zoho CRM (ZCRMModule) contará con métodos para obtener las propiedades de un módulo, como nombre de visualización, ID de módulo, etc., y también tendrá métodos de captura de todos sus objetos de diseño secundarios (ZCRMLayout).

Acceso a propiedades de registro

Puesto que las propiedades de registro son dinámicas en los módulos, se han proporcionado solo los campos comunes, como createdTime, createdBy, owner, etc., como miembros predeterminados de ZCRMRecord. Todas las otras propiedades de registros están disponibles como un mapa en el objeto ZCRMRecord.

Para acceder a los valores de campo individuales de un registro, utilice los métodos de captador y establecedor disponibles. Las claves del mapa de propiedades de registro corresponden a los nombres API de los campos del módulo. Los nombres API de todos los campos de todos los módulos están disponibles en Setup > Developer Space > APIs > CRM API > API Names.

  • Para obtener un valor de campo, utilice record.getFieldValue(fieldAPIName);
    El valor devuelto se encontrará en el tipo de datos del campo solicitado. En el caso de los campos de tipo usuario y búsqueda, se devolverán los objetos ZCRMRecord y ZCRMUser respectivamente.
  • Para establecer un valor de campo, utilice record.setFieldValue(fieldAPIName, newValue);
    Cuando establezca un valor de campo, asegúrese de que el valor establecido corresponda al tipo de datos APT del campo en el que lo va a establecer.

Nota:

  • ZCRMRecord().getLookupLabel() devuelve la etiqueta de búsqueda del registro.

Extensiones proporcionadas:

En cadena:

  • dateFromISO8601 : Date?
  • dateComponents : DateComponents

En fecha:

  • iso8601 : String
  • millisecondsToISO( timeIntervalSince1970 : Double, timeZone : TimeZone ) -> String
  • millisecondsToISO( timeIntervalSinceNow : Double, timeZone : TimeZone ) -> String
  • millisecondsToISO( timeIntervalSinceReferenceDate : Double, timeZone : TimeZone ) -> String
  • millisecondsSince1970 : Double
  • dateComponents : DateComponents

Para descargar la imagen de perfil de un usuario:

A continuación, se presentan los métodos disponibles en el SDK para realizar la descarga:

  • ZCRMUser().downloadProfilePhoto()
  • ZCRMUser().downloadProfilePhoto( size : PhotoSize )

Administración de respuestas

APIResponse y BulkAPIResponse son los objetos contenedores de las respuestas de API de Zoho CRM. Con todos los métodos de solicitudes API, se devuelve uno de estos dos objetos.

Un método que realiza la búsqueda de una sola entidad devolverá un objeto APIResponse, mientras que un método que busca una lista de entidades devuelve un objeto BulkAPIResponse.

Utilice el método getData() para obtener los datos de la entidad independiente de los objetos contenedores de respuesta.APIResponse.getData() devolverá un solo objeto de entidad Zoho CRM, mientras que BulkAPIResponse.getData() devolverá una lista de objetos de entidad Zoho CRM.

Además de los datos, estos objetos contenedores de respuesta tienen las siguientes propiedades:

  1. ResponseHeaders: recuento de API faltantes del día/plazo presente y el tiempo transcurrido del restablecimiento del plazo presente.
  2. ResponseInfo: cualquier otro tipo de información, si la API la proporciona, además de los datos reales.
  3. [EntityResponse]: estado de las entidades individuales en una Bulk API. Por ejemplo, en el ingreso de registros, es posible que una API presente un error parcial debido a algunos registros. Esta lista proporciona el estado de creación de los registros individuales.

Errores

A todos los comportamientos inesperados, como respuestas API incorrectas y errores de biblioteca, los administra la biblioteca cliente y se producen solo como ZCRMSDKError, con casos de errores APT. Por lo tanto, es suficiente para captar este error por sí solo en el código de aplicación del cliente.

Contenedores de acceso a datos de SDK

Además de los contenedores anteriores de las API de Zoho CRM, a fin de evitar solicitudes innecesarias de API, el SDK almacena en caché los metadatos esenciales del módulo en el almacenamiento local del dispositivo.

Actualmente, los datos de CRM (registros) no se almacenan en caché; solo se almacenan en caché los metadatos de los módulos, tales como diseños, secciones, campos y detalles de vista personalizada.

ZCRMCachedModule

Con ZCRMCachedModule, se realiza el almacenamiento en caché de algunos metadatos adicionales. Esto permite extender la clase de ZCRMModule de la biblioteca de cliente API de Zoho CRM. Con esta clase, se proporcionan los siguientes métodos.

  • getAllLayouts: devuelve todos los diseños del módulo como una matriz de ZCRMLayout.
  • getAllCustomViews: devuelve todos los detalles de vista personalizada del módulo como una matriz de ZCRMCustomView.

Actualización de la caché

Con

ZCRMCachedModule, se almacena y utiliza la información de metadatos de los módulos y diseños de formato almacenados en caché en el almacenamiento local del dispositivo. El SDK actualiza los metadatos almacenados de un módulo cada 12 horas.

En caso de que desee forzar el SDK para que finalice el almacenamiento en caché (por ejemplo: si desea agregar un deslizamiento para actualizar la aplicación) y actualice los metadatos mediante una solicitud API de Zoho CRM, puede forzarlo mediante el establecimiento de la marca refreshCache, que se proporciona en las versiones de sobrecarga de los métodos anteriores. A continuación, se presenta una invocación de muestra.

zcrmCachedModuleObj.getAllLayouts(true);

zcrmCachedModuleObj.getAllCustomViews(true);