I make a lot of OC videos to post here on Lemmy. I’m on Nobara, which is currently on Fedora 39. I’m like an intermediate Linux user and mostly have experience with Debian. All of that being said, I’m up at odd hours.

If someone can help me figure out how to make a script to post a video to Lemmy when people are actually awake, that would be fantastic. It could be a lot, I know. I have no idea how to start here. It’d likely need a giant script, and API access along with possible sudo permissions.

I haven’t been a developer since ~2002 and even then it was only Java web stuff. So, while I might understand things with some guidance I can no longer really get things like this running by myself.

If anyone has info or guidance on how to get this done, I would greatly appreciate it. I’m trying to get automatic uploads to at least catbox.moe, and if possible YouTube (though I know that is unlikely).

I know this is an odd one, but I know you all (if anyone) have the technical set to help me out here. I’ll answer any questions I can!

4 points

sounds like a fun challenge. My thought process is the control flow. To that end:

  1. script runs

handled by cron

  1. Script selects files to upload, community to upload to and titles for them.

These are the hardest parts, because it will be the only variable parts. It basically requires user input. I’m thinking perhaps parsing a text file where you input the file name, the community, and the title.

  1. Script authenticates with lemmy API

I found this really handy “unofficial” API documentation, which includes examples in many different languages, through the official docs.

Unfortunately, it looks like it’s going to require a hardcoded password to get the appropriate authorization token.

  1. script posts to lemmy

We can use the api documentation above to figure out this part too


For other sites like youtube, you can expand on this script and have parts for youtube as well, but you’re basically doubling its size and complexity. Personally, I would go for the KISS method instead and just have a separate script & info file.

After work today, I’ll see if I can slam out a quick proof of concept in Python

permalink
report
reply
2 points

@jawa21@lemmy.sdf.org

here’s the script

I wasn’t able to implement catbox nor youtube uploads for a few reasons:

  1. neither are FOSS services, and I sneer at those in my moral superiority (disregard the above usage of github)
  2. I’m lazy
  3. This script isn’t for me and I will likely never use it
  4. I’ve already spent over 2 hours on this
  5. catbox.moe is a small site, with little-to-no API documentation. I didn’t want to hammer them with 100 API POST requests with blank files while I test the script and figure out their API through trial and error
  6. youtube requires an API key via oauth… I really don’t have time to work that fustercluck out

I left in some helpful comments anyway.

All in all a fun exercise that brought me and lemmy closer together, and that’s what really matters. Turns out the real API docs were the friends we made along the way

permalink
report
parent
reply
2 points

I really do appreciate the effort! I will take a look at this when I’m next able.

permalink
report
parent
reply
2 points

I got this script to work! Yeah, I apologize for the lack of FOSS hosting for videos specifically, but there really aren’t great options out there unless I run and maintain my own PeerTube instance, which I’m not prepared to do technically or financially. I managed to get it working, so I really thank you for the hours of work you put in! I was able to do two test posts that worked well once I had oauth stuff sorted.

permalink
report
parent
reply
1 point

That’s great news! I hope my contributions didn’t require major overhauls on your part, and I’d love to see the end result (scrubbed of any private info of course) if you care to share.

No worries about the FOSS stuff, I was just fishing for excuses to absolve myself of guilt for not finishing it 😬

permalink
report
parent
reply
3 points

I could possibly help you with all this. If you wanna DM me, we can set up time to work on this.

permalink
report
reply
3 points

Out of interest, why do the videos need to be posted at a specific time? As the world rotates, different people are awake all the time. Are they specific to your local area?

permalink
report
reply
5 points

The land, and thus the population of the earth aren’t distrubuted equally across the globe. This causes a day-night cycle for online communities, despite being international, just due to the fact that the majority of humans live somewhat close together on a global scale.

permalink
report
parent
reply
1 point
*

That’s true, I hadn’t thought of that. So the optimal time to get the most people waking up to your content is about 01:30 UTC for India waking up from 7am (UTC+5:30), or 23:00 UTC for China at UTC+8!

https://distributionofthings.com/world-population-by-time-zone/

permalink
report
parent
reply
1 point

If there really is an equal distribution of users across the globe, yes. But you also need to consider that most users here are probably from Europe or north america, but I’m not sure about that.

permalink
report
parent
reply
4 points

It is entirely me wanting people to see them. Many sort by new, hot, top x hours etc. I’d just like to make people happy by posting stuff at an optimized time.

permalink
report
parent
reply
2 points

There’s probably something than can be done with a curl command through the API.

permalink
report
reply
2 points

I’ve actually fully automated my uploads to youtube. It’s been over 10 years since I set it up, but I can tell you I use youtube_upload from pip and I’m pretty sure I had to make an app password. I wrote a little bash script to make sure it’s only done in the middle of the night. I’m not a dev either so if my dumb ass can figure it out, I’m sure you can too :)

permalink
report
reply

Linux

!linux@lemmy.world

Create post

Welcome to c/linux!

Welcome to our thriving Linux community! Whether you’re a seasoned Linux enthusiast or just starting your journey, we’re excited to have you here. Explore, learn, and collaborate with like-minded individuals who share a passion for open-source software and the endless possibilities it offers. Together, let’s dive into the world of Linux and embrace the power of freedom, customization, and innovation. Enjoy your stay and feel free to join the vibrant discussions that await you!

Rules:

  1. Stay on topic: Posts and discussions should be related to Linux, open source software, and related technologies.

  2. Be respectful: Treat fellow community members with respect and courtesy.

  3. Quality over quantity: Share informative and thought-provoking content.

  4. No spam or self-promotion: Avoid excessive self-promotion or spamming.

  5. No NSFW adult content

  6. Follow general lemmy guidelines.

Community stats

  • 1.4K

    Monthly active users

  • 635

    Posts

  • 4.9K

    Comments

Community moderators