A command-line interface for interacting with the SWITCHtube web service.
brew install fingertips/tap/teletube
If want to format or transform the resulting JSON is can be useful to install jq
.
brew install jq
git clone https://github.com/Fingertips/teletube.git
cd teletube
make install
Go into your SWITCHtube account and follow the instructions to get an authentication token for the web service.
teletube config --token <token>
If you need to operate on a different endpoint, usually for testing purposes, you can explicitly set the endpoint.
teletube config --endpoint https://staging.tube.switch.ch
Start by listing all channels you can access.
teletube channels
Or filter the channels you own, or the channels you may contribute to.
teletube channels list --role owner
teletube channels list --role contributor
teletube files upload FILE.MOV
This should print a NO_CONTENT response for every 50 megabytes uploaded. Error messages are handled as long as the command keeps running.
Copy-paste the characters after 📃, this is the upload id.
You can use a channel id, upload id, and a title to create a new video with the upload.
teletube videos create --channel-id <id> --upload-id <id> --title "Very serious video about nature."
You can set other details about the video too, please use --help
to see them.
teletube videos create --help
Look up a channel id with the channels listing explained earlier. Then you can list all videos in that channel.
teletube videos list --channel-id <id>
A video may have multiple files, one for each attempted processing job.
teletube files list --video-id <id>
Each will have a URL and an optional original files. You can attempt to download the latest file uploaded this way.
teletube files download --video-id <id>
Keep in mind that the download URLs will expire, so you shouldn't share them with others.
teletube files upload DOCUMENT.DOCX
This should print a NO_CONTENT response for every 50 megabytes uploaded. Error messages are handled as long as the command keeps running.
Copy-paste the characters after 📃, this is the upload id.
You can use a video id and upload id, to create a new document with the upload.
teletube documents create --video-id <id> --upload-id
teletube files upload AVATAR.JPG
This should print a NO_CONTENT response for every 50 megabytes uploaded. Error messages are handled as long as the command keeps running.
Copy-paste the characters after 📃, this is the upload id.
You can create a new avatar with the upload id.
teletube avatars create --upload-id <upload-id>
You can always end a command with --help
to get more details. For example:
teletube --help
teletube browse --help
teletube browse poster --help
Status information about the command is printed to stderr
. JSON responses are written to stdout
so you can use tools like jq
to get details.
For example, you can format the JSON for readability.
teletube channels list --role owner | jq
Or you can transform it to only show the id
and name
.
teletube channels list --role owner | jq ".[] | {id: .id, name: .name}"
The best way to learn jq
is through the tutorial https://stedolan.github.io/jq/tutorial/ and trying it out on https://jqplay.org.