Free MQTT Message Viewer for Canada 150

On July 1st, 2017, Canada will celebrate being a nation for 150 years.

2017 marks a significant moment in the History of Canada. 150 years ago, Quebec, Ontario, New Brunswick and Nova Scotia – united to create the Canadian Confederation, called the Dominion of Canada. On account of the British North America Act that became law July 1st 1867, these British colonies would be recognized as an independent nation. In the years that followed, the other provinces and territories joined the Dominion, making today’s Canada a mari usque ad mare (“from sea to sea”).

I have decided that Capitalware will have a free product give away to celebrate Canada’s 150th birthday. Capitalware will give away 150 licenses for MQTT Message Viewer (that’s not a typo, 150 licenses). The free product give away is for ANYONE from around the world (not just Canadians).

If you use/work with MQTT messages and want a great tool for FREE, then send an email to support@capitalware.com and say ‘Happy 150th Birthday Canada’ and we will send you a FREE license to MQTT Message Viewer.

There are absolutely no strings attached. Capitalware will give out free MQTT Message Viewer licenses to the first 150 ‘Happy Birthday’ emails that we receive.

Why am I doing this?

(1) To celebrate Canada’s 150 birthday,
(2) With all the craziness going on in the world, maybe this will bring a smile to a few faces,
(3) I like the concept of ‘Pay It Forward’.

So, don’t delay. If you use MQTT and want an awesome free tool then send an email ASAP to support@capitalware.com .

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, MQTT, MQTT Message Viewer Leave a comment

IBM MQ V8.0 is available on the HPE NonStop platform

IBM has released IBM MQ V8.0 on the HPE NonStop platform:
https://www.ibm.com/common/ssi/ShowDoc.wss?docURL=/common/ssi/rep_ca/6/897/ENUS217-266/index.html

Highlights:
– Support for both the NSX and NSI platform
– Support for both 32-bit and 64-bit native applications
– Support for OSS and Guardian applications
– Data storage in Transaction Management Facility (TMF) protected Enscribe files
– Transactional support provided by TMF
– MQ non-native TNS language support with greater memory headroom than in the WebSphere MQ for HP NonStop Server V5.3
– Support for all the WebSpher MQ for HP NonStop Server V5.3 native languages with additional support for the native pTAL language
– Support for modern PUT multi-threading
– Default Fault Tolerant Mode for high availability
– Bundled MQ client feature with TMF integration
– Richer Enhanced Messaging Service (EMS) event handling
– TCP/IP transport configurable by channel and listener

IBM MQ (aka WebSphere MQ) homepage
http://www.ibm.com/software/products/en/ibm-mq

Regards,
Roger Lacroix
Capitalware Inc.

MQ Leave a comment

MQTT Message Viewer V1.1.0 Released

Capitalware Inc. would like to announce the official release of MQTT Message Viewer V1.1.0. This is a FREE upgrade for ALL licensed users of MQTT Message Viewer.

MQTT Message Viewer is an MQTT (MQ Telemetry Transport) client that connects to an MQTT Broker. MQTT is a machine-to-machine (M2M)/Internet of Things (IoT) connectivity protocol. MQTT Message Viewer supports MQTT 3.1 and 3.1.1 protocol versions.

MQTT Message Viewer allows users to subscribe, publish, edit, copy, delete, forward, backup, restore, import and export messages of a topic. MQTT Message Viewer is a great tool for IoT (Internet of Things) application programmers, developers, quality assurance testers, and production support personnel.

    Changes for MQTT Message Viewer v1.1.0:

  • Added the ability to discover topics so that they can be used in a listing
  • Added the ability to list discovered topics
  • Added the ability to organize discovered topics
  • Added support for delimiters to parse file(s) for ‘Import File’ feature.
  • Fixed an issue with message coloring when ‘#’ wildcard is used to subscribe to a topic

For more information about MQTT Message Viewer, please go to:
http://www.capitalware.com/mtmv_overview.html

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, Linux, Mac OS X, MQTT, MQTT Message Viewer, Windows Leave a comment

Richard’s Graduation Ceremony and Awards

