Can I get some advice on how to approach the following?
Every time a Zoom recording is created, I download it to a Google Folder.
Now I want to take it a step further such that…
- If the recording happens during a certain time of day on Thursdays, it is filed into a ‘Thursday Sessions’ folder on G drive.
- If the recording happens during a certain time of day on Saturdays, it is filed into a ‘Saturday Sessions’ folder.
- If the recording happens outside of those Thursday and Saturday hours, it is filed into a ‘General Recordings’ folder on G drive.
Here’s the background… my guitar teacher teaches online classes on Thursdays and Saturdays at set times. While I’ve created a Make scenario which downloads any Zoom recording when it is created, he wants them to get placed into their respective folders on G drive.
I have been looking at filter options but unsure how to approach this. Any suggestions are most welcome. Thank you.
Hi @donovan,
I don’t know if the Zoom module can do this, however the names of the download files have a date in them, that looks like this:
GMT20240717-173251_Recording.mp4
Using a Text Parser with this regular expression:
GMT(\d{8})-
You can extract the date. make sure you select NO for the global match option.
Then you can set the variable like this:
{{formatDate(parseDate(4.$1
; “YYYYMMDD”); “dddd”)}}
where “4.$1
” is the text that matched.
I’m attaching a simple blueprint that demonstrates this.
L
blueprint=2024-08-11-1909.json|attachment (6.5 KB)
2 Likes
Thank you @L_Duperval I will give this a go and report back. I appreciate your assistance.
@L_Duperval given the result 20240717, do you know how I can then determine if that date is on a Thursday or a Saturday so that I can file it in the proper folder in G Drive?
Yes. Create a new scenario and load the blueprint in it. Then run the scenario and you will see that the result of the last module is the day of the week.
Now, one thing to know is that I did not use the timezone to calculate the date. So depending on where you are in the world, it might give incorrect results. If that’s the case, you might need to add the timezone to formatDate.
L
I see it now that I actually ran it. I’m new to Make so I appreciate the guidance. This is wonderful. I think I can make it work with your solution. Thank you so much!
1 Like
Hello again @L_Duperval may I ask for your help to refine this a bit? First of all, thank you so much as the solution is working and I very much appreciate your solution.
I’d like to refine this a bit such that the Thursday and Saturday recordings only get filed in the G Drive folders if they were recorded during these specific times of the day.
Thur-16:30 or Sat-9:30
The reality is that on Thursday, my guitar teacher holds a class starting at 16:30pm which lasts for about an hour. That recording should go into the G drive folder since it’s a session/class recording. However, if my teacher uses Zoom to record any other kind of meeting he may have on a Thursday, we don’t want that to end up in the session recording folder since it’s not a class, it’s just a random Zoom recording.
Can you suggest a way that I might hone this solution to be aware of the time a recording was created? Or perhaps a time frame if that would make more sense? Eg, what if the teach starts the recording a few minutes late?
Thank you if you have suggestions on how to iterate this solution.
Hi @donovan,
Ah, date math! That’s a lovely challenge!
Normally, you should post a new question since you already said you had a solution. I’m not sure what the etiquette is, so I’ll answer. And if it’s bad form, I guess somebody will tell us!
So, assuming the time on the recording is always correct, you can change your regular expression to:
GMT(\d{8})-(\d{6})_
and assigning the second group ($2) to a separate variable. You would need to change the Set Variable module to a Set Variables module so you can set more than one variable in a single operation.
Then, check that the time starts with “16” on Thursdays or “09” on Saturdays.
You can check by using something like:
{{ indexOf(“16”; fileTime) }}
And make sure the result is 0.
That said, it’s not perfect, especially if the previous course starts after 1600 but ends before 1630. But if you know that never happens, you should be OK most of the time.
A better way would be to convert the date and time to a number and check that the value is between the numerical value of Saturday 930 AM and Saturday 1030AM. That’s more precise (if the recording never starts before 930) but a bit more complex to implement.
Hopefully that helps. If not, I encourage you to start a new discussion. Tag me in it so I can see it. But others will chime in if they have better solution.
L
Thank you @L_Duperval I will explore your suggestions. I appreciate it. I didn’t meant to disrupt the rules of the forum. If I have more on this topic, I’ll be sure to start a new post and tag you in it.
1 Like