Enhancing Security: Encryption of Agent Password, Adapter Properties Password, Connection Salesforce Password, and Connection Client Secret #
In the previous version, we stored the Agent Password, Agent Adapter Property, Connection Salesforce Password, and Connection Client Secret as plain text. We have now enhanced security by encrypting this information.
Outbound Scheduler On Integration/Interface Group Using Java Quartz Scheduler For Non-Open-Firewall #
In the previous version, we enhanced AgentProcessPerInterface using Java Quartz Scheduler with Non-Open Firewall Mode. Now we have enhanced AgentProcessPerIntegration and AgentProcessPerInterfaceGroup, too.
Added New Agent AI ChatPDF Adapter #
The Agent AI ChatPDF adapter is employed to extract data from a PDF file using the ChatPDF AI. To enable the ChatPDF AI to read data from the PDF and convert it into JSON format, you must manually input the command prompt to specify in the Query field on the interface to receive a response from this AI. Our Agent API ChatPDF proceeds to send the JSON data to Salesforce. This functionality is compatible with Agent Version 3.06.04 and Skyvva Version 2.51.8.
Added cache_record_id Column Across All Cache Tables Except agent_setting and agent_properties #
We have added the cache_record_id column to all cache tables except for agent_setting and agent_properties to track the cache related to the cache status in Salesforce.
Enhanced Agent Scheduler Behavior #
- The AgentProcessPerIntegration and Interface Group will execute the interfaces by default in sequence.
- Interfaces may be skipped if executed by a different Agent Scheduler Level. This rule applies to AgentProcessPerIntegration, AgentProcessPerInterfaceGroup, and AgentProcessPerInterface. For example, when running all scheduler levels, the interface will be skipped at the integration scheduler and Interface Group scheduler levels, and will only execute at the interface scheduler level to prevent double execution of the same interface runs.
Enhanced Agent Rest Adapter #
We have significantly enhanced our Agent Rest Adapter to now include support for two additional authentication methods: JSON Web Token (JWT) and Certificate-based authentication. This enhancement provides users with more flexible and secure options for authenticating requests through the adapter.
Enhanced Handle process_type for New Agent Processing #
We have different processing methods via manual actions and a scheduler for various types. Therefore, we have enhanced our handling of the job processing types. We have added new
- The manual has three Processing Types: MANUAL_BY_INTERFACE, MANUAL_BY_GROUP, and MANUAL_BY_INTEGRATION
- The scheduler now has three Processing Types: SCHEDULED_BY_INTERFACE, SCHEDULED_BY_GROUPS, and SCHEDULED_BY_INTEGRATION.
Added new PARTIALLY_COMPLETED Job Status for New Agent #
For groups and integrations, there are multiple interface job statuses. Interfaces within integrations and interface groups can have various statuses, such as FAILED and COMPLETED. Therefore, we have introduced a new status, PARTIALLY_COMPLETED, to represent a mixed status for integrations and interface groups.
Enhancing agent_property_id Caching to Store Salesforce ID for Both Open and Non-Open Firewall #
In the previous version, the agent cache stored the agent_properties where the ‘agent_property_id’ field holds the UUID. We have now improved the caching of the ‘agent_property_id’ field to store the Salesforce ID in both open and non-open firewall modes.
Improving Agent Functionality for PostgreSQL Connection Management #
In the prior version, the agent would establish 10 idle connections within the PostgreSQL database. We have upgraded the Agent to dynamically generate connections based on demand, allowing for customization of quantities greater or fewer than the default. This setting can be adjusted in the ‘skyvva_application.properties’ file under the ‘# Hikari will use the above plus the following to set up connection pooling’ section. The default setting now creates five connections, as shown in the properties below:
# Hikari will use the above plus the following, to set up connection pooling
spring.datasource.hikari.maximum-pool-size=5
spring.datasource.hikari.minimum-idle=2
spring.datasource.hikari.idle-timeout=30000
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.registerMbeans=true
Enhanced New Agent for Creating Messages for Inbound Processing, Compatible with Skyvva Version 2.52 #
In the New Agent, the current process involves parsing the request payload to construct the message tree in JSON format. Subsequently, the JSON message tree is utilized as the payload for the Vx/integrateWithIMessage API call. This API operation results in the creation of a basket in Salesforce (when the mode is ‘Batch’) or the generation of the message tree in the imessage__c table. However, executing these tasks within Salesforce may lead to encountering various governor limits. To address this challenge, we have empowered the New Agent to craft the message instead of relying on Salesforce, particularly when handling large payloads, by implementing the following setting. This feature is only supported in Skyvva Version 2.52.
The Agent will evaluate the ‘skyvvasolutions__InboundPostingBehavior__c’ field of skyvvasolutions__Interfaces__c sObject. Here are the rules for determining the message status based on the selected value in the ‘Inbound Processing Behavior’ picklist field:
- Here is the rule for setting the to agent handle to create message based on the chosen picklist of the field ‘skyvvasolutions__InboundPostingBehavior__c’:
- When the Inbound Processing Behavior is set to ‘Message Only’, the message will be created, and the status is ‘New’. In this scenario, the agent does not trigger the new REST API V3/ReprocessMessage to commence message processing.
- When the Inbound Processing Behavior is ‘None’, the message status is ‘In Progress’. In this case, the agent initiates message processing immediately by invoking the new REST API V3/ReprocessMessage
Improved Agent Capability: Accepting Salesforce Push Cache as a List of sObjects with Non-Open Firewall Mode #
Previously, a single sObject cache was sent due to caching, resulting in substantial consumption. With recent enhancements, Skyvva will transmit the event cache as a list of sObjects to decrease event consumption. In cases of large event data, it will be split into new events. The agent will now accept this request cache as a list of sObjects.
Enhanced New Agent to Support Queue Processing in Asynchronous Processing #
We have improved the processing of our New Agent by implementing a queue to handle data processing that facilitates outbound asynchronous processing, ensuring compatibility with both open and non-open firewalls.
Enhancing the Local Agent Web App to View Connections in the Agent Connection List #
We have added a new eye icon button in the action column of the Agent Connection list within the local Agent Web App. This button allows you to view the details of each Agent Connection.
Added New Path API for New Agent #
We have added a new path for the New Agent as follows:
- /agent/v3/salesforce/login is used for logging in from the Agent to Salesforce.
- /agent/v3/systemInfo/getSystemInfo is used to retrieve New Agent information.
- /agent/v3/loggerInfo/getAllLoggingProperties used to retrieve all logging properties.
- /agent/v3/loggerInfo/activateLogProfile used to activate the logging profile
- /agent/v3/loggerInfo/deleteLoggingProperties used to save log configuration.
- /agent/v3/loggerInfo/saveLoggingProperties is used to save the log configuration.
- /agent/v3/update-instance-data/update is used to update instance data.
Enhance the Agent Instance ID #
In the previous version, the Agent Instance ID was stored inside agent_properties. We have enhanced it to store the skyvva_application.properties, which provides powerful control over the Agent’s calling and processing capabilities. You may have multiple New Agents for processing. For a non-open firewall, we need to filter the events to determine who should receive the events for processing.
Enhancement: Support for Hierarchical Record Import in Agent Database Adapter #
In the previous version, the Agent Database Adapter in the New Agent supported importing records only in flat table format and did not support hierarchical table format. This has now been enhanced to support both flat and hierarchical table formats.
Enhancement: Importing Hierarchical Records for CSV Files Without Headers #
In the previous version, the Agent File Adapter in the New Agent supported CSV files without headers, containing flat records only. It did not support hierarchical CSV files without headers, which could cause issues when importing child records. This has now been enhanced to support both flat and hierarchical CSV files without headers.
Enhanced Automatic Addition of ‘All Rows’ for PushTopic Event ‘Delete’ of ‘Notification For Operation’ in the New Agent, along with Agent Record Retrieval from the Recycle Bin #
There is an issue when using ‘Delete’ for the ‘Notification For Operation’ of the PushTopic Event, as it only retrieves the ID from Salesforce. To address this, we have enhanced our Agent to fetch all fields of records within the recycle bin. This has now been fixed by adding ‘All Rows,’ allowing the Agent to query all records, including those in the recycle bin (deleted) and archived tasks/events.
