Virtual DJ Studio Home | NGWave Home | Official Facebook Page | Unofficial VDJ Users Group

Author Topic: Karaoke App Feature Idea  (Read 4496 times)

Offline ikaraoke

  • Newbie
  • *
  • Posts: 12
  • Karma: 1
  • One Show At A Time.
    • View Profile
    • ikaraoke.ca
Karaoke App Feature Idea
« on: December 28, 2016, 06:02:17 AM »
Hi Justin.
I use the request app you have designed as a stand-alone request station on a laptop placed near the bar.  I use my own WIFI router.  I do this because when too many guests use the app on their phones it bogs down my DJ laptop.  Also, occasionally a guest wants to be a smart-ass and they like to mess with that computer.   I have a solution that I know you can easily tackle.
   
Can you install a password system (on the app) that prevents access to all buttons except the essential buttons like alfa numeric keys, power button, all the F-KEYS, CNTRL, ESC, ALT, DELETE and blocks out access to the address bar?

I know how to do this physically by opening the laptop and taping over those button pads but then I would need to carry an external keyboard to make changes and log-in....a password system might be easier.

A quick answer would make my day.  Thank you sir, keep up the amazing work.  I love it.

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Karaoke App Feature Idea
« Reply #1 on: December 28, 2016, 10:13:05 AM »
I think what you want is Kiosk software.  Windows has built-in ways to do this... But it's somewhat complicated to setup.   Here's one that I believe is free:

https://www.mirabyte.com/en/products/frontface-lockdown-tool/features.html

I've done this with Android tablets and there are kiosk apps for that too.  I find that the tablets are better because using a laptop you have to expose it to drinks being spilt on it.  There are ways to protect it but they can be quite expensive.

Fabio Q.
Shooting Star Karaoke

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 950
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Karaoke App Feature Idea
« Reply #2 on: December 28, 2016, 11:07:51 AM »
Fabio is correct - the app is simply a web page. Imagine if any web page could just lock you out of your computer! :)

There are various Kiosk apps out there. I believe Firefox has a good one, where you can limit it to a specific domain (or IP) and essentially lock the machine down.

In my opinion... the best way to accomplish this would be to run a Linux distro set up as a kiosk. You could of course dual-boot the machine if you still need it for other Windows-based things at different times.

The only way to lock down things like the power button (truly lock out access to anything but what you want) is going to be under Linux. Windows has far too many holes that people will figure out if they are so inclined, and I believe CTRL+ALT+DEL is always available in Windows, giving a way to launch Task Manager and then "run" any "task" they want under the current user.

If I had it my way, everyone would be using Linux and I could quit writing software for Windows :)  But alas, we live in Gate's world. Everything else in the world that is important runs Linux (ATMs, medical equipment, DVRs, Android, the vast majority of web servers) or some variant of Unix (Mac, iOS, etc)... with the Desktop being the one thing dominated by Windows due to PC manufacturers being strong-armed.

But I digress... sorry, it's been a while since I went on a Windows rant. Had to get it out of my system. What were we talking about again? :)

