{ "info": { "author": "Marcelo Moreira de Mello", "author_email": "tchello.mello@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Other Environment", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Python Arlo\n-----------\n\n.. image:: https://badge.fury.io/py/pyarlo.svg\n :target: https://badge.fury.io/py/pyarlo\n\n.. image:: https://travis-ci.org/tchellomello/python-arlo.svg?branch=master\n :target: https://travis-ci.org/tchellomello/python-arlo\n\n.. image:: https://coveralls.io/repos/github/tchellomello/python-arlo/badge.svg?branch=master\n :target: https://coveralls.io/github/tchellomello/python-arlo?branch=master\n\n.. image:: https://img.shields.io/pypi/pyversions/pyarlo.svg\n :target: https://pypi.python.org/pypi/pyarlo\n\n.. _CONTRIBUTING.rst: https://raw.githubusercontent.com/tchellomello/python-arlo/master/CONTRIBUTING.rst\n\n\nPython Arlo is a library written in Python 2.7/3x that exposes the Netgear Arlo cameras as Python objects.\n\nDeveloper Documentation: `http://python-arlo.readthedocs.io/ `_\n\n\nInstallation\n------------\n\n.. code-block:: bash\n\n $ pip install pyarlo\n\n # Install latest development\n $ pip install git+https://github.com/tchellomello/python-arlo\n\nUsage\n-----\n\n.. code-block:: python\n\n # connecting\n from pyarlo import PyArlo\n arlo = PyArlo('foo@bar', 'secret')\n\n # listing devices\n arlo.devices\n\n # listing base stations\n arlo.base_stations\n\n # get base station handle\n # assuming only 1 base station is available\n base = arlo.base_stations[0]\n\n # get the current base station mode\n base.mode # 'disarmed'\n\n # listing Arlo modes\n base.available_modes # ['armed', 'disarmed', 'schedule', 'custom']\n\n # Updating the base station mode\n base.mode = 'custom'\n\n # listing all cameras\n arlo.cameras\n\n # showing camera preferences\n cam = arlo.cameras[0]\n\n # check if camera is connected to base station\n cam.is_camera_connected # True\n\n # printing camera attributes\n cam.serial_number\n cam.model_id\n cam.unseen_videos\n\n # get brightness value of camera\n cam.brightness\n\n # get signal strength of camera with base station\n cam.signal_strength\n \n # get flip property from camera\n cam.flip_state\n\n # get mirror property from camera\n cam.mirror_state\n\n # get power save mode value from camera\n cam.powersave_mode\n\n # get current battery level of camera\n cam.battery_level\n 92\n\n # get boolean result if motion detection\n # is enabled or not\n base.is_motion_detection_enabled # True\n\n # get battery levels of all cameras\n # prints serial number and battery level of each camera\n base.get_cameras_battery_level # {'4N71235T12345': 92, '4N71235T12345': 90}\n\n # get base station properties\n base.properties\n\n # get camera properties\n base.get_camera_properties\n\n # get camera rules\n base.get_camera_rules\n\n # get camera schedule\n base.get_camera_schedule\n\n # get camera motion detection sensitivity\n cam.get_motion_detection_sensitivity\n\n # refreshing camera properties\n cam.update()\n\n # gathering live_streaming URL\n cam.live_streaming() # rtmps://vzwow72-z2-prod.vz.netgear.com:80/vzmodulelive?egressToken=b723a7bb_abbXX&userAgent=web&cameraId=48AAAAA\n\n # gather last recorded video URL\n cam.last_video.video_url\n\nLoading Videos\n--------------\n\n.. code-block:: python\n\n # by default, all videos recorded within\n # the last 30 days will be pre-loaded\n arlo.ArloMediaLibrary.videos\n\n # Or you can load Arlo videos directly\n from pyarlo.media import ArloMediaLibrary\n library = ArloMediaLibrary(arlo, days=2)\n len(library.videos)\n\n # showing a video properties\n media = library.videos[0]\n\n # printing video attributes\n media.camera\n media.content_type\n media.media_duration_seconds\n\n # displaying thumbnail to stdout\n media.download_thumbnail()\n\n # downloading video\n media.download_video('/home/user/demo.mp4')\n\n\nAmbient Sensors Data Usage (Arlo Baby Monitor)\n----------------------------------------------\n\n.. code-block:: python\n\n # Get the base_station instance corresponding to the Arlo Baby\n base_station = arlo.base_stations[0]\n\n # Store all ambient sensor history in self._ambient_sensor_data\n # All of the accessor properties will call this if values are not cached.\n base_station.get_ambient_sensor_data()\n\n # Get cached sensor history (property)\n base_station.ambient_sensor_data\n\n # Get most recent temperature reading in degrees celsius (property)\n base_station.ambient_temperature\n\n # Get most recent humidity reading in relative humidity percentage (property)\n base_station.ambient_humidity\n\n # Get most recent air quality reading (property)\n # Not 100% sure on the unit of measure, but would assume it's VOC PPM\n base_station.ambient_air_quality\n\nMusic Playback Usage (Arlo Baby Monitor)\n----------------------------------------\n\n.. code-block:: python\n\n # Get the current playback status and available track list\n base_station.get_audio_playback_status()\n\n # Play a track, optionally specify the track and seek time in seconds\n base_station.play_track(\n track_id='229dca67-7e3c-4a5f-8f43-90e1a9bffc38',\n position=0)\n\n # Pause the currently playing track\n base_station.pause_track()\n\n # Skip to the next track in the playlist\n base_station.skip_track()\n\n # Set the music loop mode to repeat the entire playlist\n base_station.set_music_loop_mode_continuous()\n\n # Set the music loop mode to repeat the current track\n base_station.set_music_loop_mode_single()\n\n # Sets playback to shuffle\n base_station.set_shuffle_on()\n\n # Sets playback to sequential\n base_station.set_shuffle_off()\n\n # Change the playback volume\n base_station.set_volume(100)\n\nNight Light Usage (Arlo Baby Monitor)\n-------------------------------------\n\n.. code-block:: python\n\n # Turn on the night light\n base_station.set_night_light_on()\n\n # Turn off the night light\n base_station.set_night_light_off()\n\n # Set the brightness of the night light\n base_station.set_night_light_brightness(200)\n\n\nSupported Devices\n-----------------\nIf you have a different model, please feel free to contribute by reporting your results.\n\n+-------------------------+---------------+------------+-----------------+\n| Model | Tested by | Status | Results/Issues |\n+=========================+===============+============+=================+\n| Arlo 1st Generation | @tchellomello | working/ok | N/A |\n+-------------------------+---------------+------------+-----------------+\n| Arlo 2st Generation | @tchellomello | working/ok | N/A |\n+-------------------------+---------------+------------+-----------------+\n\n\nContributing\n------------\nSee more at CONTRIBUTING.rst_.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/tchellomello/python-arlo", "keywords": "arlo,netgear,camera,home automation,python", "license": "LGPLv3+", "maintainer": "", "maintainer_email": "", "name": "pyarlo", "package_url": "https://pypi.org/project/pyarlo/", "platform": "", "project_url": "https://pypi.org/project/pyarlo/", "project_urls": { "Homepage": "https://github.com/tchellomello/python-arlo" }, "release_url": "https://pypi.org/project/pyarlo/0.2.3/", "requires_dist": null, "requires_python": "", "summary": "Python Arlo is a library written in Python 2.7/3x that exposes the Netgear Arlo cameras as Python objects.", "version": "0.2.3" }, "last_serial": 4642145, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "1bec3f6b96596c4134ebdb282fef1241", "sha256": "cf610d20e3322821976967455ae7d142b5808d5c8d0fbd98b904f966a16d23e5" }, "downloads": -1, "filename": "pyarlo-0.0.1.tar.gz", "has_sig": false, "md5_digest": "1bec3f6b96596c4134ebdb282fef1241", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3285, "upload_time": "2017-04-09T06:51:38", "url": "https://files.pythonhosted.org/packages/a2/15/db877c52555248aa9f43f5402860713297aa9a29c0fcb663979436bba0c7/pyarlo-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "f36a8e149e4eea5d59de796f24511b36", "sha256": "0aa409839663a51f3ad416a560b1be79514c6bae3a6aa673621ab357bdbea591" }, "downloads": -1, "filename": "pyarlo-0.0.2.tar.gz", "has_sig": false, "md5_digest": "f36a8e149e4eea5d59de796f24511b36", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7623, "upload_time": "2017-05-09T04:48:14", "url": "https://files.pythonhosted.org/packages/c4/63/5473af018a53e1ac3ee41cfa05e865512004bfa5b4c37ea7a4bdecb62818/pyarlo-0.0.2.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "9cf991dced67c69d829c24b51b53968d", "sha256": "eb90d55b147c2bb3bb583399e47af890a3a8f95c2c9524f112c5cd73afa49633" }, "downloads": -1, "filename": "pyarlo-0.0.4.tar.gz", "has_sig": false, "md5_digest": "9cf991dced67c69d829c24b51b53968d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7731, "upload_time": "2017-05-16T06:29:34", "url": "https://files.pythonhosted.org/packages/b1/b5/71deebdfdc4bfe3a4a888082ef1a358a110ca10aab462456a9569752cd3c/pyarlo-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "4ea4ed386ac6581621bb54a117cea5ae", "sha256": "4c75364cdb89bfa997481aea65d95b0a9fab2a0060509d268195eebdfa2dc410" }, "downloads": -1, "filename": "pyarlo-0.0.5.tar.gz", "has_sig": false, "md5_digest": "4ea4ed386ac6581621bb54a117cea5ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10035, "upload_time": "2017-06-30T05:38:26", "url": "https://files.pythonhosted.org/packages/ca/63/d95339f7e6d048a2de2b2066ab1f632799e3404b4d50dd5bef138a806775/pyarlo-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "4b8e85bed94b6cb27a88711161c56156", "sha256": "46343d63b362e652d6f1cea3929a0ff924dbb9124867646066861a0a23b66830" }, "downloads": -1, "filename": "pyarlo-0.0.6.tar.gz", "has_sig": false, "md5_digest": "4b8e85bed94b6cb27a88711161c56156", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10202, "upload_time": "2017-07-20T06:01:05", "url": "https://files.pythonhosted.org/packages/b5/ef/711c746490cb3bf7e3d0b2599fc2b153199ea6197428eb40faa5adb32e6f/pyarlo-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "fecb7d4edaebc6c7233918f5e706af87", "sha256": "027dca27a3228b9f341fa9394e686cbb3dd56fa3347d4de71efd4bf855570b31" }, "downloads": -1, "filename": "pyarlo-0.0.7.tar.gz", "has_sig": false, "md5_digest": "fecb7d4edaebc6c7233918f5e706af87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10067, "upload_time": "2017-09-26T04:13:32", "url": "https://files.pythonhosted.org/packages/d8/f8/d41546dd576c9fb499773536e5973eaeed62399fcd258c053e02affb960a/pyarlo-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "80159ed5b845e804f7c7cb0ca962a08a", "sha256": "64411837e175e3d03a6275d9affc98c7abf51fe013c9b5e0fb9dc2d7c49e1254" }, "downloads": -1, "filename": "pyarlo-0.0.8.tar.gz", "has_sig": false, "md5_digest": "80159ed5b845e804f7c7cb0ca962a08a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10597, "upload_time": "2017-10-15T20:35:44", "url": "https://files.pythonhosted.org/packages/94/08/78f3c2726092c6fef88b45e077643de83e50b3c7719eebe221aa1a6f348a/pyarlo-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "468ca64a6778410c18fdc17aec77cc85", "sha256": "08ebe1db0bf8e5b1526d956dfc0a00a8d0f3ba5f3f7a9e788faa9e810341d4bf" }, "downloads": -1, "filename": "pyarlo-0.0.9.tar.gz", "has_sig": false, "md5_digest": "468ca64a6778410c18fdc17aec77cc85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10662, "upload_time": "2017-10-25T06:51:51", "url": "https://files.pythonhosted.org/packages/1d/e2/43662c772cfa6f23802aa7657634aea04f1892ec4c05ab979adb955ecf83/pyarlo-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "53cef2d72c588471173c0423c4ecb3ea", "sha256": "f352bcb468e805067433c0bbb7a7d23c9b33cf13884a09707e409550dfae1a1b" }, "downloads": -1, "filename": "pyarlo-0.1.0.tar.gz", "has_sig": false, "md5_digest": "53cef2d72c588471173c0423c4ecb3ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10762, "upload_time": "2017-10-25T07:28:21", "url": "https://files.pythonhosted.org/packages/42/00/344c7d4aed9318ac2546f6139fbbad021550732104d13c4fbc5505e2007e/pyarlo-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "4aee24b15074d3a537779b5fca56d1b0", "sha256": "a7d7218c011a223f5be0a81e2210511f5c844fbd452f100fa8b65e3a58e217f0" }, "downloads": -1, "filename": "pyarlo-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4aee24b15074d3a537779b5fca56d1b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11223, "upload_time": "2017-12-29T08:19:35", "url": "https://files.pythonhosted.org/packages/4a/fa/3384cb7d123fb489d9dbe15aafeb1f4fd9df25035419e36bc9d179ed27b1/pyarlo-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "00a38a9c2cf60a8d8c4cff776f09d495", "sha256": "edb7a0934e71936697a75b3808d7526c14dd276f030b02a6e064467187be32f7" }, "downloads": -1, "filename": "pyarlo-0.1.2.tar.gz", "has_sig": false, "md5_digest": "00a38a9c2cf60a8d8c4cff776f09d495", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11326, "upload_time": "2018-01-09T17:37:50", "url": "https://files.pythonhosted.org/packages/0f/30/20a1b645814dbc83e9f65e22032376ed1cf78bc5aeba6190bc215e920a57/pyarlo-0.1.2.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "1ef924ccf0fe845e974818c83da5e8c9", "sha256": "3770515cbfe710ddc0cd2ac38d52a9349060903d190d3c712a361f29f9a8cfb7" }, "downloads": -1, "filename": "pyarlo-0.1.4.tar.gz", "has_sig": false, "md5_digest": "1ef924ccf0fe845e974818c83da5e8c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12446, "upload_time": "2018-06-05T04:32:13", "url": "https://files.pythonhosted.org/packages/86/b1/2fad681639f914e7dbaf2b731a5efb21b3745e1daf52c92c8578655ba607/pyarlo-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "955099bc6acdbe9ea9a0be2d8666bc6a", "sha256": "477bc6eb69a765e4cf4699efa2ed13c08233e687c0a31fe24781e1e33b9657d0" }, "downloads": -1, "filename": "pyarlo-0.1.5.tar.gz", "has_sig": false, "md5_digest": "955099bc6acdbe9ea9a0be2d8666bc6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12680, "upload_time": "2018-06-11T03:53:57", "url": "https://files.pythonhosted.org/packages/c0/53/60a99490d4da234dca91853e3fc456aa3fff4da0ced2a0ae7c2eb6b81f60/pyarlo-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "07f1e49273e15440e4915c03a9393db6", "sha256": "b9f96b3bab7dc0603e35f465e306328be20d85a5555763e287968dc28c27d876" }, "downloads": -1, "filename": "pyarlo-0.1.6.tar.gz", "has_sig": false, "md5_digest": "07f1e49273e15440e4915c03a9393db6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12687, "upload_time": "2018-06-11T04:01:30", "url": "https://files.pythonhosted.org/packages/73/b2/43a181f896fbbc7f1fadab893de51e9f257a09d935cd05e23a6137582bf8/pyarlo-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "1fbe725c11fa9cc8dcbc0dc3d0610e30", "sha256": "6a19bf5e0532fc6e0c2292e72d0ce9159aa6da910eb8d34b35bccdd6a95086cc" }, "downloads": -1, "filename": "pyarlo-0.1.7.tar.gz", "has_sig": false, "md5_digest": "1fbe725c11fa9cc8dcbc0dc3d0610e30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14406, "upload_time": "2018-06-16T05:35:56", "url": "https://files.pythonhosted.org/packages/a4/59/60ce2926416c510897ddeccbb93ecf1e31b203f8e0f17e475a70fcaa1d60/pyarlo-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "19c2a5ebcc280e1cd75da29ae3c6b1f6", "sha256": "c1859458ffaad9c546facbba268426f2fa19df789c2e2593070ac888dfe61af0" }, "downloads": -1, "filename": "pyarlo-0.1.8.tar.gz", "has_sig": false, "md5_digest": "19c2a5ebcc280e1cd75da29ae3c6b1f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17074, "upload_time": "2018-06-20T03:13:10", "url": "https://files.pythonhosted.org/packages/7d/05/f8eac9c4349d363a20dae92f5d621585f52af4dbe81a39008b7db6804001/pyarlo-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "8ef4a7877ac60caa7a3205382fa2c357", "sha256": "4820f0f8d3c41b05c7f5a6c0a20a61aafe9b5f07ebd07a2fcb7cf5b323183d22" }, "downloads": -1, "filename": "pyarlo-0.1.9.tar.gz", "has_sig": false, "md5_digest": "8ef4a7877ac60caa7a3205382fa2c357", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17086, "upload_time": "2018-07-02T03:03:59", "url": "https://files.pythonhosted.org/packages/bd/1a/aa9cfec44616a137eaccb9a76638ffbf0fe32ad052aa8a27acbf832ce7a0/pyarlo-0.1.9.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "702c793ebddb7b83f30f3d675331cb58", "sha256": "7fc4cca6f756225c177626fb902e08052250cc7370d36a0641988972214b87a9" }, "downloads": -1, "filename": "pyarlo-0.2.0.tar.gz", "has_sig": false, "md5_digest": "702c793ebddb7b83f30f3d675331cb58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17358, "upload_time": "2018-07-17T02:17:34", "url": "https://files.pythonhosted.org/packages/41/61/47d32a4f3e0c8f866025778647cedad2bb8ad648b495f26b6857106df20d/pyarlo-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "63cdf0941afcf93104c942df739f532c", "sha256": "dad8fa9b0665257b86a462cb57492638513ee07bc648243294bdc4f2f590f41b" }, "downloads": -1, "filename": "pyarlo-0.2.1.tar.gz", "has_sig": false, "md5_digest": "63cdf0941afcf93104c942df739f532c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17616, "upload_time": "2018-08-19T19:38:41", "url": "https://files.pythonhosted.org/packages/91/8e/ae80d891f46fd060ee3256a8ab5d6af0f2ba395e09f0e59e59a2354d1433/pyarlo-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "2ed6df47fbac7d1589d7823781a03b70", "sha256": "5b63436b5af9e566481f46f431677d57c5e64d3def4f5a9e09ab52f2f9e6aed3" }, "downloads": -1, "filename": "pyarlo-0.2.2.tar.gz", "has_sig": false, "md5_digest": "2ed6df47fbac7d1589d7823781a03b70", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17779, "upload_time": "2018-10-21T06:26:45", "url": "https://files.pythonhosted.org/packages/b2/52/0ec203b9c8320901608eb6d38b7eb369fe9aebaf99361f4182dc17721d2d/pyarlo-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "937b908eecaea4e752ce5f2306428877", "sha256": "2ab6168b3e3329f10eacbf9c29abe0aed281eaf1b51ce071b6d1c04940bed079" }, "downloads": -1, "filename": "pyarlo-0.2.3.tar.gz", "has_sig": false, "md5_digest": "937b908eecaea4e752ce5f2306428877", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17847, "upload_time": "2018-12-28T19:49:14", "url": "https://files.pythonhosted.org/packages/db/4d/79a85ea0e91aceb598f004847d7da6a78f7e1b8aa2648f168d260ea11235/pyarlo-0.2.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "937b908eecaea4e752ce5f2306428877", "sha256": "2ab6168b3e3329f10eacbf9c29abe0aed281eaf1b51ce071b6d1c04940bed079" }, "downloads": -1, "filename": "pyarlo-0.2.3.tar.gz", "has_sig": false, "md5_digest": "937b908eecaea4e752ce5f2306428877", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17847, "upload_time": "2018-12-28T19:49:14", "url": "https://files.pythonhosted.org/packages/db/4d/79a85ea0e91aceb598f004847d7da6a78f7e1b8aa2648f168d260ea11235/pyarlo-0.2.3.tar.gz" } ] }