I see from previous threads you've messed around with manual recordings. How does this look to you as a concept for OliveTin?:
I'll add the recording image URL as a field, and of course, the cURL command to post the json. But it was easy to put together, and looks like it'd do the job without platform-specific stuff other solutions are employing.
EDIT: Like all of the OliveTin scripts I've written so far -- amazingly simple:
manualrecordings.sh:
#!/bin/bash
# Define the values
name="$1"
channel="$2"
time=$(date -d "$(date +'%Y-%m-%d') $3" +%s)
duration=$(($4 * 60))
summary="$5"
source="manual"
image="https://tmsimg.fancybits.co/assets/p9467679_st_h6_aa.jpg 2"
raw=""
# Create the JSON content
json_content=$(cat <<EOF
{
"Name": "$name",
"Time": $time,
"Duration": $duration,
"Channels": ["$channel"],
"Airing": {
"Source": "$source",
"Channel": "$channel",
"Time": $time,
"Duration": $duration,
"Title": "$name",
"Summary": "$summary",
"Image": "$image",
"Raw": "$raw"
}
}
EOF
)
# Output the JSON content to a file
echo "$json_content" > /config/output.json
cat /config/output.json
And the config.yaml snippet:
- title: Manually Add Recordings
icon: '<img src = "https://community-assets.getchannels.com/original/2X/5/55232547f7e8f243069080b6aec0c71872f0f537.png" width = "48px"/>'
shell: /config/manualrecordings.sh "{{ name }}" {{ channel }} {{ time }} {{ duration }} "{{ summary }}"
arguments:
- name: name
type: ascii_sentence
description: The name you'd like used for the recording
- name: channel
type: int
description: The channel number to use for the recording
- name: time
type: very_dangerous_raw_string
description: The time to start the recording in 24h format hh:mm
- name: duration
type: int
description: The length of the recording in minutes
- name: summary
type: ascii_sentence
description: A Description of the recording