Skip to main content

Reolink Camera API client written in Python 3

Project description

Reolink Python Api Client

Reolink Approval GitHub GitHub tag (latest SemVer) PyPI Discord


A Reolink Camera client written in Python. This repository's purpose (with Reolink's full support) is to deliver a complete API for the Reolink Cameras, although they have a basic API document - it does not satisfy the need for extensive camera communication.

Check out our documentation for more information on how to use the software at https://reolink.oleaintueri.com

Other Supported Languages:

Join us on Discord

https://discord.gg/8z3fdAmZJP

Sponsorship

Oleaintueri is sponsoring the development and maintenance of these projects within their organisation.


Get started

Implement a "Camera" object by passing it an IP address, Username and Password. By instantiating the object, it will try retrieve a login token from the Reolink Camera. This token is necessary to interact with the Camera using other commands.

See the examples directory.

Using the library as a Python Module

Install the package via PyPi

pip install reolinkapi

Install from GitHub

pip install git+https://github.com/ReolinkCameraAPI/reolinkapipy.git

If you want to include the video streaming functionality you need to include the streaming "extra" dependencies

pip install 'reolinkapi[streaming]'

Contributors


Styling and Standards

This project intends to stick with PEP8

How can I become a contributor?

Step 1

Get the Restful API calls by looking through the HTTP Requests made in the camera's web UI. I use Google Chrome developer mode (ctr + shift + i) -> Network.

Step 2

  • Fork the repository
  • pip install -r requirements.txt
  • Make your changes

Step 3

Make a pull request.

API Requests Implementation Plan:

Stream:

  • Blocking RTSP stream
  • Non-Blocking RTSP stream

GET:

  • Login
  • Logout
  • Display -> OSD
  • Recording -> Encode (Clear and Fluent Stream)
  • Recording -> Advance (Scheduling)
  • Network -> General
  • Network -> Advanced
  • Network -> DDNS
  • Network -> NTP
  • Network -> E-mail
  • Network -> FTP
  • Network -> Push
  • Network -> WIFI
  • Alarm -> Motion
  • System -> General
  • System -> DST
  • System -> Information
  • System -> Maintenance
  • System -> Performance
  • System -> Reboot
  • User -> Online User
  • User -> Add User
  • User -> Manage User
  • Device -> HDD/SD Card
  • PTZ -> Presets, Calibration Status
  • Zoom
  • Focus
  • Image (Brightness, Contrast, Saturation, Hue, Sharp, Mirror, Rotate)
  • Advanced Image (Anti-flicker, Exposure, White Balance, DayNight, Backlight, LED light, 3D-NR)
  • Image Data -> "Snap" Frame from Video Stream

SET:

  • Display -> OSD
  • Recording -> Encode (Clear and Fluent Stream)
  • Recording -> Advance (Scheduling)
  • Network -> General
  • Network -> Advanced
  • Network -> DDNS
  • Network -> NTP
  • Network -> E-mail
  • Network -> FTP
  • Network -> Push
  • Network -> WIFI
  • Alarm -> Motion
  • System -> General
  • System -> DST
  • System -> Reboot
  • User -> Online User
  • User -> Add User
  • User -> Manage User
  • Device -> HDD/SD Card (Format)
  • PTZ (including calibrate)
  • Zoom
  • Focus
  • Image (Brightness, Contrast, Saturation, Hue, Sharp, Mirror, Rotate)
  • Advanced Image (Anti-flicker, Exposure, White Balance, DayNight, Backlight, LED light, 3D-NR)

Supported Cameras

Any Reolink camera that has a web UI should work. The other's requiring special Reolink clients do not work and is not supported here.

  • RLC-411WS
  • RLC-423
  • RLC-420-5MP
  • RLC-410-5MP
  • RLC-510A
  • RLC-520
  • C1-Pro
  • D400
  • E1 Zoom

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

reolinkapi-0.3.0.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

reolinkapi-0.3.0-py3-none-any.whl (34.2 kB view details)

Uploaded Python 3

File details

Details for the file reolinkapi-0.3.0.tar.gz.

File metadata

  • Download URL: reolinkapi-0.3.0.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for reolinkapi-0.3.0.tar.gz
Algorithm Hash digest
SHA256 1c0f7d6c2076ba336a3e85ea00a2ce97fd86332bd84a80e09f5375f27ea77a06
MD5 c61b3af4777a013c00879bb131159651
BLAKE2b-256 e48a93e444fb7a56e7e12b7202d6ecca6040f594d21e84142ab91039d7ff77ad

See more details on using hashes here.

File details

Details for the file reolinkapi-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: reolinkapi-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 34.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for reolinkapi-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 350de9782a114d085ffddc13aac4674db187f65500724f19491dfee30a57b70c
MD5 e79244a8c9bef709c97c5346b5c7c57d
BLAKE2b-256 b6908a9f386e64b8a1dea5ea876a047344f8a4ca20b6c5dd311566726c9078cc

See more details on using hashes here.

Supported by

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