Desktop.DASH Instant Messenger
Important Note!
Desktop.DASH V1 utilizes the open source Jabber.Net client for IM - which is no longer supported. And due to the non use of HTTPS and SSL/TLS (as required by modern chat servers) the IM feature in V1 has been deprecated - so please ignore the remainder of this page. V2 will incorporate a modern service - such as Telegram which is fully secured.
November 2012
In the previous section we looked at U Stores, UserLevel's and setting up user accounts.
Home Desktop.DASH
In this section we'll look at how UserLevel is implemented with Instant Messenger remote access and control.
Getting Started
Please complete this example when using the IM Client for the first time... Simple IM Example
User Account
Before you can use IM you must setup an account with an IM service provider and configure Desktop.DASH with those credentials.
From the main menu choose Admin > Options then select the I-Messenger TAB...
Instant Messenger Client Setup
Instant Messenger Setup Details
[ ] Enable Instant Messenger - check this to allow the processing of IM commands when your host PC is connected to the Internet.
[ ] Automatically Connect - check this to compel Desktop.DASH to connect the IM client with your configured provider when it starts and successfully loads a project.
Chat Server URL, UserName and Password are filled in per the account settings of your IM host.
When an IM server sends a message it specifically includes a header that details the senders username.
These are qualified users, for example, joe@blogs.com, john@smith.net, boris@londonmayor.org ...you get the idea.
[ ] Enforce Whitelist - enter a comma separated list of inbound IM usernames that are permitted for remote command and control of your Desktop.DASH.
[ ] Log all Chats - checking this will not only log all successful inbound IM commands and requests, but will also capture all failed inbound traffic to the error log too.
Important Notes
When Auto-Connect is disabled you must manually start the IM client control.
When Auto-Connect is enabled you can manually stop the IM client control, but must then manually re-start it if required.
Manual IM Control
To manually start IM choose Main Menu > Admin > Start IM Control and to stop it choose Main Menu > Admin > Stop IM Control
Web Properties
Once you have configured the chat client you can now selectively configure the various dashboard controls that you want to expose to IM reads and writes.
Select any control that maps to a PLC DataPoint, for example a slider, and right-click the control and choose Web Properties...
Web Properties Dialogue
Check [ ] Allow remote Reads to enable the read controls, and [ ] Allow remote Writes to enable the write controls.
To append a Unit of Engineering measurement enter one in the Unit of Measurement text box.
Write minimum and maximum values are limited to the type of DataPoint you are targeting. Any error here will be displayed and must be resolved before you can press [Ok] and exit.
Important Notes
You can only read and write INTEGER values. Use the formatting rule to put a decimal point into a read value as required.
Any incoming values that contain a decimal point will have it removed.
Any incoming value outside the range of minimum and maximum will be dropped.
The IM client logic will execute the read and write on the FIRST matching UserLabel that it encounters then exit its routine, therefore if you have two UserLabel's that are identical, yet map to the same DataPoint but with different UserLevel's and formatting you will get unexpected results.
Web Properties Completed
Web Properties - User Messages
For user defined message stores U0-9 there is a different Web Properties setup dialogue...
Web Properties for a Universal Store Message
Important Notes
Whilst you can expose other U Stores to remote read access, any attempt to write to them will fail.
As stated previously, ANY control that you wish to expose to IM MUST have a UserLabel that contains no spaces or special characters.
For example, these are good:- RoomTemp, GarageDoor, Msg, ExtLights, etc.
Any inbound message of an excessive length will be dropped. A total of 140 chars including your Username is allowed.
The IM Client is a single threaded process intended for a few concurrent users and very light use*
* Around 2 or 3 users firing 2 or 3 messages/requests per minute.
Using Instant Messenger
Once you are successfully connected via IM to your dashboard client, you could enter RoomTemp to return the current value of the associated DataPoint.
To write a value simply append it to the Userlabel, for example RoomTemp 18.5 (As stated, 185 will be interpreted, as the decimal point will be dropped.)
For Binary stores send a 1 for ON or a 0 for OFF.
Server verification. Sending ? in your IM session will return the Server Name and MAC Address as set in Main Menu > Admin > Options ... System TAB
In the next section we'll look at Data Logging and Log Files.