Example #1
0
    def getSchedule(self, schedule=None, getDom=False):
        if schedule is None:
            schedule = Schedule()
        days = [i for i in range(7)]

        # build command-xml ...
        doc, cmdElem = self._getXML('get')
        schedElem = doc.createElement("SCHEDULE")
        cmdElem.appendChild(schedElem)

        if not getDom:  # return full information
            for d in days:
                dayElem = doc.createElement("Device.System.Power.Schedule." + str(d))
                schedElem.appendChild(dayElem)

        # ... post and parse the result
        dom = self._postCmd(doc)
        if getDom:
            return dom

        tags = dom.getElementsByTagName("SCHEDULE")[0].childNodes
        for tag in tags:
            name = tag.tagName
            if name.find('List') > 0:
                continue
            day = name.split('.')[-1]
            value = tag.firstChild.nodeValue
            schedule.fromTransport(value, int(day))
        return schedule