# tMessagingInput

Fetches messages from a queue on a Message-Oriented middleware (MOM) system and passes the messages on to the next component.

The tMessagingInput component makes it possible to set up asynchronous communications via a MOM server.

This component is not shipped with your Talend Studio by default. You need to install it using the Feature Manager. For more information, see [Installing features using the Feature Manager](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/install-features-to-talend-studio).

Information noteNote: This component is available only when you have installed the 8.0.1-R2022-11 Talend Studio Monthly update or a later one delivered by Talend. For more information, check with your administrator.

## tMessagingInput Standard properties

These properties are used to configure tMessagingInput running in the Standard Job framework.

The Standard tMessagingInput component belongs to the Messaging family.

## Basic settings

| Properties | Description |
| --- | --- |
| Property Type | Either Built-In or Repository.<br><br><ul> <li> <span>Built-In</span>: No property data stored centrally.</li> <li> <span>Repository</span>: Select the repository file in which the                        properties are stored. The database connection related fields that follow                        are completed automatically using the data retrieved.</li> </ul> |
| Use an existing connection | Select this check box and in the Component<br>List drop-down list, select the desired connection component to<br>reuse the connection details you already defined.<br><br>Note that when a Job contains the parent Job and the child Job,<br>Component List presents only the<br>connection components in the same Job level. |
| JMS Provider | Select the type of the MQ server(s) to be connected from the drop-down list:<br>ActiveMQ (JMS v1), ActiveMQ<br>Artemis (JMS v2), or WebSphere<br>MQ. |
| Server URL | Enter the URL of the MQ server.<br><br>MQ server URL needs to be in specific<br>format. That is, tcp://localhost:61616 (for<br>ActiveMQ and ActiveMQ Artemis MQ<br>servers) or localhost(1414) (for WebSphere MQ<br>servers), as prompted in the field. |
| Use Specified User Identity | If you have to log in, select the check box and type in your username and<br>password in the corresponding fields.<br><br>To enter the password, click the [...] button<br>next to the Password field to bring out the Enter a new<br>password dialog box, enter the password in the text field, and click<br>OK. Note that you can enter the password either in a JSON string<br>in the pure password mode or as a Java expression in the Java<br>mode. You can toggle between the two modes by clicking switch to<br>Java mode or switch to pure password mode on the top<br>of the text field. |
| Durable subscription | Select this check box to enable the durable subscription.<br><br><ul> <li> <span>Client ID</span>: enter the client ID for the durable                        subscription.</li> <li> <span>Subscriber name</span>: enter the subscriber name for the                        durable subscription.</li> </ul> |
| Destination type | Select the message type, either: Topic or<br>Queue. |
| Destination | Type in the message source (a queue name or a topic name), exactly as<br>expected by the server; this must include the type and name of the source. For<br>example, queue/A or<br>topic/testtopic.<br><br>Note that this field is<br>case-sensitive. |
| Schema and Edit schema | A schema is a row description. It defines the number of fields<br>(columns) to be processed and passed on to the next component. When you create a Spark<br>Job, avoid the reserved word line when naming the<br>fields.<br><br><ul> <li> <p> <span>Built-In</span>: You create and store the schema locally for this component                only.</p> </li> <li> <p> <span>Repository</span>: You have already created the schema and stored it in the                Repository. You can reuse it in various projects and Job designs.</p> </li> </ul><br><br>Click Edit schema to make changes to<br>the schema. If you make changes, the schema automatically becomes built-in.<br><br><ul> <li> <p> <span>View schema</span>: choose this                option to view the schema only.</p> </li> <li> <p> <span>Change to built-in property</span>:                choose this option to change the schema to <span>Built-in</span> for local changes.</p> </li> <li> <p> <span>Update repository connection</span>:                choose this option to change the schema stored in the repository and decide whether                to propagate the changes to all the Jobs upon completion.</p> <p>If you just want to                propagate the changes to the current Job, you can select <span>No</span> upon completion and choose this schema metadata                again in the <span>Repository Content</span>                window.</p> </li> </ul> |
| Guess schema | Click this button to have the component generating the schema according to<br>the settings provided. |
| Message selector | Enter an expression to filter the messages received. You can use JMS<br>properties or JMS header fields in the expression. See [Producer](https://doc.akka.io/docs/alpakka/current/jms/producer.html) for information about JMS properties and JMS<br>header fields. |

## Advanced settings

| Properties | Description |
| --- | --- |
| tStatCatcher Statistics | Select this check box to collect log data at the component level. |
| Max records | Specify the maximum number of messages to received. A value of<br>-1 does not limit the number of received messages. |
| Max duration time (ms) | Specify the maximum duration time for receiving messages in milliseconds. A<br>value of -1 specifies to receive messages<br>permanently. |
| Acknowledge mode | Select the acknowledge mode from the drop-down list: Auto<br>acknowledge, Client acknowledge,<br>DUPS ok acknowledge,<br>Session/Transaction, or Do not<br>acknowledge. |
| Advanced context properties | Set other properties as needed. To set a property in this table, click the<br>plus button underneath the table to add a line, enter the property name in the<br>Key column and enter the value in the<br>Value column. This table supports global variables and<br>context variables. Refer to [Configure JMS producers](https://doc.akka.io/docs/alpakka/current/jms/producer.html) for information about<br>properties of ActiveMQ and ActiveMQ Artemis MQ servers; refer to [WebSphere MQ connector properties](https://www.ibm.com/docs/en/iis/11.5?topic=connector-websphere-mq-properties) for<br>information about properties of WebSphere MQ servers.<br><br>Information noteNote: If you are using a<br>WebSphere MQ JMS provider, you need to set the mandatory properties (that is,<br>CHANNEL and QUEUE\_MANAGER) in this<br>table. |
| Allow JMS properties | Select this option to have the JMSProperties column<br>added in the schema when you click Guess schema button in<br>the Basic settings view, so as to retrieve JMS properties<br>as well. |

## Global Variables

| Variables | Description |
| --- | --- |
| Global Variables | ERROR\_MESSAGE: the error message generated by the<br>component when an error occurs. This is an After variable and it returns a string. This<br>variable functions only if the Die on error checkbox is<br>cleared, if the component has this checkbox.<br><br><br>NB\_LINE: the number<br>of rows read by an input component or transferred to an output component. This is an<br>After variable and it returns an integer.<br><br>A Flow variable functions during the execution of a component<br>while an After variable functions after the execution of the component.<br><br>To fill up a field or expression with a variable, press Ctrl+Space to access the variable list and choose the variable to use from<br>it.<br><br>For more information about variables, see [Using contexts and variables](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/contexts-and-variables). |

## Usage

| Usage guidance | Description |
| --- | --- |
| **Usage rule** | This component is generally used as an input component. It must be linked to<br>an output component. |
| Limitations | <ul> <li>This component supports ActiveMQ (JMS v1), ActiveMQ Artemis (JMS v2), and WebSphere MQ servers.</li> <li>This component only supports TextMessage objects.</li> </ul> |