Unofficial API client to https://facecast.io service
| pip: | pip install facecast-io |
|---|---|
| poetry: | poetry add facecast-io |
api = FacecastAPI(os.environ["FACECAST_USERNAME"], os.environ["FACECAST_PASSWORD"])
# display available devices
print(api.devices)
# get device by name
d = api.devices['Dev name']
# delete specific device and all devices
api.devices.delete_device('Dev name')
api.devices.delete_all()
# create device
api.devices.create_device('Dev name')
# display device server url and key
print(d.input_params)
# display outputs of device
print(d.outputs)
# create new output
d.create_output("Youtube", 'rtmp://a.youtube.com', 'youtube-key')
# start/stop output
d.start_outputs()
d.stop_outputs()
# delete all outputs
d.delete_outputs()
First of all you need to login into your Facecast.io account:
$ python -m facecast_io login
Now you're able to work with your devices. Some of useful commands.
Check all existing devices:
$ python -m facecast_io devices list
Create new device
$ python -m facecast_io devices create somename
Show info about specific device
$ python -m facecast_io device someone
Show stream params for device
$ python -m facecast_io device someone --input
Start and stop outputs for device
$ python -m facecast_io device someone --start $ python -m facecast_io device someone --stop
Provision data from API into Facecast. If we have pipeline that send following structure:
[
{
"channel_name": "YT ALLATRA TV Italia",
"server_url": "url",
"stream_key": "key",
},
]
Call command would be next:
$ http GET 'https://streams.com/some' | jq .devname | python -m facecast_io devices provision devname