{ "info": { "author": "Kali Norby", "author_email": "kali norby at gmail com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: BSD License", "Topic :: Multimedia :: Sound/Audio :: Players", "Topic :: Utilities" ], "description": "boxeeremotelib: python interface to the boxee remote api\n==========================================================\n\nPython library to use the [boxee remote api](http://developer.boxee.tv/Remote_Control_Interface). The library includes\nfunctionality to discover servers via boxee's UDP-based discovery as well as an interface to the actual commands. The\nintention of this project is to support a web interface to the remote and any other non-traditional uses.\n\nIt is currently tested against a single boxee box and only on linux, so please share any negative results that you\nexperience, but it should work more widely.\n\nScripts\n--------\n\nA couple of scripts are provided, *boxee_discover* and *boxee_command*.\n\n```````````````````````````````````````````\n$ boxee_discover\n192.168.1.104:8800\n```````````````````````````````````````````\n\nAll servers on the network should be listed. A bit more functionality can be found with *boxee_command*:\n\n```````````````````````````````````````````\n$ boxee_command back setstring:batman\n$ boxee_command down select\n```````````````````````````````````````````\n\nFrom the main menu, the previous example should go back to the search screen, type 'batman', and select\nthe first result. It should be noted that the server is being auto-selected, but a specific server can be given\n\n````````````````````````````````````````````````````````````\n$ boxee_command --host=192.168.1.104 --port=8800 getvolume\n100\n````````````````````````````````````````````````````````````\nIn addition to the normal commands,\n\n```````````````````````````````````````````````````````\n$ boxee_command -l\nback\nbackspace\ndown\ngetpercentage\ngetvolume\nleft\nmute\npause\nplaynext\nplayprev\nright\nseekpercentage\nseekpercentagerelative\nselect\nsetstring\nsetvolume\nstop\nup\n````````````````````````````````````````````````````````\n\ncommands can be quickly repeated by adding '_n' on to the end of a command name, where 'n' is the number\nof times to repeat the command. These repeat commands are available from the library as well.\n\n```````````````````````````````````````````````````````\n$ boxee_command backspace_6 setstring:misfits\n```````````````````````````````````````````````````````\n\nDiscovery\n----------\n\nDiscovery works by broadcasting an XML snippet on your local network. There are some validation mechanisms in place,\nand this library attempts to follow them more closely than many other similar libaries, but any attempts by Boxee to\nclean up this library seem to have fallen away. Queries are presented as the iphone remote, as boxee seems to only\nrespond to these.\n\nThis mechanism, particularly on my often overloaded boxee box, is somewhat unreliable. A wake up may be needed. Some\namount of reliability will likely be added in the future.\n\n```````````````````````````````````````````````````````````````````````\n>>> from boxeeremotelib import Discoverer\n>>> d = Discoverer()\n>>> d.get_servers() #failed attempt\n{}\n>>> d.get_servers()\n{'192.168.1.104': {'application': 'boxee', 'http_port': 8800,\n'name': 'boxeebox', 'version': '1.5.1', 'http_auth_required': False}}\n```````````````````````````````````````````````````````````````````````\n\nCommand Interface\n------------------\n\nThis interface is meant to serve a number of purposes, and it is meant to be expanded on in the future.\n\n`````````````````````````````````````````````````````````````````````````````````````````\n>>> from boxeeremotelib import CommandSpawner, CommandInterface\n>>> spawner = CommandSpawner.from_discovery_result(*d.get_servers().iteritems().next())\n>>> ci = CommandInterface(spawner)\n>>> def printit(res):\n... print res\n...\n>>> ci.getvolume(cb=printit)\n100\n>>> ci.setvolume(90)\n`````````````````````````````````````````````````````````````````````````````````````````\n\nIt is likely clear from this example that the library is written with callback libraries in mind.\n\nAuthors\n--------\n\nLibrary written by Kali Norby .\n\nThanks\n-------\n\n* Android [boxeeremote](http://code.google.com/p/boxeeremote/) - helpful guide, particularly for discovery", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/knorby/boxeeremotelib", "keywords": "boxee remote entertainment library", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "boxeeremotelib", "package_url": "https://pypi.org/project/boxeeremotelib/", "platform": "any", "project_url": "https://pypi.org/project/boxeeremotelib/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/knorby/boxeeremotelib" }, "release_url": "https://pypi.org/project/boxeeremotelib/0.1/", "requires_dist": null, "requires_python": null, "summary": "an interface to the boxee remote api", "version": "0.1" }, "last_serial": 2732708, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "7a261e9afc8b696c03c416eef48a3157", "sha256": "cce99d13624d3422813ae277e87abcf5ea5777b123540e9f9ea5f0612bad3d20" }, "downloads": -1, "filename": "boxeeremotelib-0.1.tar.gz", "has_sig": false, "md5_digest": "7a261e9afc8b696c03c416eef48a3157", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7990, "upload_time": "2012-12-09T08:50:57", "url": "https://files.pythonhosted.org/packages/4f/0e/20a1c122d9f2b0e9e6893a50a95d3178524752b9bed9fc1160236ddfec16/boxeeremotelib-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7a261e9afc8b696c03c416eef48a3157", "sha256": "cce99d13624d3422813ae277e87abcf5ea5777b123540e9f9ea5f0612bad3d20" }, "downloads": -1, "filename": "boxeeremotelib-0.1.tar.gz", "has_sig": false, "md5_digest": "7a261e9afc8b696c03c416eef48a3157", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7990, "upload_time": "2012-12-09T08:50:57", "url": "https://files.pythonhosted.org/packages/4f/0e/20a1c122d9f2b0e9e6893a50a95d3178524752b9bed9fc1160236ddfec16/boxeeremotelib-0.1.tar.gz" } ] }