Seriously search for "kiosk" software. One option I *almost* forgot about (assuming you're still here after my rant): a custom live boot CD (or flash drive) that boots your Linux kiosk, without touching the hard drive. This has the added benefit of being able to swap out the physical computer with just about anything that boots, or setting up multiple identical systems.

On that note -- in the near future, I may lend my hand at creating a VDJ-specific kiosk bootable .ISO image for exactly this purpose. As long as you can boot from CD or USB, any PC could boot directly into the correct screen and allow only use of the app. Just an idea for the future...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 950
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Karaoke App Feature Idea
« Reply #3 on: December 28, 2016, 02:03:04 PM »
I have been doing a little research, and this one seems to fit the bill:

http://porteus-kiosk.org/

It's free (Open Source), and should let you lock down the system entirely. If you use a bootable flash drive or SD card or CD, whatever is on the internal hard drive won't be touched (just make sure the boot order is set to check USB/etc first, and that you don't let users touch the power cable)...

Just one of many if you google "kiosk browser bootable"...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 950
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Karaoke App Feature Idea
« Reply #4 on: December 28, 2016, 03:14:23 PM »
Posting my progress as I do this so I don't leave anything out.

First I downloaded the .ISO file, and made a bootable SD card (your mileage may vary, not all PCs will boot from SD).

Note that they have great instructions, but I personally did it the "easy" way (easy if you have a Linux box lying around).

I boot from that on a laptop and get the configuration wizard. First you set up your network or wifi. Next you choose Firefox or Chrome, and it downloads your preference. I chose Firefox.

Now you can launch the configuration...

After reviewing a few hundred options and selecting default on most of them, it is "burning" the installation to the same SD card. Now I'm booting up...

Worthy of note: Since it said it required 950 MB of space, I chose to use an old 1GB (ONE GIGABYTE) SD card I had leftover from an old digital camera. Works perfectly! So if you set your laptop to boot from that first, and just leave it in there, seems like a great solution.

So now it boots directly to mydjsongbook.com - and is not allowed to stray to any site besides that. You can put something like 10.0.0 or 192.168.0 in the "whitelist" to allow only access to links matching that. For my test (since my version of VDJ is crashing right now -- still under development lol) I enabled the hosted version temporarily.

So it boots very quickly. After 5 minutes (you can choose this duration) of inactivity, it restarts the browser, clearing out any login or history etc. I do believe this will also work to allow the customer to upload a picture taken with the built-in webcam... haven't tested that much yet.

Obviously my screenshots show ads - but when I launch the 8.0 + mydjsongbook thing, you'll have two subscription options for the hosted app: one price for ad-supported, and a lower price for ad-free. The built-in server will never have ads in any case. So you could let customers use their own phone on mydjsongbook.com, and at the same time have your kiosk use the built-in server.

Something like that... anyway the screenshots show a sneak peak at a couple things new to the app... I tested every possible key combination I could find, and nothing gets you to a console shell, or anything. The ONLY thing that happens is if you press the power button, it immediately powers off. Powering back on boots right back up in seconds.

This is just one of many, and I figured I'd test it out since it seemed the most promising. I'll try to keep kiosks in mind while working on the app.

Note that you can use a Windows PC with this as long as you don't let the user get to a boot menu to bypass booting from the flash card/stick. You can easily set a BIOS password... haven't tested on a Mac yet, but I do have an old Intel MacBook lying around...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 950
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Karaoke App Feature Idea
« Reply #5 on: December 28, 2016, 03:23:13 PM »
One more shot - this is what shows if the server is not available (or in my case, throwing a 403 Forbidden error, on purpose). I believe you can customize the background graphic as well during setup, I just left the default, but note the little red ribbon that goes away as soon as the site is available.
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Karaoke App Feature Idea
« Reply #6 on: December 29, 2016, 01:51:11 PM »
This is pretty nice!  I have Windows (HP Tablet with removable keyboard that I was planning on using as my new hosting machine, but when I opened it to replace the hard drive, I realized it had none to replace (it was la built into the motherboard.  It's now gathering dust because it only has 120GB.  It might be good for such a purpose.  I found using the android tablet not as responsive.

Speaking of that, it would be nice is there was a slightly different set of pages for a larger screen.  I tried playing before with a larger home page, but the results page always went back to regular size. 

Lastly, I'd like to suggest the "Submit Song" link/button be moved to the center of the page when choosing a song at the bottom of the page.  Frequently I see someone picking the last song on the list and the "submit song" link is below the page, so they never see it and end up asking me how to submit it.  Or better yet put it in it's own page once they chose it, so they don't get confused as to what the next step is.
Fabio Q.
Shooting Star Karaoke

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 950
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Karaoke App Feature Idea
« Reply #7 on: December 30, 2016, 07:08:31 AM »
I think I mentioned in another thread somewhere that I plan to take a crash-course refresher on CSS layouts, so the app will adapt to whatever screen/device is being used. So that problem will be solved.

The reason I did the whole "invisible" <div> tag, that becomes visible when you click on it (thus showing the "SEND REQUEST" link), was so that you can get slightly more information (full filename, keywords, etc) before submitting - and without loading a whole new page each time.  All I would really need to do is ensure that is visible on the page after they "expand" the result. Or I could make the rest of the results disappear entirely, until you click on "back to results" which instead of loading a page it would just make the results list visible again.........

I'll play around with it when I get to that point. What sucks is that on the hosted version I can make changes/improvements to the app without the user (DJ) having to change or update anything. That's good. But then the "installed" version - the templates VDJ's internal server uses - would be inconsistent.

Part of me wants to just scrap the internal server all together as it has been a nightmare trying two create a web server within a DJ program - it is in itself an entire project. Also this would encourage (require) that you have a subscription to use the app. It would certainly be much more robust and secure in every respect - the Apache foundation has been writing web server code for 30+ years... why reinvent the wheel :)
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 950
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Karaoke App Feature Idea
« Reply #8 on: December 30, 2016, 07:13:35 AM »
By the way, I have the HP convertible but no removable keyboard - same problem, non-removable hard drive and nowhere to put one. But I use it for a lot of things where I just need a small, portable laptop/tablet. It's great when working on the car (I have a Bluetooth OBD-II module) and crap like that. It would make a perfect kiosk as it has both touch-screen and a full keyboard.

Mine only has a 32GB internal flash drive, and Windows wants to cram their updates down your throat whether you want them or not - and of course each one eats up more of that precious space. When I get back to DJing I'll probably wind up putting Linux on that laptop and using it as a kiosk :)

Funny thing is that the only way to turn off the computer with this particular kiosk setup is with the power button. Mine broke a long time ago and you have to reach in with a screwdriver and locate the tiny button on the board :)  Kinda perfect actually... for this purpose I mean...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Karaoke App Feature Idea
« Reply #9 on: January 03, 2017, 08:30:03 PM »
Quote
The reason I did the whole "invisible" <div> tag, that becomes visible when you click on it (thus showing the "SEND REQUEST" link), was so that you can get slightly more information (full filename, keywords, etc) before submitting - and without loading a whole new page each time.  All I would really need to do is ensure that is visible on the page after they "expand" the result. Or I could make the rest of the results disappear entirely, until you click on "back to results" which instead of loading a page it would just make the results list visible again.........

yeah, that sound like a good idea...I think it would make it easier on people!

Speaking of that HP laptop, I ended up messing up in the speakers I meant to go back and fix it, but the headset works.... :P
Fabio Q.
Shooting Star Karaoke