Skip to main content

Async Python client for Nanit baby cameras

Project description

aionanit

Async Python client library for Nanit baby cameras.

Features

  • Authentication: Email/password login, MFA verification, automatic token refresh.
  • WebSocket: Protobuf-over-WebSocket communication with cameras (cloud and local).
  • REST API: Baby metadata, cloud events, snapshots.
  • Streaming: RTMPS URL construction for live video.
  • Push-based: Subscribe to real-time camera state changes (sensors, settings, controls).

Installation

pip install aionanit

Quick Start

import aiohttp
from aionanit import NanitClient

async with aiohttp.ClientSession() as session:
    client = NanitClient(session)

    # Login
    tokens = await client.async_login("you@example.com", "password")

    # Get babies
    babies = await client.async_get_babies()
    baby = babies[0]

    # Connect to camera
    camera = client.camera(baby.camera_uid, baby.uid)
    await camera.async_start()

    # Subscribe to state changes
    def on_event(event):
        print(f"Sensors: {event.state.sensors}")

    unsub = camera.subscribe(on_event)

    # Get RTMPS stream URL
    url = await camera.async_get_stream_rtmps_url()
    print(f"Stream: {url}")

    # Cleanup
    unsub()
    await client.async_close()

Requirements

  • Python 3.12+
  • aiohttp >= 3.9.0
  • protobuf >= 6.0

License

MIT

Project details


Download files

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

Source Distribution

aionanit-1.3.0.tar.gz (39.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aionanit-1.3.0-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file aionanit-1.3.0.tar.gz.

File metadata

  • Download URL: aionanit-1.3.0.tar.gz
  • Upload date:
  • Size: 39.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for aionanit-1.3.0.tar.gz
Algorithm Hash digest
SHA256 936c9ab78f1fd1251020e557faa9d7262207fa21fa4c028a7b378af94b788c00
MD5 673a485cc4988b879f552aa1ea7b4e34
BLAKE2b-256 2c93958db69665cae63aadfef558391dd9098f794584962e460552b7884c0e9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for aionanit-1.3.0.tar.gz:

Publisher: publish-aionanit.yaml on wealthystudent/ha-nanit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aionanit-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: aionanit-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 28.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for aionanit-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bdd41dd47da1e4bfe4f2fb3d005c951db234847fc74d6ad634e9d5e9e4561202
MD5 65ecd242f462a8bfd7c9caad4da11fdb
BLAKE2b-256 507fb85e8e9b9f9f0b0d9cb09169e0cd56c7941038038070fb1504764819edb1

See more details on using hashes here.

Provenance

The following attestation bundles were made for aionanit-1.3.0-py3-none-any.whl:

Publisher: publish-aionanit.yaml on wealthystudent/ha-nanit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page