Today was Richard’s (son #1) graduation ceremony from University of Western Ontario (Mechatronic Systems Engineering program).

He picked up 2 more awards:
Governor General’s Academic Medal – awarded for having the highest average of Western’s entire graduating class.
– Professional Engineers of Ontario Gold Medal – awarded to the graduating engineering student with the highest aggregate mark for the four years of the undergraduate program.

The London Free Press has written an article about Richard’s awards and job with Google.

The legal process for Richard getting his TN1 Visa has take longer than expected, so Richard’s new start date is July 10th.

Regards,
Roger Lacroix
Capitalware Inc.

Education Leave a comment

Scam/Fraud Phishing Email ‘DocuSign’

Another day, another scam. I received another scam email that Spam Assassin didn’t remove. This email is a phishing email pretending to be from DocuSign with the title ‘Please review your document Invoice 2521458 for capitalware.com’ and is a scam or more likely it is ransomware.

So, be warned, the following email is a scam or ransomware and is not real.

Note: ‘Review Document’ is a link to http://explorist.in/file.php ? document=c2FsZXNAY2FwaXRhbHdhcmUuY29t – I put a space before and after the ‘?’ in the link so that it would not be click able.

(1st) Email Header shows that it came from: 173-162-136-5-newengland.hfc.comcastbusiness.net
(2nd) Email Header shows that it came from: 70-89-217-253-clark-manor-il.hfc.comcastbusiness.net
From Email: william_scott@flexovitportal.com
Subject: Please review your document Invoice 2521458 for capitalware.com

Your Invoice 2521458 from capitalware.com for May Document is Ready for Signature.

Please review and sign your Invoice 2521458 from capitalware.com for May
via DocuSign by clicking on the “Review Document” button above. Signing will not be complete until you have reviewed the document and confirmed your signature. Please contact us if you have any questions. Thank you.

Powered by
DocuSign

Do Not Share This Email
This email contains a secure link to DocuSign. Please do not share this email, link, or access code with others.

Alternate Signing Method
Visit DocuSign.com, click ‘Access Documents’, and enter the security code:
4C734
EC8F62G41E7A221B5446048
E2171

About DocuSign
Sign documents electronically in just minutes. It’s safe, secure, and legally binding. Whether you’re in an office, at home, on-the-go — or even across the globe — DocuSign provides a professional trusted solution for Digital Transaction Management™.

Questions about the Document?
If you need to modify the document or have questions about the details in the document, please reach out to the sender by emailing them directly or replying to this email.

If you are having trouble signing the document, please visit the Help with Signing page on our Support Center.

If you get an email like this from an unknown person, do NOT click on the ‘REVIEW DOCUMENT’ button in the email. Just delete the email ASAP and clear your Trash folder.

Regards,
Roger Lacroix
Capitalware Inc.

Scam / Fraud Leave a comment

OMG: Apple Finally Adds Support For FLAC Lossless Audio In iOS 11

I love programming and there are 2 things I require: coffee and music. You give me fresh coffee and let me play my music (Alt-Rock with a hint of blues), I can program all day and all night. 🙂 Although, my wife will get really mad about me programming all night. 🙂

My wife and I have 5 kids. So, when either the kids or my wife ask me what I want for my birthday or Xmas, etc… I say music, music and more music. And not the low quality digital download music (crap) but I want my music on CD. I want CDs for 2 reasons: (1) it is the best quality available for music and (2) the artist gets paid the most in royalties from a CD purchase.

For years and years, when I get new CDs, I had to rip them twice. Once to get the music in FLAC format and a second time to get MP3 format (VBR 192-320kps).

I use Winamp to play my music from my FLAC music library. But since Apple has refused to support FLAC, I have to have my music in MP3 format, so that I can load it onto my iPhone and iPod.

So, I REALLY hope this news article is correct:
https://thenextweb.com/apple/2017/06/06/ios-11-flac-audio-iphone-ipad/

It will make my life so much easier when I get new CDs. 🙂

Regards,
Roger Lacroix
Capitalware Inc.

iPhone, iPad & iPod Touch Leave a comment

Lyn Elkins and Mitch Johnson will be Speaking at MQTC v2.0.1.7

Lyn Elkins of IBM and Mitch Johnson of IBM will be speaking at MQ Technical Conference v2.0.1.7 (MQTC).

    Lyn Elkins’ and Mitch Johnson’s Session:

  • MQ for z/OS – An introduction to object authorization on that ‘other’ queue manager
    Lyn Elkins’ and Mark Taylor Session:

  • Using and Analysing SMF data
    Lyn Elkins’ Sessions:

  • MQ z/OS Performance & Internals
  • MQ for z/OS – Shared queues and why is my workload not running where I think it should
  • An Intro to MQ Service provider and z/OS Connect

For more information about MQTC, please go to:
http://www.mqtechconference.com

Regards,
Roger Lacroix
Capitalware Inc.

Education, MQ, MQ Technical Conference Leave a comment

MQ API Verbs that IBM Forgot!!

Every couple of months, I get an email from someone asking me if they can use MQAUSX client-side security exit with IBM MQ V8 or V9 to perform authentication via CONNAUTH. The answer is no – the MQAUSX client-side security exit only works with the MQAUSX server-side security exit.

IBM added the MQCSP (Connection Security Parameters) structure in MQ V6, so that applications could send a UserId and Password (in plain text) to a remote queue manager. At that time, the queue manager would not do anything with the UserId and Password except pass it to a channel security exit (i.e. MQAUSX), if one was in use.

In MQ V7, MQ had an explosion of new MQ API verbs. MQ V6 had 13 verbs and MQ v7.0 introduced 12 new API verbs (basically, the verb count doubled). Why IBM did not enhance or add new MQCONN/MQCONNX verbs to include a UserId and Password for MQ V7, V7.1 or V7.5 is debatable. But when IBM introduced CONNAUTH in MQ V8, IBM absolutely should have made the developers life easier by introducing new MQCONN/MQCONNX verbs.

Since, IBM is not interested or unwilling to introduce 2 new MQ API verbs, I will.

Here are the standard MQCONN and MQCONNX verbs:

MQCONN(QMgrName, &Hconn, &CompCode, &Reason);

MQCONNX(QMgrName, &ConnectOpts, &Hconn, &CompCode, &Reason);

Today, I will introduce 2 new MQ verbs: MQCONNU and MQCONNUX for MQ applications written in C.

MQCONNU(UserId, Password, QMgrName, &Hconn, &CompCode, &Reason);

MQCONNUX(UserId, Password, QMgrName, &ConnectOpts, &Hconn, &CompCode, &Reason);

I have created a C source file called ‘mqconnu.c’ that has the prototypes and code to handle the new MQ verbs. All the developer needs to do is include the ‘mqconnu.c’ in their MQ C applications then they can use the new MQ verbs.

I have created 2 MQ tester programs to demonstrate the 2 new MQ verbs called: ‘test_mqconnu.c’ and ‘test_mqconnux.c’. You can download a zip file that contains the 3 files from here.

So, lets have a look at the ‘test_mqconnu.c’ program:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <cmqc.h>

#include "mqconnu.c" /* prototypes and code for MQCONNU and MQCONNUX */

int main(int argc, char **argv)
{
   MQHCONN  Hcon;                   /* connection handle  */
   MQLONG   CompCode;               /* completion code    */
   MQLONG   Reason;                 /* reason code        */
   char     QMgrName[MQ_Q_MGR_NAME_LENGTH+1];
   char     userId[64];
   char     passwd[64];

   if (argc != 4)
   {
      printf("test_mqconnu QMgrName userid password\n");
      return(1);
   }

   printf("test_mqconnu start\n");

   strncpy(QMgrName, argv[1], MQ_Q_MGR_NAME_LENGTH);
   strncpy(userId, argv[2], sizeof(userId));
   strncpy(passwd, argv[3], sizeof(passwd));

   printf("Using values:\n");
   printf("   QMgrName   : %s\n", QMgrName);
   printf("   UserID     : %s\n", userId);
   printf("   Password   : %s\n", passwd);

   MQCONNU(userId,                  /* UserId             */
           passwd,                  /* Password           */
           QMgrName,                /* queue manager      */
           &Hcon,                   /* connection handle  */
           &CompCode,               /* completion code    */
           &Reason);                /* reason code        */

   printf("MQCONNU CC=%d RC=%d\n", CompCode, Reason);

   if (CompCode == MQCC_OK)
   {
      MQDISC(&Hcon,                 /* connection handle  */
             &CompCode,             /* completion code    */
             &Reason);              /* reason code        */

      printf("MQDISC  CC=%d RC=%d\n", CompCode, Reason);
   }

   printf("test_mqconnu end\n");
   return(0);
}

As you can see, MQCONNU is a direct replacement for MQCONN with the added benefit of passing the UserId and Password to MQ.

Now lets have a look at the ‘test_mqconnux.c’ program:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <cmqc.h>
#include <cmqxc.h>

#include "mqconnu.c" /* prototypes and code for MQCONNU and MQCONNUX */

int main(int argc, char **argv)
{
   MQHCONN  Hcon;                    /* connection handle   */
   MQLONG   CompCode;                /* completion code     */
   MQLONG   Reason;                  /* reason code         */
   MQCNO    cno = {MQCNO_DEFAULT};   /* MQCONNX options     */
   MQCD     cd  = {MQCD_CLIENT_CONN_DEFAULT};
   char     QMgrName[MQ_Q_MGR_NAME_LENGTH+1];
   char     userId[64];
   char     passwd[64];

   if (argc != 6)
   {
      printf("test_mqconnux QMgrName ChlName hostname(port) userid password\n");
      return(1);
   }

   printf("test_mqconnux start\n");

   strncpy(QMgrName, argv[1], MQ_Q_MGR_NAME_LENGTH);
   strncpy(cd.ChannelName, argv[2], MQ_CHANNEL_NAME_LENGTH);
   strncpy(cd.ConnectionName, argv[3], MQ_CONN_NAME_LENGTH);
   strncpy(userId, argv[4], sizeof(userId));
   strncpy(passwd, argv[5], sizeof(passwd));

   printf("Using values:\n");
   printf("   QMgrName   : %s\n", QMgrName);
   printf("   ChannelName: %s\n", cd.ChannelName);
   printf("   hostname   : %s\n", cd.ConnectionName);
   printf("   UserID     : %s\n", userId);
   printf("   Password   : %s\n", passwd);

   /* Point the MQCNO to the client connection definition */
   cno.ClientConnPtr = &cd;
   cno.Version = MQCNO_VERSION_5;

   MQCONNUX(userId,                  /* UserId                 */
            passwd,                  /* Password               */
            QMgrName,                /* queue manager          */
            &cno,                    /* options for connection */
            &Hcon,                   /* connection handle      */
            &CompCode,               /* completion code        */
            &Reason);                /* reason code            */

   printf("MQCONNUX CC=%d RC=%d\n", CompCode, Reason);

   if (CompCode == MQCC_OK)
   {
      MQDISC(&Hcon,                  /* connection handle      */
             &CompCode,              /* completion code        */
             &Reason);               /* reason code            */

      printf("MQDISC   CC=%d RC=%d\n", CompCode, Reason);
   }

   printf("test_mqconnux end\n");
   return(0);
}

As you can see, MQCONNUX is a direct replacement for MQCONNX with the added benefit of passing the UserId and Password to MQ.

The new MQCONNU and MQCONNUX verbs can be used in any C MQ application that wants to pass a UserId and Password to MQ for authentication. The 2 new verbs can be used in MQ applications on any platform where the MQ client code-base supports MQCSP structure.

As mentioned above, you can download a zip file that contains the 3 files from here.

Regards,
Roger Lacroix
Capitalware Inc.

C, IBM i (OS/400), Linux, Mac OS X, MQ, Programming, Unix, Windows 2 Comments

IBM MQ V9.0.3 Continuous Delivery Released

IBM has released IBM MQ V9.0.3 Continuous Delivery:
https://www.ibm.com/developerworks/community/blogs/messaging/entry/MQ903GA

Highlights:
– IBM MQ Advanced for z/OS Value Unit Edition has a new Connector Pack
– The MQ REST API has had some updates to enable read and update of the queue manager configuration, plus querying of the status.
– IBM MQ Managed File Transfer has had additional diagnostics added to improve the user experience of understanding why file transfers have failed and what corrective action needs to be taken to resolve the problem.
– IBM MQ Appliance can intercept messages from clients not configured to work with MQ Advanced Message Security(AMS) and enable them to interact with queues that have AMS policies defined, such as signing and/or encryption.

IBM MQ (aka WebSphere MQ) homepage
http://www.ibm.com/software/products/en/ibm-mq

Regards,
Roger Lacroix
Capitalware Inc.

Linux, MQ, Windows, z/OS Leave a comment

SQLite v3.19.0 Released

D. Richard Hipp has just released SQLite v3.19.0.
http://www.sqlite.org/news.html

SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite is the most widely deployed SQL database engine in the world. The source code for SQLite is in the public domain.

Regards,
Roger Lacroix
Capitalware Inc.

C, Database, IBM i (OS/400), Linux, Mac OS X, Open Source, Programming, Unix, Windows Leave a comment