Upload video w/ `"scheduledUpdate"`

hi there,

I am trying to understand how "scheduledUpdate" is supposed to work.

say I upload a video through the /upload-resumable end-point at 2024-04-12 13:00:00 UTC, with the following parameters:

[...]
"privacy": 3,
"scheduleUpdate": {
    "privacy": 1,
    "updateAt": "2024-04-13"
},
[...]

would this video be first uploaded to the specified channel, first as private (privacy==3), and be automatically set by the instance as public (privacy==1) the day after ?
(2024-04-13, so that would mean 2024-04-13T00:00:00Z, right ?)

if that’s the case, would it be possible to instead pass "updateAt": "2024-04-13T10:11:00Z" instead ? (to have a finer control on the public publishing parameter ?)

is the scheduled update always enabled on all instances (e.g. for 6.0.3 ?) ?
is there a quantization for these updates ?

(I tried to upload a private video with an update-to-public set for 2mn in the future, but it was never (I’ve waited for ~30mn – granted: that’s a poor man approximation for « never ») updated to « public ».)

cheers,
-s

Hi,

would this video be first uploaded to the specified channel, first as private (privacy==3), and be automatically set by the instance as public (privacy==1) the day after ?

Yes!

if that’s the case, would it be possible to instead pass "updateAt": "2024-04-13T10:11:00Z" instead ? (to have a finer control on the public publishing parameter ?)

Yes, prefer to use the full date for updateAt attribute. In fact I didn’t think this field supported the « date format only ».

is the scheduled update always enabled on all instances (e.g. for 6.0.3 ?) ?

Yes it is

is there a quantization for these updates ?

I’m not sure to understand the question

(I tried to upload a private video with an update-to-public set for 2mn in the future, but it was never (I’ve waited for ~30mn – granted: that’s a poor man approximation for « never ») updated to « public ».)

:thinking: Maybe a timezone issue? You can add a console.log('called!') in dist/core/lib/schedulers/update-videos-scheduler.js to check what happens

if that’s the case, would it be possible to instead pass "updateAt": "2024-04-13T10:11:00Z" instead ? (to have a finer control on the public publishing parameter ?)

Yes, prefer to use the full date for updateAt attribute. In fact I didn’t think this field supported the « date format only ».

ok. the documentation of /videos/upload-resumable only mentions "2019-08-24", hence my question :}
so, just to be clear, the "date format" peertube is expecting is ISO ? ("2024-04-15T10:54:56Z")

is there a quantization for these updates ?

I’m not sure to understand the question

I meant: are updates-jobs run at specific times (e.g. every 5 minutes, every hour) so actual updates are effective only at those quanta ?

Maybe a timezone issue? You can add a console.log('called!') in dist/core/lib/schedulers/update-videos-scheduler.js to check what happens

my client is setup to marshal dates to ISO strings by default (e.g. : "scheduleUpdate":{"updateAt":"2024-04-15T10:54:00Z","privacy":3}).
but I’ll watch out for this.

thanks.
-s

Thanks! I’ll fix the documentation. Yes peertube is expecting ISO

I meant: are updates-jobs run at specific times (e.g. every 5 minutes, every hour) so actual updates are effective only at those quanta ?

They are run every minute

thanks a lot :slight_smile: