### Foundry Messaging Service (JPush) Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/errors.txt Quick start guide for setting up and using the Foundry Messaging Service with JPush. ```APIDOC ## Foundry Messaging Service (JPush) Quick Start Guide This guide provides instructions for getting started with the Foundry Messaging Service using JPush. ### Creating JPush Account and Steps to create a JPush account and necessary configurations. ### Foundry Messaging Service Overview of the Foundry Messaging Service capabilities. ### vmf_msg_jpush_quick_start_guide The main guide document for the JPush messaging service. ``` -------------------------------- ### Administration - General Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/assets-for-home-page/tutorials/notificationAndAnalytics.html APIs for general administration settings in Volt MX Foundry. ```APIDOC ## GET /api/v1/admin/details ### Description Retrieves general administration details. ### Method GET ### Endpoint /api/v1/admin/details ### Response #### Success Response (200) - **details** (object) - Contains general administration details. - **setting1** (string) - Description of setting 1. - **setting2** (string) - Description of setting 2. #### Response Example { "details": { "setting1": "Value A", "setting2": "Value B" } } ## PUT /api/v1/admin/details ### Description Modifies general administration details. ### Method PUT ### Endpoint /api/v1/admin/details ### Request Body - **setting1** (string) - Optional - New value for setting 1. - **setting2** (string) - Optional - New value for setting 2. ### Request Example { "setting1": "New Value A" } ### Response #### Success Response (200) - **details** (object) - Contains the updated general administration details. - **setting1** (string) - Description of setting 1. - **setting2** (string) - Description of setting 2. #### Response Example { "details": { "setting1": "New Value A", "setting2": "Value B" } } ``` -------------------------------- ### General Configuration Management Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/assets-for-home-page/tutorials/architecture.html APIs for retrieving all configurations and updating configuration resources. ```APIDOC ## Get All Config ### Description Retrieves all configurations. ### Method GET ### Endpoint /configurations ## Update Config Resources ### Description Updates configuration resources. ### Method PUT ### Endpoint /configurations/resources ``` -------------------------------- ### Start Volt MX Foundry Services Source: https://context7.com/hcl-tech-software/volt-mx-docs/llms.txt Initiate the Foundry services by running the Tomcat startup script. This command assumes Tomcat is installed at /opt/tomcat. ```bash /opt/tomcat/bin/startup.sh ``` -------------------------------- ### Campaign APIs Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/v10/assets-for-home-page/tutorials/notificationAndAnalytics.html APIs for managing marketing campaigns, including retrieving campaigns by pagination, getting campaign details by ID, creating, modifying, deleting, starting, terminating, validating criteria, and managing campaign images and status (pause/resume). ```APIDOC ## Get All Campaigns by Pagination ### Description Retrieves a paginated list of all campaigns. ### Method GET ### Endpoint /campaigns ### Query Parameters - **page** (integer) - Optional - The page number to retrieve. - **pageSize** (integer) - Optional - The number of campaigns per page. ## Get Campaign Details by ID ### Description Retrieves the details of a specific campaign by its ID. ### Method GET ### Endpoint /campaigns/{campaignId} ## Create Campaign ### Description Creates a new campaign. ### Method POST ### Endpoint /campaigns ## Modify Campaign ### Description Modifies an existing campaign. ### Method PUT ### Endpoint /campaigns/{campaignId} ## Delete Campaign ### Description Deletes a campaign by its ID. ### Method DELETE ### Endpoint /campaigns/{campaignId} ## Start Campaign ### Description Starts a campaign. ### Method POST ### Endpoint /campaigns/{campaignId}/start ## Terminate Campaign ### Description Terminates a campaign. ### Method POST ### Endpoint /campaigns/{campaignId}/terminate ## Validate Campaign Criteria ### Description Validates the criteria for a campaign. ### Method POST ### Endpoint /campaigns/validateCriteria ## Create Campaign with Upload Images ### Description Creates a new campaign and uploads associated images. ### Method POST ### Endpoint /campaigns/uploadImages ## Modify Campaign with Upload Images ### Description Modifies an existing campaign and uploads associated images. ### Method PUT ### Endpoint /campaigns/{campaignId}/uploadImages ## Pause Campaign ### Description Pauses an active campaign. ### Method POST ### Endpoint /campaigns/{campaignId}/pause ## Resume Campaign ### Description Resumes a paused campaign. ### Method POST ### Endpoint /campaigns/{campaignId}/resume ``` -------------------------------- ### General Configuration APIs Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/assets-for-home-page/tutorials/programmingAndExtensitbility.html APIs for retrieving and updating general configurations. ```APIDOC ## Get All Config ### Description Retrieves all configuration settings. ### Method GET ### Endpoint /configurations ## Update Config Resources ### Description Updates configuration resources. ### Method PUT ### Endpoint /configurations ``` -------------------------------- ### Install unzip and Download Installer Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/voltmxfoundry_on_azure_on_hold/Content/VoltMX_Foundry_on_Azure.md Switch to the root user, install the unzip package, and download the Volt MX Foundry container installer zip file. This is a prerequisite for unzipping the artifacts. ```bash $ sudo -s $ apt-get install unzip $ curl -o HCL VoltMX-Foundry-Container-Installer” [ HCL Volt MX Foundry Container Installer (Kubernetes cluster)](https://hclsoftware.flexnetoperations.com/flexnet/operationsportal/entitledDownloadFile.action?downloadPkgId=HCL_Volt_Foundry_v9.2.x&orgId=HCL&fromRecentFile=false&fromRecentPkg=true&fromDL=false) ``` -------------------------------- ### Offline Objects API: Setup, Sync, and CRUD Source: https://context7.com/hcl-tech-software/volt-mx-docs/llms.txt Details on how to set up, synchronize, and perform CRUD operations using the Offline Objects API, enabling client-side data caching and offline functionality. ```APIDOC ## Offline Objects API ### Description The Offline Objects API allows for client-side data caching using SQLite, enabling offline operations and bidirectional synchronization with Volt MX Foundry Object Services. It supports features like conflict resolution and data encryption. ### Setup Initializes the offline objects functionality. This should be called once at application startup. - **Method**: `HCLFoundry.OfflineObjects.setup(options, successCallback, errorCallback)` - **Parameters**: - `options` (object): Configuration options, such as `deviceDbEncryptionKey` (string) for encrypting the local database. - `successCallback` (function): Callback for successful setup. - `errorCallback` (function): Callback for setup errors. - **Example**: ```javascript HCLFoundry.OfflineObjects.setup( { deviceDbEncryptionKey: "s3cr3tK3y!" }, function(response) { voltmx.print("Offline setup complete: " + response.status); }, function(error) { voltmx.print("Setup error: " + error.errmsg); } ); ``` ### Synchronization Starts the synchronization process between the client and the backend. - **Method**: `HCLFoundry.OfflineObjects.startSync(options)` - **Parameters**: - `options` (object): Synchronization configuration including `syncMode` ('full' or 'incremental'), `syncSuccessCallback`, `syncErrorCallback`, and `syncProgressCallback`. - **Example**: ```javascript function performSync() { HCLFoundry.OfflineObjects.startSync({ syncMode: "full", syncSuccessCallback: function(res) { voltmx.print("Sync complete. Records synced: " + res.totalSyncedRecords); }, syncErrorCallback: function(err) { voltmx.print("Sync error: " + err.errmsg); }, syncProgressCallback: function(progress) { voltmx.print("Progress: " + progress.percentComplete + "%"); } }); } ``` ### Offline CRUD Operations Perform Create, Read, Update, and Delete operations directly on the local offline data store. These changes are queued for synchronization. #### Create Offline Record Creates a new record locally. - **Method**: `productObj.create(data, successCallback, errorCallback)` - **Parameters**: - `data` (object): The data for the new record. - `successCallback` (function): Callback for successful creation, receiving `localId`. - `errorCallback` (function): Callback for creation errors. - **Example**: ```javascript var productObj = HCLFoundry.getObjectService("ProductCatalog").getObject("Product"); productObj.create( { name: "Offline Widget", price: 19.99 }, function(res) { voltmx.print("Created offline. Local ID: " + res.localId); }, function(err) { voltmx.print("Offline create error: " + err.errmsg); } ); ``` #### Query Offline Data Retrieves records from the local offline store, supporting filtering. - **Method**: `productObj.get(options, successCallback, errorCallback)` - **Parameters**: - `options` (object): Contains `queryParams` for filtering. - `successCallback` (function): Callback receiving an array of records. - `errorCallback` (function): Callback for query errors. - **Example**: ```javascript productObj.get( { queryParams: { "$filter": "price lt 50" } }, function(records) { records.forEach(function(r) { voltmx.print(r.name + ": $" + r.price); }); }, function(err) { voltmx.print("Offline get error: " + err.errmsg); } ); ``` #### Rollback Offline Changes Reverts any uncommitted offline changes. - **Method**: `productObj.rollback(successCallback, errorCallback)` - **Parameters**: - `successCallback` (function): Callback for successful rollback. - `errorCallback` (function): Callback for rollback errors. - **Example**: ```javascript productObj.rollback( function() { voltmx.print("Rollback successful"); }, function(err) { voltmx.print("Rollback error: " + err.errmsg); } ); ``` ``` -------------------------------- ### Administration APIs Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/assets-for-home-page/tutorials/voltmxFoundryOverview.html APIs for managing administration settings in Volt MX Foundry. ```APIDOC ## GET /api/v1/admin/details ### Description Retrieves general administration details. ### Method GET ### Endpoint /api/v1/admin/details ### Response #### Success Response (200) - **details** (object) - An object containing administration details. ### Response Example { "details": { "setting1": "value1", "setting2": "value2" } } ## PUT /api/v1/admin/details ### Description Modifies general administration details. ### Method PUT ### Endpoint /api/v1/admin/details ### Request Body - **details** (object) - An object containing the administration details to update. ### Request Example { "details": { "setting1": "new_value1" } } ### Response #### Success Response (200) - **details** (object) - The updated administration details. ### Response Example { "details": { "setting1": "new_value1", "setting2": "value2" } } ## GET /api/v1/admin/campaign-types ### Description Retrieves a paginated list of campaign types. ### Method GET ### Endpoint /api/v1/admin/campaign-types ### Parameters #### Query Parameters - **page** (integer) - Optional - The page number to retrieve. - **pageSize** (integer) - Optional - The number of items per page. ### Response #### Success Response (200) - **campaignTypes** (array) - A list of campaign type objects. - **totalCount** (integer) - The total number of campaign types available. ### Response Example { "campaignTypes": [ { "id": "campaign1", "name": "Type A" } ], "totalCount": 1 } ## GET /api/v1/admin/campaign-types/{id} ### Description Retrieves a specific campaign type by its ID. ### Method GET ### Endpoint /api/v1/admin/campaign-types/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The ID of the campaign type to retrieve. ### Response #### Success Response (200) - **id** (string) - The ID of the campaign type. - **name** (string) - The name of the campaign type. ### Response Example { "id": "campaign1", "name": "Type A" } ## POST /api/v1/admin/campaign-types ### Description Creates a new campaign type. ### Method POST ### Endpoint /api/v1/admin/campaign-types ### Request Body - **name** (string) - Required - The name of the campaign type. ### Request Example { "name": "New Campaign Type" } ### Response #### Success Response (201) - **id** (string) - The ID of the newly created campaign type. - **name** (string) - The name of the newly created campaign type. ### Response Example { "id": "campaign2", "name": "New Campaign Type" } ## PUT /api/v1/admin/campaign-types/{id} ### Description Modifies an existing campaign type. ### Method PUT ### Endpoint /api/v1/admin/campaign-types/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The ID of the campaign type to modify. ### Request Body - **name** (string) - Required - The new name for the campaign type. ### Request Example { "name": "Updated Campaign Type Name" } ### Response #### Success Response (200) - **id** (string) - The ID of the modified campaign type. - **name** (string) - The updated name of the campaign type. ### Response Example { "id": "campaign1", "name": "Updated Campaign Type Name" } ## DELETE /api/v1/admin/campaign-types/{id} ### Description Deletes a campaign type. ### Method DELETE ### Endpoint /api/v1/admin/campaign-types/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The ID of the campaign type to delete. ### Response #### Success Response (204) No content. ## GET /api/v1/admin/event-types ### Description Retrieves a paginated list of event types. ### Method GET ### Endpoint /api/v1/admin/event-types ### Parameters #### Query Parameters - **page** (integer) - Optional - The page number to retrieve. - **pageSize** (integer) - Optional - The number of items per page. ### Response #### Success Response (200) - **eventTypes** (array) - A list of event type objects. - **totalCount** (integer) - The total number of event types available. ### Response Example { "eventTypes": [ { "id": "event1", "name": "Type X" } ], "totalCount": 1 } ## GET /api/v1/admin/event-types/{id} ### Description Retrieves a specific event type by its ID. ### Method GET ### Endpoint /api/v1/admin/event-types/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The ID of the event type to retrieve. ### Response #### Success Response (200) - **id** (string) - The ID of the event type. - **name** (string) - The name of the event type. ### Response Example { "id": "event1", "name": "Type X" } ``` -------------------------------- ### Run Volt MX Foundry Installer in Silent Mode Source: https://context7.com/hcl-tech-software/volt-mx-docs/llms.txt Execute the installer script with silent mode parameters for an automated installation. Ensure the properties file and installation directory are correctly specified. ```bash chmod +x VoltMXFoundryInstaller-.bin ./VoltMXFoundryInstaller-.bin -i silent \ -f /tmp/install.properties \ -DINSTALL_DIR=/opt/voltmx/foundry ``` -------------------------------- ### General Configuration Management Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/assets-for-home-page/tutorials/designingTheLayout.html APIs for retrieving and updating general configurations. ```APIDOC ## Get All Config ### Description Retrieves all configuration settings. ### Method GET ### Endpoint /config ## Update Config Resources ### Description Updates configuration resources. ### Method PUT ### Endpoint /config/resources ``` -------------------------------- ### Silent-mode Installation Properties for Volt MX Foundry on Linux Source: https://context7.com/hcl-tech-software/volt-mx-docs/llms.txt Configuration properties for a silent-mode installation of Volt MX Foundry on Linux. This file defines installation paths, server choices, database configurations, and component installations. ```bash # Silent-mode installation of Volt MX Foundry on Linux/Tomcat # 1. Create the silent install properties file cat > /tmp/install.properties << 'EOF' INSTALL_DIR=/opt/voltmx/foundry SERVER_CHOICE=1 # 1=Tomcat, 2=JBoss TOMCAT_HOME=/opt/tomcat DB_TYPE=mysql # mysql | oracle | mssql DB_HOST=db.example.com DB_PORT=3306 DB_USER=foundry_user DB_PASSWORD=Foundry@SecurePass1 DB_PREFIX=vmx_ INSTALL_IDENTITY_COMPONENT=true INSTALL_CONSOLE_COMPONENT=true INSTALL_INTEGRATION_COMPONENT=true INSTALL_ENGAGEMENT_COMPONENT=true INSTALL_SYNC_COMPONENT=true ADMIN_EMAIL=admin@example.com ADMIN_PASSWORD=Admin@Secure123 EOF ``` -------------------------------- ### Application Level APIs Source: https://github.com/hcl-tech-software/volt-mx-docs/blob/master/v10/assets-for-home-page/tutorials/apiManagement.html APIs for managing the overall offline objects setup, drop, reset, and rollback functionalities. ```APIDOC ## Application Level APIs ### Description Provides methods to manage the offline objects functionality at the application level. ### Methods - `HCLFoundry.OfflineObjects.setup` - `HCLFoundry.OfflineObjects.drop` - `HCLFoundry.OfflineObjects.reset` - `HCLFoundry.OfflineObjects.rollback` ``` -------------------------------- ### Install MkDocs Material Theme Source: https://context7.com/hcl-tech-software/volt-mx-docs/llms.txt Install the MkDocs Material theme using pip. This theme is used for building the documentation site. ```bash pip install mkdocs-material ```