Premise New Devices

  • Thread starter Thread starter chucklyons
  • Start date Start date
Motorola Premise
C

chucklyons

Guest
I've been coached by my mentors that I need to consider Ab in my individual device development. I have only focused on the MiniBrowser, as I think it moves across the non-IE platforms well.

I have a Tivo module. Workswell on MiniBrowser, but when I do AB, I am not able to add any other device to a Media Zone. I created two versions of Tivo. 1) Using the PVR base - it brings up the PVR base Selectors and Controls. 2) I created a new Tivo class, but it doesn't come up as an option for components to add to a MediaZone.

Any ideas on how to get a 'custom' device available for adding to a MediaZone? Or do I have to wait until it's Open Sourced?
 
Your Tivo class must inherit from Schema > Device > AudioVideo > AV_Component. A MediaZone will automatically list all classes that inherit from AV_Component.

Here's how I know this:
  1. Select a MediaZone in your Premise Home and look at the Property pane.
  2. Find the Type property, its value will be "MediaZone", and double-click the value.
  3. The Explorer pane will display the MediaZone class.
  4. The Content pane will show all relationships with other classes.
  5. Click AV_Component and look at the Property pane.
  6. You'll see that MediaZone has an Object Containment relationship with AV_Component. That means it contains anything that inherits from AV_Component.
If you repeat the first four steps for a Television object, it reveals that Television inherits from AV_Component. The same holds true for PVR, CableBox, etc. If you make your Tivo class inherit from AV_Component, MediaZone will automatically list it.


Behold the elegance and power of an object-oriented architecture! ^_^
 

Attachments

  • MediaZone.png
    MediaZone.png
    8.6 KB · Views: 0
  • Television.png
    Television.png
    8.9 KB · Views: 0
Here's where I am challenged..I can create the Tivo, using the PVR base. No problem there. AV_Component. No problem. It now shows up in the options for mediaZone. What i haven't been able to figure out is what creates the device connection to allow it to become a 'bound object'
 
Does your Tivo class inherit from the BindingSource class?

Schema > System > BindingSource

Examine the image of the Television class in the previous post. You'll find it inherits from eleven other classes and one of them is BindingSource.
 
I think if I understand the question correctly, you need to inherit from sys://Schema/Device/AudioVideoOutput in order to add it as an input source to a switch, receiver, etc...

EDIT: I think you're asking about the boundObject property. What 123 said is right. Your home object's defining class needs to inherit from sys://Schema/System/BindingSource and your device object's defining class needs to inherit from: sys://Schema/System/BindingTarget

If you want the properties to "automatically bind" you need to create a base class with all of the properties you want to automatically bind, then the home and device object each inherit from the base class. These auto binding properties are not limited to a single base class. You can have more than one shared property class and typically do. sys://Schema/Device/Power is a good example. Most home objects are instances that inherit from Power as are most Device objects.
 
Back
Top