Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

  • Horizontal split screens for the Dashboard Designer "Edit markup" page

    10
    0 Votes
    10 Posts
    4k Views
    MattFoxM
    Fair enough, each to their own. As I said, I've never really noticed it nor I guess had a need for it which is why I've never tried. @richard-mortimer said in Horizontal split screens for the Dashboard Designer "Edit markup" page: I gotta say, after an hour of using it, I was impressed ... Glad to hear you've found something that works for you.
  • Export alphanumeric point values

    5
    0 Votes
    5 Posts
    2k Views
    MattFoxM
    @jared-wiltshire said in Export alphanumeric point values: The CSV exported from AmCharts is not and will not be supported for importing point values into Mango. You can obviously manipulate it into a format that is supported but its not intended to be imported straight back in. I'm not talking about amcharts I'm talking about the old UI that allows you to export point values in excel or CSV format. @jared-wiltshire said in Export alphanumeric point values: would recommend using the watch list download button to export the point values. We are going to make a new point value import tool which supports these formats. At the moment there is not a tool to do so in our new UI which is quite a shortcoming. Yeah this is something I've been wanting since 3.2 I should have asked for it sooner.. Given what you are saying I think I'll get a directive written and will post it here should others want it.
  • Custom modules for Mango 2.8

    1
    0 Votes
    1 Posts
    849 Views
    No one has replied
  • Suggested additions to Excel reports page

    2
    0 Votes
    2 Posts
    1k Views
    phildunlapP
    Hi Ian, thanks for the wishes / suggestions! Can you provide an example of one such pattern? Mango won't complain about the repeat modulus being greater than the periods max value generally. Syntactically it makes sense, it just doesn't add anything. I did try saving with my day field set to "NOO" and got a validation popup and not redirected from the page. I change it to "SUN" (with day of month as ?) and it saves. Was not able to reproduce. The "Select cron pattern" section can be a bit strange. Only the resulting cron pattern input needs to be correct.
  • Google Cloud Big Query module for accessing/storing data

    11
    0 Votes
    11 Posts
    3k Views
    phildunlapP
    Certainly! There's a lot of meat missing from the bones! but if you are happy to discuss when you can I would be very grateful. Of course!
  • Alarming Categorization

    4
    0 Votes
    4 Posts
    2k Views
    J
    These Alarm categories are actually builtin in the BACnet Controller and I think it is practical to leave it in the controller and just influence the bits beside most of the control logic are locally defined in the controller. CraigWeb suggestion is logical, thanks
  • Alarm Handling in Graphic Designer

    2
    0 Votes
    2 Posts
    1k Views
    CraigWebC
    Hi @Joey-Uson Thats not such a bad Idea actually. Something you could do now though is add a <ma-events-table event-type="eventType" alarm-level="alarmLevel" acknowledged="acknowledged" event-id="eventId" active-status="activeStatus" limit="10" sort="'-alarmLevel'"></ma-events-table> To the bottom of the page.
  • Additional Scripts to alter the data source and network configuration

    3
    0 Votes
    3 Posts
    1k Views
    J
    @phildunlap Thanks for the explanation and scripts, I'll test on Sunday
  • Alarms for Datasource wide/template wide to apply to datapoints

    1
    0 Votes
    1 Posts
    738 Views
    No one has replied
  • HTTP/2

    5
    0 Votes
    5 Posts
    2k Views
    MattFoxM
    Good to know, thanks Jared, much appreciated.
  • Filter by device name in bulk editor

    2
    0 Votes
    2 Posts
    1k Views
    Jared WiltshireJ
    @CraigWeb its already possible, switch to the tags view, every deviceName is registered as a 'device' tag. [image: KvcXSEI.png] PS CSV import/export is being added to the bulk editor and will be available next week!
  • Filter Datapoint List Output

    6
    0 Votes
    6 Posts
    3k Views
    MattFoxM
    Excelllent, thanks Jared! Have a rep point :)
  • Adding a data source column to the primary data sources window

    7
    0 Votes
    7 Posts
    2k Views
    phildunlapP
    I just reread this, and I'm not sure i understood the question in the OP. On a reread, it sounds like this feature exists and should be unmissable: [image: 8oAYpUK.png]
  • Sorting the pages of the dropdown list within the dashboard designer

    3
    0 Votes
    3 Posts
    1k Views
    P
    @jared-wiltshire Thank-you
  • 0 Votes
    3 Posts
    2k Views
    W
    Thank you, Phillip. I will give this a try.
  • BACnet foreign device registration

    3
    0 Votes
    3 Posts
    2k Views
    W
    In my situation I am registering with a BBMD on another network. Without registering I am unable to reach devices on the remote network or perform a successful BACnet Discovery. Once registered, none of the issues exist (thanks to the script you provided). I have noticed that the registration will not survive a restart of the mango service so re-registration after start-up is a must (which should be covered by #1). In some situations where a registration can timeout, you might want the option to re-register every XX minutes.
  • Creating Persistent TCP Point Configuration Improvement

    1
    0 Votes
    1 Posts
    812 Views
    No one has replied
  • RESTful API to CRUD data source/data point/publisher

    7
    0 Votes
    7 Posts
    3k Views
    JoelHaggarJ
    This should also be supported in the current release. You can enable swagger to review the API: https://help.infiniteautomation.com/explore-the-api/
  • Scaling a data point

    4
    1 Votes
    4 Posts
    2k Views
    phildunlapP
    If done that way it would still appear as the rendered value in API queries and whatnot. A virtual point with two point links to and from the scaled point, with links like: unscaled to scaled: if(source.time <= target.time) return UNCHANGED; TIMESTAMP=source.time; return ((source.value/4095)*100).toFixed(0); scaled to unscaled: if(source.time <= target.time) return UNCHANGED; TIMESTAMP=source.time; return ((source.value/100)*4095).toFixed(0); Will permit you to set or display whichever point suits the purposes.
  • Enhance Reports by adding device vs. individual point selection

    4
    0 Votes
    4 Posts
    1k Views
    phildunlapP
    A better script, a tastier beer? import requests import json from StringIO import StringIO import copy #Script information, CONFIGURE reportXid = "Your Report XID" #Report XID to add points to removeExistingPoints = False #Remove the points that are already on the report addDataSources = ["DS_1234"] #list of data source xids to add additionalRQL = "limit(-1)" #use a high limit if not H2, or whatever limit is desired #Server information, CONFIGURE host = "192.168.1.111" port = "80" login = {"username": "admin", "password": "admin"} #Begin script.... hostPort = host + ":" + port s = requests.Session() s.headers.update({'Cookie':'MANGO'+port+'=initial; XSRF-TOKEN=init','X-Xsrf-Token':'init','Accept': 'application/json', 'Accept-Encoding': 'gzip', 'Content-Type': 'application/json;charset=UTF-8'}); r = s.post('http://' + hostPort + "/rest/v2/login", data=json.dumps(login)) #del s.headers["Content-Type"] del s.headers["Cookie"] s.headers["X-Xsrf-Token"] = s.cookies["XSRF-TOKEN"] #get the report's JSON: reportsResponse = s.get('http://' + hostPort + "/rest/v2/json-emport?exportElements=reports") #print reportsResponse.text reportsList = json.load( StringIO( reportsResponse.text ))["reports"] report = None for rpt in reportsList : if rpt["xid"] == reportXid : report = rpt break if report is None : print "Couldn't find report with xid: " + reportXid exit() if removeExistingPoints : report.points = [] baseReportPoint = { "pointXid":"", "colour":"", "consolidatedChart":True, "plotType":1, "pointKey":"p", "weight":1.0 } if len(addDataSources) > 0 : dataPointsRql = "or(" for dsXid in addDataSources : dataPointsRql += "eq(dataSourceXid," + dsXid + ")," dataPointsRql = dataPointsRql[:-1] + ")&" + additionalRQL else : dataPointsRql = additionalRQL #print dataPointsRql def pointInReport(reportPoints, point) : for pnt in reportPoints : if pnt["pointXid"] == point["xid"] : return True return False pointsResponse = s.get("http://" + hostPort + "/rest/v2/data-points?" + dataPointsRql) #print pointsResponse.text pointsList = json.load( StringIO( pointsResponse.text ))["items"] for pnt in pointsList : #You may wish to configure the report points here as well if not pointInReport(report["points"], pnt) : newReportPoint = copy.deepcopy(baseReportPoint) newReportPoint["pointXid"] = pnt["xid"] newReportPoint["pointKey"] += str(pnt["id"]) report["points"].append(newReportPoint) #print "Added point: " + pnt["xid"] #Save the modified report through the json-emport saveResponse = s.post("http://" + hostPort + "/rest/v2/json-emport", data=json.dumps({"reports":[report]})) print "Saving report returned status: ", saveResponse You probably need to change my print statements if you're using Python 3. Edit: Fixed up the multiple data source possibility some