def update(client, element, name, mac, **kwargs): """Updates the attributes of a element. Updates the attributes of a given ELEMENT. """ element = Element.lookup(client, element, mac=mac) element = element.update(name=name) include = [Sensor] element = Element.lookup(client, element.id, mac=mac, include=include) Element.display(client, [element], include=include)
def update(client, element, name, mac, **kwargs): """Updates the attributes of a element. Updates the attributes of a given ELEMENT. """ element = Element.lookup(client, element, mac=mac) element = element.update(attributes={ 'name': name }) include = [Sensor] element = Element.lookup(client, element.id, mac=mac, include=include) Element.display(client, [element], include=include)
def create(ctx, name, sensors, elements): """Create a label. Creates a label with a given NAME and an (optional) list of sensors and elements associated with that label. """ client = ctx.find_object(Client) sensors = sensors or [] if sensors: all_sensors = Sensor.all(client) sensors = [ Sensor.lookup(client, id, resources=all_sensors) for id in sensors ] elements = elements or [] if elements: all_elements = Element.all(client) elements = [ Element.lookup(client, id, resources=all_elements) for id in elements ] label = Label.create(client, attributes={'name': name}) if sensors: label.update_sensors(sensors) if elements: label.update_elements(elements) label = Label.find(client, label.id, include=label_includes) Label.display(client, [label], include=label_includes)
def sensor(client, element, mac, **kwargs): """Get the sensors for an element. Gets the sensors last known to be connected to a given ELEMENT. """ element = Element.lookup(client, element, mac=mac, include=[Sensor]) sensors = element.sensors(use_included=True) Sensor.display(client, sensors, **kwargs)
def list(client, element, mac, **kwargs): """List elements. Lists information for a given ELEMENT or all elements in the organization. """ include = [Sensor] if element: elements = [Element.lookup(client, element, mac=mac, include=include)] else: elements = Element.all(client, include=include) Element.display(client, elements, include=include)
def list(client, element, mac, **kwargs): """List elements. Lists information for a given ELEMENT or all elements in the organization. """ include = [Sensor] if element: elements = [Element.lookup(client, element, mac=mac, include=include)] else: metadata = kwargs.get('metadata') or None elements = Element.where(client, include=include, metadata=metadata) Element.display(client, elements, include=include)