It took me a little longer than it probably should have to get this up and running so I wanted to post some supplemental documentation to help other users out.
First, ensure in modules that Twilio is up to date and licensed.
You'll need a Twilio account, even a free account works for testing.
In the publisher configuration...
The Twilio account URL can be found by logging into Twilio and going to https://www.twilio.com/docs/sms/send-messages
On the right side from the languages click CURL. You'll see the HTTP POST call in the sample code, the first portion of this is the 'account URL'. In this example the account URL would be https://api.twilio.com/2010-04-01/Accounts
Your account phone number should be entered with +1xxxxxxxxxx format for a US number.
Your Account SID and Authentification Token are available in your Twilio Console.
Send To Phone Number should be entered with +1xxxxxxxxxx for a US number.
We created a watch list that select data points based on tags and its functioning exactly as we need, however, we have some usability problems with the way the CSV download file is created.
When we do CSV download separate value columns the column header is the XID which is not useful.
Also the time step of the data seems to change based on the duration of time data is selected for.
Our desired function would have to use tags to select data points. Then be able to download the data at high resolution and have the column header be DataPointName, or preferably DeviceName - DataPointName.
Any thoughts on how to get the CSV formatted like this would be great.
Thanks in advance.
Here is a solution to the iDrive problem. This involves using their newer Linux utility. Note, I am a Linux novice so there might be more efficient ways to do some of this.
- A SSH client such as PuTTY https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
- A SCP client such as WinSCP https://winscp.net/eng/index.php
Download the latest Linux scripts from iDrive, https://www.idrive.com/readme download the Linux scripts in the tutorial.
Extract the downloaded file on your Windows machine. You will see a directory called scripts which has all of the files. I renamed this directory from scripts to IDriveBackup so its more descriptive.
a. Host name is the IP address of the MangoES
b. Change file protocol to SCP
c. Change port number to 2222
d. Enter the SSH credentials
e. Click login and accept the key.
On the ‘right’ side of WinSCP navigate to /opt/Idrive_ARM
On the ‘left’ side of WinSCP navigate to where you extracted the download.
a. Click the ‘IDriveBackup’ and then click ‘Upload’
If you get a permissions error you need to change the permissions for the Idrive_ARM directory. If you’re unfamiliar with Linux the easier method is through the file management tool. You can access this by going to https://[mangoIPaddress]:10000
Select the Idrive_ARM folder then Edit -> Change Permissions.
Change permission to 0777.
‘IDriveBackup’ should now be in the MangoES.
You can close WinSCP.
- Now connect to MangoES using PuTTY on port 2222 with the SSH credentials.
- Navigate to the /opt/Idrive_ARM/IDriveBackup/
- Provide an appropriate permission (executable permission) to the scripts by running:
sudo chmod a+x *.pl
From here you can follow the tutorial on https://www.idrive.com/readme
The ‘backup’ location is the directory on your iDrive account that you want this device to be backed up to. We set this to Mangoxxxx where xxxx is the 4 digits of the particular mango device. There are steps in the tutorial to set the backup file set, this is where you set which directories to backup. This should be set to /opt/mango/
There is a utility to set the backup frequency as well.
I am connected to a data source that will randomly fault and when faulted it stops responding to Mango queries via Modbus TCP and during this time Mango will continue to log new data equal to the last response from the Modbus slave. Mango logs the modbus exception in the events.
How can i stop data logging until the modbus slave becomes active again?
Below you can see where the data flat lines.
@jared-wiltshire yes that example is exactly what i'd want.
do you have guidance on a tutorial for how i write my own custom component to implement this?
I followed the advice in this post to get two watch charts on the same page and the x-axis on both gets sets by the date bar on the header, and that works great.
The challenge now is if someone clicks and zooms/pans on chart 1 the x-axis on chart 2 stays set per the date bar. Is there a method to always have the x-axis be matched on both charts even when zooming with the click and drag feature?