Scheduled Daily Signage

New features which should be implemented in Porteus Kiosk Edition and the kiosk wizard.
Forum rules
Porteus Kiosk section of the forum is unmaintained now. Its kept in a 'read only' mode for archival purposes.
Please use the kiosk contact page for directing your queries: https://porteus-kiosk.org/contact.html
illuminerdi
Ronin
Ronin
Posts: 2
Joined: 27 Oct 2017, 16:26
Distribution: Porteus Kiosk

Scheduled Daily Signage

Post#1 by illuminerdi » 27 Oct 2017, 16:39

Is there a good/simple way to schedule signage displays? I know you can schedule tasks to be run via the Wizard, but the Wizard only includes one task slot per day and I need to run 2 separate pages per day depending on the time of day, and day of the week.

My use case is that I want to use Porteus Kiosk for digital signage in a corporate cafe, but the menu changes both daily AND by time of day (Breakfast or Lunch).

So basically what I need is this.

Monday 6AM - Open page A
Monday 10:30AM - Kill page A, open Page B
Tuesday 6AM - Kill page B, open Page C
Tuesday, 10:30AM - Kill page C, open Page D

And so on for the entire week.

This is the ONLY major feature I'm missing to be able to deploy Porteus for all my digital signage. I'm looking into how to customize an ISO to do this, but this seems like a very necessary feature for the Wizard

I know this is all possible, but I'd really like to get this built into the Kiosk Wizard so that I can quickly deploy this without need to build a customized ISO or config file.

To be honest I'm somewhat surprised it hasn't already been built in - this seems like a very common use case for digital signage. I'm not faulting you guys for not including it - I'm sure you're understaffed and overworked, I just haven't seen this brought up elsewhere and it seems like a very useful feature to include.

Thanks!

User avatar
fanthom
Moderator Team
Moderator Team
Posts: 5666
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland
Contact:

Scheduled Daily Signage

Post#2 by fanthom » 28 Oct 2017, 06:32

Hi illuminerdi,

You need to update the webpage on your web server at certain hours/day of the week and then you need to configure the kiosks as follows:

Code: Select all

scheduled_action=Monday-06:00 Tuesday-06:00 Wednesday-06:00 Thursday-06:00 Friday-06:00 Saturday-06:00 Sunday-06:00 action:killall chrome; sleep 270m; killall chrome
Explanation:
'sleep 270m' = wait 4.5 hours.

Thanks
Please add [Solved] to your thread title if the solution was found.

illuminerdi
Ronin
Ronin
Posts: 2
Joined: 27 Oct 2017, 16:26
Distribution: Porteus Kiosk

Scheduled Daily Signage

Post#3 by illuminerdi » 28 Oct 2017, 15:13

Unfortunately that doesn't work for my use case for 2 reasons. First, the webpage is not hosted locally, the webpages are Google Slides, so I cannot set up server-side updates. Obviously being Google slides they can be updated at any time, but as they are not hosted webpages there is no automated way for me to perform a redirect using the same URL. Yes I could install an intermediary web server and have the signage point to a locally hosted web page that I then update, but adding in a web server onto my network is neither ideal, nor something I'm really in a position to be doing for both logistical and security reasons.

As for just updating the slide manually: the kitchen manager is responsible for those Google Slides. The kitchen switches from Breakfast to Lunch between 10:30AM and 11:15AM. This is an INCREDIBLY busy time for every member of the kitchen staff. Our kitchen managers do not have the time (short though it may be) to update the slides, there is just plain too much for them to do, which is exactly why I'm trying to automate this process - we already tried having them update the slides and that task was ALWAYS the first to get dropped when the schedule was too full, so it fell to me to find a technological solution to the problem.

As it stands, I've devised a solution that uses a bash script, as I said, this is not an unsolvable problem, but I feel like this is a feature that Porteus Kiosk should consider working into its setup wizard and frankly if I have to write a bash script anyway, I don't see a lot of reason to use Porteus Kiosk since it's easier for me to just use Lubuntu and Cron my script, which is what I have done. I will happily switch to a paid subscription for Porteus Kiosk for all my signage if this feature is added, since it is the one thing it is missing for me to deploy it, but the amount of effort for me to customize and deploy a Porteus Kiosk ISO is comparable to any other distro, and thus is loses the advantages it has over other distros, which is why I suggested this feature.

User avatar
fanthom
Moderator Team
Moderator Team
Posts: 5666
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland
Contact:

Scheduled Daily Signage

Post#4 by fanthom » 28 Oct 2017, 18:39

Not sure if i understand.

You want to change the homepage (point the browser to new slides) and restart the browser at certain hours - is this correct?
If yes then you could create a crontab file and overwrite kiosk existing one using 'run_command=' parameter:

Code: Select all

wget http://domain.com/files/crontab -O /etc/crontab
In the crontab you could include a function to update the chomepage and restart the browser, sample for chrome:

Code: Select all

0 6 * * 1 root sed -i 's|homepage1.com|homepage2.com|' $json; killall chrome
0 10 * * 1 root sed -i 's|homepage2.com|homepage3.com|' $json; killall chrome
0 6 * * 2 root sed -i 's|homepage3.com|homepage4.com|' $json; killall chrome
"I feel like this is a feature that Porteus Kiosk should consider working into its setup wizard"
No idea what should be added to the wizard. I have a feeling everything is there already.

"but the amount of effort for me to customize and deploy a Porteus Kiosk ISO is comparable to any other distro"
You dont have to customize the ISO, in most case its enough to use provided parameters.

Thanks
Please add [Solved] to your thread title if the solution was found.

Locked