Skip to main content

Python3 API for the Bticino Myhomeserver1 gateway

Project description

brownpaperbag

PyPI - version CodeFactor codecov

But you try and tell the young people today that...

installation

pip install brownpaperbag

Configuration

You need to use the official app, and to be logged with the installer code

You'll need the open password: From the app, you can set it on Other>System. You'll also need your gateway's IP: Again from the app, you can find it in Other>Network

So if your ip is 192.168.1.10 and your password is qwerty:

export BPB_HOST=192.168.1.10
export BPB_PASSWORD=qwerty
export BPB_PORT=20000

Commands

brownpaperbag --help
Usage: brownpaperbag [OPTIONS] COMMAND [ARGS]...

  Console script for brownpaperbag.

  Provides interaction with myhomeserver1

Options:
  --host TEXT      MyHomeServer1 IP
  --port INTEGER   MyHomeServer1 port
  --password TEXT  OPEN password
  -v, --verbose    Verbose mode, can be used twice
  --help           Show this message and exit.

Commands:
  cover  Interact with a cover.
  event  Subscribe to gateway events.
  light  Interact with a light.
  list   List known devices.
  raw    Send raw openwebnet command.

Cover interaction

Usage: brownpaperbag cover [OPTIONS] COVER_ID

  Interact with a cover.

Options:
  --status  Get status
  --up      Open
  --down    Close
  --stop    Stop
  --help    Show this message and exit.

Listen to events

Usage: brownpaperbag event [OPTIONS]

  Subscribe to gateway events.

Options:
  --human  Human readable
  --help   Show this message and exit.

Light interaction

Usage: brownpaperbag light [OPTIONS] ID

  Interact with a light.

Options:
  --status  Get status
  --on      Turn On
  --off     Turn Off
  --help    Show this message and exit.

List every devices

Usage: brownpaperbag list [OPTIONS]

  List known devices.

Options:
  --lights / --no-lights  Include lights
  --covers / --no-covers  Include covers
  --help                  Show this message and exit.

Send raw command

Usage: brownpaperbag raw [OPTIONS] COMMAND

  Send raw openwebnet command.

Options:
  --help  Show this message and exit.

Help & tricks

Discovering devices

the command brownpaperbag event --human can help you to identify devices

$ brownpaperbag event --human
light 15 is OFF (*1*0*15##)
light 11 is OFF (*1*0*11##)
light 0010 is OFF (*1*0*0010##)
light 0011 is OFF (*1*0*0011##)
light 0012 is OFF (*1*0*0012##)
light 02 is OFF (*1*0*02##)
light 0014 is OFF (*1*0*0014##)
light 0111 is OFF (*1*0*0111##)
light 04 is OFF (*1*0*04##)
light 19 is OFF (*1*0*19##)
light 01 is OFF (*1*0*01##)
light 09 is OFF (*1*0*09##)
cover 07 is STOPPED (*2*0*07##)
cover 0113 is STOPPED (*2*0*0113##)
cover 13 is STOPPED (*2*0*13##)
cover 17 is STOPPED (*2*0*17##)
cover 16 is STOPPED (*2*0*16##)
cover 06 is STOPPED (*2*0*06##)
cover 08 is STOPPED (*2*0*08##)
cover 06 is UP (*2*1000#1*06##)
cover 06 is STOPPED (*2*1000#0*06##)
cover 06 is DOWN (*2*1000#2*06##)
cover 06 is STOPPED (*2*1000#0*06##)
light 0111 is ON (*1*1*0111##)
light 0111 is OFF (*1*0*0111##)
light 0111 is ON (*1*1*0111##)
light 0111 is OFF (*1*0*0111##)
cover 06 is DOWN (*2*1000#2*06##)
cover 06 is STOPPED (*2*1000#0*06##)
cover 06 is UP (*2*1000#1*06##)
cover 06 is STOPPED (*2*0*06##)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for brownpaperbag, version 2.0.4
Filename, size File type Python version Upload date Hashes
Filename, size brownpaperbag-2.0.4-py3-none-any.whl (8.8 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size brownpaperbag-2.0.4.tar.gz (8.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page