In this sample, the TIBCO StreamBase® Output Adapter for MQTT Client Subscribe and TIBCO StreamBase® Input Adapter for MQTT Client Publish are used together to subscribe to and send data to an MQTT broker. The sample will initially subscribe to three message queues (Streambase0, Streambase1, Streambase2), each corresponding to their quality of service number.
The sample server configuration file in this sample contains connection information that is shared between the subscribe and publish adapters. This demo uses the open Eclipse iot.eclipse.org mqtt sandbox server. Please see http://iot.eclipse.org/sandbox.html for further details about this sandbox server.
In StreamBase Studio, import this sample with the following steps:
From the top-level menu, select→ .
mqttto narrow the list of samples.
MQTT Client Adaptersfrom the StreamBase Messaging Adapters category.
StreamBase Studio creates a single project containing the sample files.
In the Project Explorer, open the sample you just loaded.
Open the package folder (most samples contain a single package folder. Open the top-level package folder if your sample contains more than one folder).
Open the named application file and click the Run button. This opens the SB Test/Debug perspective and starts the application.
If you see red marks, wait a moment for the project in Studio to load its features.
If red marks do not resolve themselves in a moment, select the project and right-click→ from the context menu.
PublishDataStream in the Manual Input window.
Enter the following values:
Payload: This is a test message
And click the Send Data button.
Repeat this step sending messages to the various message queues. Note that Qos can only be set as high as the message queue default allows. For example, you cannot send a Qos level 2 message to Streambase0 because that message queue was set up to only handle Qos level 0 messages.
In the Application Output view, observe tuples emitted on the
Select individual tuples emitted from the
Datastreams, to analyze and understand their structure.
When done, press F9 or click the Stop Running Application button.
When you load the sample into StreamBase Studio, Studio copies the sample project's files to your Studio workspace, which is normally part of your home directory, with full access rights.
Load this sample in StreamBase Studio, and thereafter use the Studio workspace copy of the sample to run and test it, even when running from the command prompt.
Using the workspace copy of the sample avoids permission problems. The default workspace location for this sample is:
See Default Installation Directories for the default location of
studio-workspace on your system.