示例#1
0
import logging

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("cloud")


def __init__(opts):
    client.init(opts)


def help():
    """
    Shows this help information.
    """

    return __salt__["sys.doc"]("cloud.*")


def cache(cmd, *args, **kwargs):
    """
    Queries/calls a given cache function.
    """

    kwargs["_handler"] = "cache"

    return client.send_sync(_msg_pack(cmd, *args, **kwargs))

示例#2
0
import salt.exceptions

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack


# Define the module's virtual name
__virtualname__ = "stn"

UART_WAKE_RULE_PATTERN = "^(?P<min_us>[0-9]+)-(?P<max_us>[0-9]+) us$"
UART_SLEEP_RULE_PATTERN = "^(?P<sec>[0-9]+) s$"
VOLT_LEVEL_RULE_PATTERN = "^(?P<volts>[\<\>][0-9]{1,2}\.[0-9]{1,2})V FOR (?P<sec>[0-9]+) s$"
VOLT_CHANGE_RULE_PATTERN = "^(?P<volts_diff>[+-]?[0-9]{1}\.[0-9]{1,2})V IN (?P<ms>[0-9]+) ms$"

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("obd")


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def _parse_rule(value, pattern):
    match = re.match(pattern, value)
    if not match:
        raise salt.exceptions.CommandExecutionError(
            "Failed to parse rule: {:s}".format(value))
示例#3
0
import logging

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack

__virtualname__ = "reactor"

log = logging.getLogger(__name__)

client = EventDrivenMessageClient(__virtualname__)


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def help():
    """
    Shows this help information.
    """

    return __salt__["sys.doc"](__virtualname__)


def context(**kwargs):
    """
    Queries or manipulates context of event reactor.
    """
示例#4
0
import logging

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack

__virtualname__ = "acc"

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("acc")


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def help():
    """
    Shows this help information.
    """

    return __salt__["sys.doc"](__virtualname__)


def query(cmd, *args, **kwargs):
    """
    Queries a given accelerometer command.
示例#5
0
import datetime
import decimal
import logging
import nmea_util
import os
import pynmea2

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack
from pynmea2 import nmea_utils


log = logging.getLogger(__name__)

client = EventDrivenMessageClient("ec2x")


def __init__(opts):
    client.init(opts)


# TODO: Move to _utils/parsing.py?
def _parse_dict(data, separator=": ", multiline=False):
    ret = {}

    lines = data if isinstance(data, list) else [data]
    pairs = (l.split(separator) for l in lines)
    for k, v in pairs:
        if k in ret:
            if isinstance(ret[k], list):
                ret[k].append(v)
            else:
示例#6
0
import logging
import salt.exceptions

from messaging import EventDrivenMessageClient, msg_pack

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("audio")


def __init__(opts):
    client.init(opts)


def help():
    """
    This command.
    """

    return __salt__["sys.doc"]("audio")


def play(audio_file, force=False, loops=0, volume=None):
    """
    Plays a specific audio file. 

    Args:
        audio_file (str): 
        force (bool): 
        loops (int): 
        volume (int): 
示例#7
0
import logging
import salt.exceptions

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack


log = logging.getLogger(__name__)

client = EventDrivenMessageClient("spm")


def __init__(opts):
    client.init(opts)


def help():
    """
    Shows this help information.
    """

    return __salt__["sys.doc"]("spm")


def query(cmd, *args, **kwargs):
    """
    Queries a given SPM command.

    Arguments:
      - cmd (str): The SPM command to query.
    """
示例#8
0
INTERRUPT_PINS = {
    mma8x5x.INT1: "int1",
    mma8x5x.INT2: "int2",
}

WAKE_SOURCES = {
    mma8x5x.CTRL_REG3_WAKE_FF_MT: "motion",
    mma8x5x.CTRL_REG3_WAKE_PULSE: "pulse",
    mma8x5x.CTRL_REG3_WAKE_LNDPRT: "orientation",
    mma8x5x.CTRL_REG3_WAKE_TRANS: "transient",
}

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("mma8x5x")


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def _key_by_val(dict, val):
    kv = {k: v for k, v in dict.items() if v.lower() == val.lower()}
    return next(iter(kv))

示例#9
0
import logging

from messaging import EventDrivenMessageClient, msg_pack

__virtualname__ = "obd"

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("elm327")


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def help():
    """
    This command.
    """

    return __salt__["sys.doc"](__virtualname__)


def query(cmd,
          mode=None,
          pid=None,
          bytes=None,
示例#10
0
import logging

from messaging import EventDrivenMessageClient, msg_pack as _msg_pack


__virtualname__ = "keyfob"

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("key_fob")


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def help():
    """
    Shows this help information.
    """

    return __salt__["sys.doc"](__virtualname__)


def context(**kwargs):
    """
    Gets current context.
示例#11
0
import logging

from messaging import EventDrivenMessageClient, msg_pack

__virtualname__ = "tracking"

log = logging.getLogger(__name__)

client = EventDrivenMessageClient("tracking")


def __virtual__():
    return __virtualname__


def __init__(opts):
    client.init(opts)


def help():
    """
    This command.
    """

    return __salt__["sys.doc"](__virtualname__)


def status(**kwargs):
    """
    Get current status.
    """