예제 #1
0
def setup(hass, config):
    """Use config values to set up a function enabling status retrieval."""
    conf = config[DOMAIN]
    username = conf.get(CONF_USERNAME)
    password = conf.get(CONF_PASSWORD)
    name = conf.get(CONF_NAME)
    driver = conf.get(CONF_DRIVER)

    import myusps
    try:
        cookie = hass.config.path(COOKIE)
        cache = hass.config.path(CACHE)
        session = myusps.get_session(username, password,
                                     cookie_path=cookie, cache_path=cache,
                                     driver=driver)
    except myusps.USPSError:
        _LOGGER.exception('Could not connect to My USPS')
        return False

    hass.data[DATA_USPS] = USPSData(session, name)

    for component in USPS_TYPE:
        discovery.load_platform(hass, component, DOMAIN, {}, config)

    return True
예제 #2
0
def setup(hass, config):
    """Use config values to set up a function enabling status retrieval."""
    conf = config[DOMAIN]
    username = conf.get(CONF_USERNAME)
    password = conf.get(CONF_PASSWORD)
    name = conf.get(CONF_NAME)
    driver = conf.get(CONF_DRIVER)

    import myusps
    try:
        cookie = hass.config.path(COOKIE)
        cache = hass.config.path(CACHE)
        session = myusps.get_session(username,
                                     password,
                                     cookie_path=cookie,
                                     cache_path=cache,
                                     driver=driver)
    except myusps.USPSError:
        _LOGGER.exception('Could not connect to My USPS')
        return False

    hass.data[DATA_USPS] = USPSData(session, name)

    for component in USPS_TYPE:
        discovery.load_platform(hass, component, DOMAIN, {}, config)

    return True
예제 #3
0
def setup(hass, config):
    """Use config values to set up a function enabling status retrieval."""
    _LOGGER.warning(
        "The usps integration is deprecated and will be removed "
        "in Home Assistant 0.100.0. For more information see ADR-0004:"
        "https://github.com/home-assistant/architecture/blob/master/adr/0004-webscraping.md"
    )

    conf = config[DOMAIN]
    username = conf.get(CONF_USERNAME)
    password = conf.get(CONF_PASSWORD)
    name = conf.get(CONF_NAME)
    driver = conf.get(CONF_DRIVER)

    import myusps

    try:
        cookie = hass.config.path(COOKIE)
        cache = hass.config.path(CACHE)
        session = myusps.get_session(username,
                                     password,
                                     cookie_path=cookie,
                                     cache_path=cache,
                                     driver=driver)
    except myusps.USPSError:
        _LOGGER.exception("Could not connect to My USPS")
        return False

    hass.data[DATA_USPS] = USPSData(session, name)

    for component in USPS_TYPE:
        discovery.load_platform(hass, component, DOMAIN, {}, config)

    return True
예제 #4
0
파일: usps.py 프로젝트: masomel/py-iot-apps
def setup_platform(hass, config, add_devices, discovery_info=None):
    """Setup the USPS platform."""
    import myusps
    try:
        session = myusps.get_session(config.get(CONF_USERNAME),
                                     config.get(CONF_PASSWORD))
    except myusps.USPSError:
        _LOGGER.exception('Could not connect to My USPS')
        return False

    add_devices([USPSSensor(session, config.get(CONF_UPDATE_INTERVAL))])
예제 #5
0
def setup_platform(hass, config, add_devices, discovery_info=None):
    """Setup the USPS platform."""
    import myusps

    try:
        session = myusps.get_session(config.get(CONF_USERNAME), config.get(CONF_PASSWORD))
    except myusps.USPSError:
        _LOGGER.exception("Could not connect to My USPS")
        return False

    add_devices([USPSSensor(session, config.get(CONF_UPDATE_INTERVAL))])
예제 #6
0
def setup_platform(hass, config, add_devices, discovery_info=None):
    """Setup the USPS platform."""
    import myusps
    try:
        cookie = hass.config.path(COOKIE)
        session = myusps.get_session(
            config.get(CONF_USERNAME), config.get(CONF_PASSWORD),
            cookie_path=cookie)
    except myusps.USPSError:
        _LOGGER.exception('Could not connect to My USPS')
        return False

    add_devices([USPSPackageSensor(session, config.get(CONF_NAME)),
                 USPSMailSensor(session, config.get(CONF_NAME))], True)
예제 #7
0
def setup_platform(hass, config, add_devices, discovery_info=None):
    """Setup the USPS platform."""
    import myusps
    try:
        cookie = hass.config.path(COOKIE)
        session = myusps.get_session(config.get(CONF_USERNAME),
                                     config.get(CONF_PASSWORD),
                                     cookie_path=cookie)
    except myusps.USPSError:
        _LOGGER.exception('Could not connect to My USPS')
        return False

    add_devices([
        USPSPackageSensor(session, config.get(CONF_NAME)),
        USPSMailSensor(session, config.get(CONF_NAME))
    ], True)
예제 #8
0
imgur_client_secret = "fe1128d77d7ea9d8d9d78805ffb943bbf63d82a2"

try:
    client = ImgurClient(imgur_client_id, imgur_client_secret)
except:
    print("Imgur is down, mail images will not show up")
    pass

# Establish a session.
username = os.environ.get('usps_username')
password = os.environ.get('usps_password')

# Use the login credentials you use to login to My USPS via the web.
# A login failure raises a `USPSError`.
# Using the Firefox driver here for selenium as it appears to be the most stable one at the moment.
session = myusps.get_session(username, password, driver='firefox')

# Get all packages that My UPS knows about.
packages = myusps.get_packages(session)

#Check for packages that haven't been delivered yet
upcoming_packages = 0
for p in packages:
    tracking_number = p['tracking_number']
    delivery_date = p['delivery_date']
    primary_status = p['primary_status']
    #Skip delivered package
    if primary_status == "Delivered":
        continue
    upcoming_packages += 1