Home AMX User Forum AMX Resource Management Suite Software

RMS device info - updating at runtime?

G'day all,

The scenario is 250+ projectors being monitored via RMS. All projectors are of the same make (Epson in this case) and are controlled by the same module and program. However, the model can be one of four different models, each with their own lamp part number. (Projector models become "out of fashion" before before they reach the end of their first lamp.)

I regularly push out a uniform application, where it works regardless of the vintage of the projector. Also, our techs do not always have an exact model available when a replacement is required. One of the other models will often suffice. However I want to avoid manual updating of RMS since this can often:
1) Be forgotten by busy techs who are already run off their feet.
2) Lead to clerical errors, which become lamp-ordering errors.

Assuming that my module can determine the projector model at run-time, how can I update the device info in RMS programatically? I don't want to add a custom parameter for the "real" model, since this won't show up in lamp hour reports.

I'm currently using RMS v3.2. I can't see the Programmer docs for v3.3 since I have to overwrite my SDK, which I don't want to do until I have upgraded the RMS server.

Roger McLean
Swinburne University

Comments

  • Update to device info

    There are two ways to update the device info, through the web application and Online event for the RMS Engine.

    // Display
    RMSSetDeviceInfo(dvProj_1,'Display','Display Manufacturer','Display Model')
    RMSSetCommunicationTimeout(dvProj_1,0)

    If you make the display info a variable, you could in theory change it then reboot the master without recompiling. You would have to delete the projector in the room first as the data persists in the application by design.
  • G'day Doug,

    Darn - That still involves manual editing of RMS. If we could programatically delete devices then I could still automate the whole process. I suppose that may present some security risks though, which is why I was hoping to be able to only update the existing device rather than deleting it.

    Looks like I will have to keep the model generic and have the "real" model as a custom parameter. Lamp reports won't be quite as useful since we'll have to drill into each projector to find it's actual model. Pitty...

    Roger McLean
    Swinburne University
  • PhreaKPhreaK Posts: 966
    Hi Roger,

    Any further advancement on this?

    Cheers.
  • Hi Roger,

    You have brought up an interesting use case, the need to programatically UPDATE the device information.

    The command:
    RMSSetDeviceInfo(dvProj_1,'Display','Display Manufacturer','Display Model')

    will only register the device and it's information if not already known by the RMS server. Once the device is registered, these fields are not updated. This was an intentional design caveat as we did not want to potentially overwrite any manual changes that a user performed via the web pages. However, in the case you present, you do want to override the existing device information from the control system program. So to achieve this goal, you would need some form of an UPDATE command or an optional flag on the "RMSSetDeviceInfo" to force the update of the device information.

    While there is no immediate solution to meet your goal, we will add this use case for addition in a future version of the SDK so that this type of functionality can be supported as we move forward.

    Thank You,
    Robert
  • Robert,

    Are you saying that, if he registers the projector with Model X initially when the room is brought online but has to replace the projector with Model Y six months later, that RMS won't be able to change the model, unless he manually deletes the old unit from RMS and then reboots Netlinx (with the new model defined) to then register the new model?

    If I understand what you stated, the deleting of the old model must be done manually, in the current implementation of RMS. Is this correct?

    Just trying to see how this will fit with a different implementation.

    Thank you.
    Sheldon Samuels
  • ipssheldon wrote: »
    Robert,

    Are you saying that, if he registers the projector with Model X initially when the room is brought online but has to replace the projector with Model Y six months later, that RMS won't be able to change the model, unless he manually deletes the old unit from RMS and then reboots Netlinx (with the new model defined) to then register the new model?

    ...

    Thank you.
    Sheldon Samuels

    Hi Sheldon,

    Yes, that is the current implementation of that SDK command. To achieve the results of updated device information programatically, the device must first be deleted using the web user interface and then the NetLinx master will re-register the device information on the next reboot or device online event.

    This is not a practical solution since deleting the device will delete all device history a reporting information. And if you are already manually accessing the web UI to delete the device, why not just change the manufacturer and model information there, that is typically the way it is done.

    So RMS will need to add a provision to accommodate a programatic update of device information for post device registration updates.

    Thanks, Robert
  • PhreaKPhreaK Posts: 966
    Hi Robert,

    If this could be implimented it would be incredibly useful. We are currently in the process of prototyping adaptive systems that will allow us to maintain and develop a single code base for our AMX deployment, as well as allowing us (and our end users) to add and remove devices such as axuillary displays at runtime. Obviously this requires us to have the ability to update device details programmatically to ensure integrity of our RMS database.

    Additionally if there was a method for updating other currently web only fields such us facility phone numbers, prestige levels, and web control URL's (so that they can be programmaticlly remapped to the TP web based VNC, or custom web interfaces) that would greatly improve RMS's functionality in ours and similar deployments.

    Thanks for taking the time to discuss this and for conisdering the feature for future implimentation.
  • Hi Kim,

    Thank you for your response and illustrating your goals and needs. Examples like these can help us better understand where we can improve the product to better serve you.
  • PhreaKPhreaK Posts: 966
    ...improve the product to better serve you.

    Can it also 'love me long time'.
  • ericmedleyericmedley Posts: 4,177
    PhreaK wrote: »
    Can it also 'love me long time'.
    :D ___________
  • How to report/change serial number also from code?

    Changing the device manufacturer, model and type at runtime would really be a good idea. I also was asked about this feature in the past already.
    This will get more important with the use of Device Discovery and dynamic module loading.

    As an addition, I would suggest to also be able to report the Serial Number of the device to RMS. Currently there is no way (= command) to forward this to the RMS server from the NetLinx Code / SDK.
    This would be very helpful to keep an up to date inventory list on RMS. For the "Control System Inventory" report, which shows all AMX equipment, RMS collects the serial numbers automatically.
    The "Device Inventory" report, for third party device, the SN also shows up but to my knowledge you have to set the SN manually on the RMS web interface, there is no command to set this from code. I guess this would be worth a feature request...

    -- Harald
  • Metadata input for RMS

    Hi Harald,
    Excellent request which would be better applied to all metadata fields. We will keep this in mind for future design.
    Thanks,
    Doug
  • annuelloannuello Posts: 294
    Doug Hall wrote: »
    Hi Harald,
    Excellent request which would be better applied to all metadata fields. We will keep this in mind for future design.
    Thanks,
    Doug

    Thanks for listening Doug.

    With my "mixed fleet" of projectors I'm now able to determine the model at runtime, based upon what commands the projector will respond to. Now that I have this runtime info I'll also be wanting to change the lamp threshold in RMS based on the projector model. As an example, our mix of 4 Epson projectors (EMP-821, EMP-822, EMP-1810 & EMP-400) all have different lamp life expectancies (2000hrs, 3000, 2400 & 2900 respectively).

    I'm looking forward to RMS v4 already!

    Roger McLean
    Swinburne University
Sign In or Register to comment.