ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ Telemetry / Low Latency Messaging / Everyplace » MQTT Channel Protocol

Post new topic  Reply to topic
 MQTT Channel Protocol « View previous topic :: View next topic » 
Author Message
inMo
PostPosted: Tue Feb 09, 2016 7:56 am    Post subject: MQTT Channel Protocol Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

I have a local install of MQ 7.5.02 running an MQTT channel called 'HTTP'. The HTTP channel has a PROTOCOL property set to (MQTTV3, HTTP). This channel is used to run a local proof of concept.

The local proof of concept is being migrated to a server. The server is running MQ 7.5.03. Established an MQTT channel called 'HTTP'. However, when trying to run the alter channel command to enable HTTP, it doesn't seem to recognize the PROTOCOL property as valid.

Question 1 - Anyone have any ideas on why this is?

Question 2 - The POC uses a javascript client. It is assumed the JS client requires the HTTP protocol. Is that a valid assumption?

Thanks in advance.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Feb 09, 2016 8:04 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20696
Location: LI,NY

Do not get confused between channel name and channel protocol...
By the way I would never name a channel HTTP... way to confusing...
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
inMo
PostPosted: Tue Feb 09, 2016 8:18 am    Post subject: Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

Thanks for the response. The name is just for simple POC purposes. (If you have any MQTT channel naming standard suggestions I'm all ears )

The local properties on 7.5.0.2 are where POC is working fine:

Code:

AMQ8414: Display Channel details.
   CHANNEL(HTTP)                           CHLTYPE(MQTT)
   TRPTYPE(TCP)                            PORT(1884)
   LOCLADDR( )                             MCAUSER(Guest)
   USECLTID(NO)                            BACKLOG(4096)
   DESCR( )                                SSLCIPH( )
   SSLCAUTH(NEVER)                         SSLKEYP( )
   SSLKEYR( )                              JAASCFG( )
   PROTOCOL(MQTTV3,HTTP)


The server properties on 7.5.0.3 are (no PROTOCOL option?):

Code:

AMQ8414: Display Channel details.
   CHANNEL(HTTP)                           CHLTYPE(MQTT)
   TRPTYPE(TCP)                            PORT(1886)
   LOCLADDR( )                             MCAUSER(nobody)
   USECLTID(NO)                            BACKLOG(4096)
   DESCR( )                                SSLCIPH( )
   SSLCAUTH(OPTIONAL)                      SSLKEYP( )
   SSLKEYR( )                              JAASCFG( )


Any help/explanation/MQ Telemetry for dummies type guidance is appreciated.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Feb 09, 2016 8:38 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The only reference I see for HTTP with the MQ Telemetry Service is in v8.

So. Your server needs to be at v8...

Note that it only supports MQTT over WebSockets, too. Not a mapping between a normal HTTP request and an MQTT operation.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
inMo
PostPosted: Tue Feb 09, 2016 8:53 am    Post subject: Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

Causing an error on purpose, during the alter command the following is shown on v7.5.0.2:

AMQ8427: Valid syntax for the MQSC command:

ALTER CHANNEL( channel_name ) CHLTYPE(MQTT)

[ BACKLOG( integer ) ] [ DESCR( string ) ]
[ JAASCFG( string ) ] [ LOCLADDR( string ) ]
[ MCAUSER( string ) ] [ PORT( integer ) ]
[ PROTOCOL( MQTTV3, HTTP ) ]
[ SSLCAUTH( REQUIRED | OPTIONAL | NEVER ) ]
[ SSLCIPH( string ) ] [ SSLKEYP( string ) ]
[ SSLKEYR( string ) ] [ TRPTYPE( TCP ) ]
[ USECLTID( NO | YES ) ]

On v7.5.0.3 the PROTOCOL option dissapears:

AMQ8427: Valid syntax for the MQSC command:

ALTER CHANNEL( channel_name ) CHLTYPE(MQTT)

[ BACKLOG( integer ) ] [ DESCR( string ) ]
[ JAASCFG( string ) ] [ LOCLADDR( string ) ]
[ MCAUSER( string ) ] [ PORT( integer ) ]
[ SSLCAUTH( REQUIRED | OPTIONAL ) ] [ SSLCIPH( string ) ]
[ SSLKEYP( string ) ] [ SSLKEYR( string ) ]
[ TRPTYPE( TCP ) ] [ USECLTID( NO | YES ) ]
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Feb 09, 2016 9:06 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Sure.

Did you verify that the HTTP support worked in v7.5.0.2?

Maybe it's just a bug in runmqsc...
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
inMo
PostPosted: Tue Feb 09, 2016 9:06 am    Post subject: Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

https://www-01.ibm.com/support/knowledgecenter/SSFKSJ_8.0.0/com.ibm.mq.mig.doc/q121540_.htm

Quote:
WebSphere® MQ Version 7.5.0, Fix Pack 1 and later supports the MQTT protocol over WebSockets. This enables it to be a server for clients using the MQTT messaging client for JavaScript.

A new communication protocol parameter (PROTOCOL) has been added to the MQTT channel ...


Is there a way an MQ installation reporting to be at level 7.5.0.3 is not actually active at that particular level?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Feb 09, 2016 9:10 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Is there a way? Dunno.

The knowledge center for v7.5 doesn't mention anything about the PROTOCOL parameter. That matches up with your runmqsc results.

Did you verify that WebSockets works?
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
inMo
PostPosted: Tue Feb 09, 2016 9:14 am    Post subject: Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

Yes - websockets are working great locally on v7.5.0.2.

Can't connect via websockers to server running version v7.5.0.3
Back to top
View user's profile Send private message
mqjeff
PostPosted: Tue Feb 09, 2016 9:17 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

PMR time.

Sounds like they dropped a feature without necessarily clearly documenting it...

Or maybe it's a config option in the MQXR service somewhere.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
inMo
PostPosted: Tue Feb 09, 2016 9:20 am    Post subject: Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

OK. As always, I appreciate the help.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Feb 09, 2016 12:29 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20696
Location: LI,NY

inMo wrote:
Thanks for the response. The name is just for simple POC purposes. (If you have any MQTT channel naming standard suggestions I'm all ears )

The local properties on 7.5.0.2 are where POC is working fine:

Code:

   LOCLADDR( )                             MCAUSER(Guest)
   PROTOCOL(MQTTV3,HTTP)


The server properties on 7.5.0.3 are (no PROTOCOL option?):

Code:

   LOCLADDR( )                             MCAUSER(nobody)


Any help/explanation/MQ Telemetry for dummies type guidance is appreciated.

And you don't think that the difference of MCAUser has no implications??
As naming conventions, how about including somewhere the name of the client application??
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
inMo
PostPosted: Tue Feb 09, 2016 12:43 pm    Post subject: Reply with quote

Master

Joined: 27 Jun 2009
Posts: 216
Location: NY

Those are IBM generated based on the platform.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Tue Feb 09, 2016 1:56 pm    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20696
Location: LI,NY

inMo wrote:
Those are IBM generated based on the platform.

And here I thought they came from the equivalent SYSTEM.DEFAULT channel...
'nobody' sounds like a default put in place to prevent anybody from using the channel... so may be it is not the value you want...
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Tue Feb 09, 2016 1:58 pm    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

fjb_saper wrote:
inMo wrote:
Those are IBM generated based on the platform.

And here I thought they came from the equivalent SYSTEM.DEFAULT channel...
'nobody' sounds like a default put in place to prevent anybody from using the channel... so may be it is not the value you want...


It is *slightly* possible this is blocking the websockets connection... but it doesn't change the fact that v7.5.0.3 doesn't support the same config that v7.5.0.2 did.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Telemetry / Low Latency Messaging / Everyplace » MQTT Channel Protocol
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.