A Python 3 interface to the XirSys API.
Project description
A Python 3 interface to the XirSys API
Badges
Usage
Install python-xirsys:
pip install python-xirsys
Build a Connection object:
from python_xirsys import Connection
connection = Connection(username="<xirsys_username>", secret_key="<xirsys_secret_key>"
Grab XirSys signaling server:
>>> SignalingServer.list_all(connection=connection)
<SignalingServer [server_address]>
>>> server = SignalingServer.list_all(connection=connection)
>>> server.address
'<server_address>'
Generate a XirSys WebSocket token:
>>> from python_xirsys.objects import SignalingServer
>>> SignalingServer.generate_token(connection=connection, domain="domain.com", application="application", room="room", secure=True)
'<token>'
Grab a list of XirSys ICE servers:
>>> from python_xirsys.objects import ICEServer
>>> ICEServer.list_all(connection=connection, domain="domain.com", application="application", room="room", secure=True, timeout=30)
[<ICEServer [url]>, ...]
>>> ice_servers = ICEServer.list_all(connection=connection, domain="domain.com", application="application", room="room", secure=True, timeout=30)
>>> ice_server = ice_servers[0]
>>> ice_server.url
'<url>'
>>> ice_server.server_type
'stun'
>>> ice_server.username
None
>>> ice_server.credential
None
>>> ice_server = ice_servers[1]
>>> ice_server.url
'<url>'
>>> ice_server.server_type
'turn'
>>> ice_server.username
'<username>'
>>> ice_server.credential
'<credential>'
Manage XirSys domains:
>>> from python_xirsys.objects import Domain
>>> Domain.create(connection=connection, domain="test.com")
<Domain [test.com]>
>>> Domain.list_all(connection=connection)
[<Domain [domain.com]>, <Domain [test.com]>]
>>> domains = Domain.list_all(connection=connection)
>>> domain = domains[domains.index("test.com")]
>>> domain.applications
[<Application [default]>, ...]
>>> domain.disable()
Manage XirSys applications:
>>> from python_xirsys.objects import Application
>>> domains = Domain.list_all(connection=connection)
>>> domain = domains[domains.index("domain.com")]
>>> Application.create(connection=connection, domain=domain, application="test")
<Application [test]>
>>> Application.list_all(connection=connection, domain=domain)
[<Application [default]>, <Application [test]>]
>>> Application.list_all(connection=connection, domain="domain.com")
[<Application [default]>, <Application [test]>]
>>> applications = Application.list_all(connection=connection, domain=domain)
>>> application = applications[applications.index("test")]
>>> application.rooms
[<Room [default]>, ...]
>>> application.disable()
Manage XirSys rooms:
>>> from python_xirsys.objects import Room
>>> Room.create(connection=connection, domain="domain.com", application="default", room="test_room")
<Room [test_room]>
>>> rooms = Room.list_all(connection=connection, domain="domain.com", application="default")
[<Room [default]>, <Room [test_room]>]
>>> room = rooms[rooms.index("test_room")]
>>> application.room()
Running the Tests
pip install -r requirements/test.txt
./runtests.py
Changes
0.1.1 (2016-05-30)
Object names are now coerced to strings when initialized to avoid a TypeError
0.1.0 (2016-05-26)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python-xirsys-0.1.1.tar.gz
(7.7 kB
view details)
Built Distribution
File details
Details for the file python-xirsys-0.1.1.tar.gz
.
File metadata
- Download URL: python-xirsys-0.1.1.tar.gz
- Upload date:
- Size: 7.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba4998fdc4008a9148a4d94c49ae41188adbb877ac742593041171452ff2346a |
|
MD5 | 5adf2354808142594f072cbfd9009d15 |
|
BLAKE2b-256 | 603999736afdacda786deb0b4b7a4c629d68f1183915a134ba0ed53c26dbe87d |
File details
Details for the file python_xirsys-0.1.1-py2.py3-none-any.whl
.
File metadata
- Download URL: python_xirsys-0.1.1-py2.py3-none-any.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25392a1827b83473e115e9b344c0fe642f1db8a70b3f0ea1f08843644fecc2aa |
|
MD5 | 1dbdde8e2c32d37c3dcd7a637be0c17a |
|
BLAKE2b-256 | fcf15aa9b2af0973c94eebc152e07413a123b99fc32d97bbe2773a6e37f4b22f |