| At line 4 changed one line |
| Dependency jar files must be downloaded (unzip) and placed in your __CrushFTP Install Folder/plugins/ lib__. Restart is required to load the new JMS-related dependency jars. [ Download Link|jms_dependency.zip]\\ |
| ---- |
| __⚠️ Important__:\\ |
| • Dependency jar files must be downloaded (unzip) and placed in your __CrushFTP Install Folder/plugins/ lib__. ⚠️ Restart is required to load the new JMS-related dependency jars. [ Download Link|jms_dependency.zip]\\ |
| • CrushFTP’s JMSTask supports JMS providers that use the __AMQP 1.0__ protocol.\\ |
| ---- |
| __⚠️ Proxy Configuration__: If your server accesses the internet through a proxy, ensure that the __AMQPS__ domains are whitelisted.\\ |
| ---- |
| !!1. Solace JMS Integration\\ |
| At line 6 removed 2 lines |
| !!1. Solace JMS AMQPS Integration\\ |
| \\ |
| At line 10 changed one line |
| Get the __AMQPS URL__, __Username__, and __Password__ for JMSTask's __JNDI configuration__ from the __Solace Broker Management__.\\ |
| Get the __AMQPS URL__, __username__, and __password__ from your Solace broker for use in the JMSTask JNDI configuration.\\ |
| At line 18 added 2 lines |
| ---- |
| !!2. Apache ActiveMQ Artemis and Amazon MQ Integration \\ |
| At line 14 changed one line |
| !!2. JMSTask configuration:\\ |
| !2.1 Apache ActiveMQ Artemis\\ |
| \\ |
| More info: [ActiveMQ Artemis Documentation Link|https://activemq.apache.org/components/artemis/documentation/]\\ |
| __⚠️ Important__: To connect JMSTask to __Apache ActiveMQ Artemis__ over __AMQPS__, ensure your Artemis broker is configured to accept secure __AMQP__ connections.\\ |
| \\ |
| [JMS (Java Message Service)/apache_artemis.png]\\ |
| \\__JNDI connection related settings example:__\\ |
| ---- |
| __a.)__\\ |
| {{{ |
| # Secured AMQP Host |
| connectionfactory.qpidConnectionfactory=amqps://192.168.0.10:5671?transport.trustAll=true&transport.verifyHost=false |
| }}}\\ |
| \\ |
| • __transport.trustAll=true__ -> Accepts all SSL certificates.\\ |
| • __transport.verifyHost=false__ -> Disables hostname verification in the TLS handshake.\\ |
| ---- |
| __b.)__\\ |
| \\ |
| {{{ |
| # Secured AMQP Host |
| connectionfactory.qpidConnectionfactory=amqps://my.artemis.com:5671 |
| }}}\\ |
| ---- |
| !2.2 Amazon MQ\\ |
| \\ |
| CrushFTP also supports integration with __Amazon MQ__, a managed message broker service compatible with ActiveMQ and Artemis. [Amazon MQ (official site) Link|https://aws.amazon.com/amazon-mq/] More info: [Amazon MQ – Managed Message Broker Service for ActiveMQ Link| https://aws.amazon.com/blogs/aws/amazon-mq-managed-message-broker-service-for-activemq/]\\ |
| \\ |
| Sign in to __AWS Console__ and Navigate to __Amazon MQ__ Select your Broker. Click on the name of your ActiveMQ or Artemis broker. Scroll down to the __Connections__ section.\\ |
| \\ |
| [JMS (Java Message Service)/amazon_amqps_url.png]\\ |
| {{{ |
| amqps://<broker-id>.mq.<region>.amazonaws.com:5671 |
| }}} |
| ---- |
| !!3 Azure Service Bus Integration:\\ |
| \\ |
| [Azure Service Bus Link|https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-messaging-overview]\\ |
| [AMQP 1.0 in Azure Service Bus and Event Hubs protocol guide Link|https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-amqp-overview]\\ |
| [JMS (Java Message Service)/azure_service_bus.png]\\ |
| \\ |
| To get __AMQPS URL__:\\ |
| __a.)__ Open your __Service Bus namespace__ in the __Azure Portal__\\ |
| __b.)__ Go to Settings → Shared access policies\\ |
| __c.)__ Select a policy (e.g., RootManageSharedAccessKey)\\ |
| __d.)__ Copy the namespace name (e.g., your-namespace.servicebus.windows.net)\\ |
| __e.)__ Combine as amqps://your-namespace.servicebus.windows.net:5671\\ |
| \\ |
| [JMS (Java Message Service)/azure_amqps_shared_access_key.png]\\ |
| \\ |
| {{{ |
| amqps://<namespace>.servicebus.windows.net:5671 |
| username = <SAS-key-name> |
| password = <SAS-key> |
| }}}\\ |
| \\ |
| ---- |
| !!4. JMSTask configuration:\\ |
| At line 16 changed one line |
| !2.1 JNDI config: Variable replacement is supported.\\ |
| !4.1 JNDI config: Variable replacement is supported.\\ |
| At line 24 changed one line |
| # Context Factory |
| # Context Factory (Do not change!) |
| At line 38 changed 2 lines |
| __java.naming.factory.initial=org.apache.qpid.jms.jndi.JmsInitialContextFactory:__ This tells the application which type of messaging system it is connecting to.\\ |
| __connectionfactory.qpidConnectionfactory=amqps://mr-connection-XXXXd:56XX__: This is the secure address of the messaging server (uses AMQPS, which is encrypted). It tells the application where to connect to send and receive messages.\\ |
| __java.naming.factory.initial=org.apache.qpid.jms.jndi.JmsInitialContextFactory:__ This tells the application which type of messaging system it is connecting to. ⚠️ Do not change!\\ |
| \\ |
| __connectionfactory.qpidConnectionfactory=amqps://mr-connection-XXXXd:56XX__ or\\ |
| __connectionfactory.qpidConnectionfactory=amqps://mr-connection-XXXXd:56XX?transport.trustAll=true&transport.verifyHost=false__\\ |
| This is the secure address of the messaging server (uses AMQPS, which is encrypted). It tells the application where to connect to send and receive messages.\\ |
| \\ |
| __⚠️ Important__: JMSTask uses __sasl.enabled.mechanisms=PLAIN__ by default.\\ |
| At line 110 added one line |
| \\ |
| At line 113 added 2 lines |
| ---- |
| !4.2 Producer Mode:\\ |
| At line 44 removed 2 lines |
| !2.2 Producer Mode:\\ |
| \\ |
| At line 60 changed one line |
| __4. Message Type: Send files__: Sends the file content in binary mode directly to the destination. The maximum allowed file size is __10 MB__.\\ |
| __4. Message Type: Send files__: Sends the file content in binary mode directly to the destination. ⚠️ The maximum allowed file size is __10 MB__.\\ |
| ---- |
| !4.3 Consumer Mode:\\ |
| At line 62 removed 2 lines |
| !2.3 Consumer Mode:\\ |
| \\ |
| At line 69 changed one line |
| __2. Message settings__: Limit the number of messages, and control the read timeout of message reading.\\ |
| __2. Message settings__: Configure how messages are received by setting a limit on the number of messages to process and a timeout that defines how long the system should wait for new messages. These settings help control how the system handles incoming message traffic and delays.\\ |
| At line 71 changed one line |
| __3. Store settings__: It saves the message (less than 10MB) as a file to the given location. Provide the file name and make it unique to avoid overwriting. Variable replacement is supported.\\ |
| __3. Store settings__: Saves the received message (⚠️ up to __10 MB__) as a file at the specified location. You need to provide a __File Name__, ⚠️ and it’s recommended __to make it unique__ to prevent overwriting existing files. Variable replacement is supported for dynamic file naming.\\ |