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