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

Author Topic: Web App and Customers  (Read 4681 times)

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Web App and Customers
« on: December 26, 2016, 09:41:06 AM »
So here is where I stand currently on the web app that will be hosted on www.MyDJSongbook.com. For the purposes here, a "DJ" is one of you guys, and a "customer" is one of your customers (bar patron, or whatever).

So, obviously each DJ will have, as part of a subscription, an account on my server. This will hold information about the DJ, a bio and profile picture and other optional details. It will also hold a copy of the DJs songbook (titles only of course, not actual music) for customers to search.

So each customer will in turn create a customer profile. They can do this with or without a specific DJ in mind - eg, they can set up their profile and use that to search out nearby DJs, etc. The customer account will be email-authenticated, possibly with some type of CAPTCHA to weed out bots. So now the customer can upload up to (say) six profile pictures, and at any time choose which one to use currently.

Here is where it gets tricky. As a DJ, you would need to "approve" any new customers. This will be done simply by looking at their profile and confirming that it is one of your customers. You can then either approve each of their profile pics as "appropriate", or mark that customer as "trusted", meaning their pics can be updated without DJ approval (only if you trust you won't suddenly get a d**k pic on your karaoke screen!)

So each customer would have a list of their favorite DJs, so they can quickly select the DJ, or even find out where he or she is currently playing or will be playing next. Obviously I have high hopes of having a DJ base large enough that a customer will have several choices in their area :)

So basically I guess my question is this:

- Do you think the "create customer profile" with email authentication bit is too much? Or are people used to doing that enough these days that they wouldn't even think twice?

- Should "anonymous" requests be allowed? In other words, the DJ can open it up for non-registered people to send in requests? Personally I'm thinking of leaving that part out entirely.

- How to deal with duplicate "screen names"..... obviously each customer would have a unique username (or email address) to identify them on the system, but there's always the possibility of two customers, at two different bars, choosing "Sunshine" (for example) as their screen name. Then they both show up to the SAME bar.

I suppose simply making whoever "showed up" last would be required to choose a different screen name for that DJ...

Any thoughts or ideas?
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Web App and Customers
« Reply #1 on: December 26, 2016, 12:44:57 PM »
As for the customer screen name issue, I figure they would enter their "preferred" screen name as part of the customer profile. But, as they "sign in" with a particular DJ, if their "preferred" name is already taken, they would have to choose something else -- which can be saved *for that DJ* whilst keeping their "preferred" name for use at other venues. So the "first come first served" takes care of itself...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline chaz

  • Full Member
  • ***
  • Posts: 109
  • Karma: 0
    • View Profile
Re: Web App and Customers
« Reply #2 on: December 29, 2016, 09:26:14 AM »

So each customer will in turn create a customer profile. They can do this with or without a specific DJ in mind - eg, they can set up their profile and use that to search out nearby DJs, etc. The customer account will be email-authenticated, possibly with some type of CAPTCHA to weed out bots. So now the customer can upload up to (say) six profile pictures, and at any time choose which one to use currently.

I have issues with ppl not willing to try even using their phones.. or a kiosk.. (no data, battery low, shitty service.. etc...  Can't you just do it for me) I don't see how they will wan't to go through a whole sign up session..
Also I have quite a few guests visiting from out of town that just wan't to sing two songs and never see again.


Here is where it gets tricky. As a DJ, you would need to "approve" any new customers. This will be done simply by looking at their profile and confirming that it is one of your customers. You can then either approve each of their profile pics as "appropriate", or mark that customer as "trusted", meaning their pics can be updated without DJ approval (only if you trust you won't suddenly get a d**k pic on your karaoke screen!)

So each customer would have a list of their favorite DJs, so they can quickly select the DJ, or even find out where he or she is currently playing or will be playing next. Obviously I have high hopes of having a DJ base large enough that a customer will have several choices in their area :)

So basically I guess my question is this:

- Do you think the "create customer profile" with email authentication bit is too much? Or are people used to doing that enough these days that they wouldn't even think twice?

- Should "anonymous" requests be allowed? In other words, the DJ can open it up for non-registered people to send in requests? Personally I'm thinking of leaving that part out entirely.



Is there going to be a browser Incorporated in the tabs for us to do this without having to open a new program. Or some type of alert system that will make approving easy... I personally think it is overthinking it. KISS theory.

When I am DJ'ing a wedding and post requests can be submitted at OCAmusic.com nobody will want to fill out a huge form or email authenticate to request a song, they will just come tell me.
I like the idea of having unique screen names and password protecting, and even having profiles, but there has to be a bypass way for the lazy people.


*On a side note ... Having a tab set for a browser to go to a lyrics site would be so beneficial. I would love to add lyrics to the metadata for each zip... but this would be an alternative for now.  I might reference google for lyrics 2-3 times a night .... 

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Web App and Customers
« Reply #3 on: December 29, 2016, 01:52:11 PM »
Chaz: That's what I worry about, that it's hard enough to get customers to even get on the app, much less create and verify an account.

So - I think I'm going to get rid of all of that. When you load up mydjsongbook.com/djname - or choose the DJ by location/name from the home page - you will simply search, submit a request, and an optional name, comment, and picture (to update your current profile picture *in the program*, upon DJ approval).

As for what I mean by "DJ Approval" - it would be part of the "incoming requests" window. Each request that comes in will show the song, person's name, any comments, and any picture they may have submitted. You can from there just add the request to the list, and optionally click "update picture" if you trust that it's the correct person sending that request, and the picture is decent.

NOTE: Picture uploads will only work when using the server-hosted app. The VDJ internal server will not handle file uploads. All other features should be about the same, except that the server takes the CPU load off of your PC.

I'm going to work on the app to make it more viewable on both mobile and PC devices. I have to take a crash refresher course on CSS layouts to ensure it looks best for the platform on which it is being viewed (thinking kiosk laptop or tablet).

I will still add the option of having a passcode to access the app.

If using the server-hosted app, you would have to log in and configure it via a browser. The requests however would come in directly to VDJ just as they do with the internal server (with an icon to indicate which app was used).

As for browser integration - I've been thinking about this for a while. Partly for looking up music lyrics and things like that, but also for YouTube videos. Unfortunately anything played in a browser will play over whichever audio device is "default" in Windows... but that's nothing new here.

A simple explorer (aka Edge) based browser plugin should be simple enough as it is so tightly integrated into Windows (despite Microsoft's efforts to make it seem otherwise). That also adds another hurdle to the interface design I'm already struggling with at the moment lol - so that one might have to wait.

---

So in the end, everything will *mostly* work just as it does with the current app. The main difference will be that:

- You can optionally use mydjsongbook.com via subscription (I have decided to not have ads within the app).
- Picture upload only works on the server version
- You can use both *at the same time* (so your Kiosk for example can look/feel different from the hosted version)
- If you already have port forwarding and DNS aliasing (or whatever) you probably don't need the web subscription

However, if you want the same URL no matter where you are working, and don't want to worry about router configuration, bandwidth issues, and CPU load issues - the hosted app would work best. Plus it would always be "on", as in you can use it to advertise where you'll be, even let people search songs ahead of time, and (optionally) send you messages ("Hey, I noticed you don't have Foo by Bar, can you get it for this weekend?"). You can link your DJ profile to your facebook/instagram/whatever account as well.

So in short (again), I'm going to simplify the hosted app and use the KISS principal, and divert my efforts on getting this monstrosity finished !!!

I have to remind myself sometimes that I can always improve it later...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Web App and Customers
« Reply #4 on: December 29, 2016, 01:57:13 PM »
Correction:

Quote
If using the server-hosted app, you would have to log in and configure it via a browser.

I meant the first time you set up the app, or any time you need to refresh the song database (aka whenever you've reindexed your music). Or to make changes to the layout etc... functionality of the app will be enabled from within VDJ, and disabled either when you turn it off, or after an hour of no activity (as in, VDJ stops pinging the server for whatever reason).
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Web App and Customers
« Reply #5 on: January 07, 2017, 01:59:51 PM »
I've been going back and forth between the app and VDJ itself. Today was app day. I've been working on the algorithm to calculate distances between two zip codes (using math, not some external service that wants $$$ to do the same thing). Works great.

Each DJ would put in their current location, and the customer can see a list of DJs within XX miles of their current location. Longitude and Latitude calculations took me just to the edge of my mathematical abilities but with some help from the Internet, my algorithm works nicely :)

So that got me thinking: I know that not every DJ likes Virtual DJ Studio. If you are used to a particular software tool, I understand wanting to stick with it.

But what if I offered MyDJSongBook.com to anyone on a subscription basis? They obviously would not get program integration without VDJ, but they could have a browser pop up requests as they come in (on the PC, phone, or any web device). Obviously I would charge a tad more if you are NOT a VDJ license holder, but this could expand the overall user-base of the app itself, serving to help customers find DJs no matter what software they use.

I would have to provide an indexer tool that just creates the uploadable database... but my thinking is that it may help push other DJs to eventually switch to VDJ (for the added integration features + profile pics on screen), and would be that much more a resource for customers as well.

Also new today: I got the DNS all set up, so your URL would be http://yourdjname.mydjsongbook.com/ (it's still in "development mode" so nothing will work for anyone not on my IP right now :) ) and the process of creating it would be fully automatic and instant once your purchase is made. In other words, I just sit back and decide if and when I need to upgrade to a bigger server ;)

So upon first visit, if they didn't specify a djname prefix, the customer would be greeted with a "type your zip code or a DJ name". If ZIP code it would search a certain radius, or show X of the nearest DJs. If they type a name (anything other than a 5 digit number) it would search by name, but sort by who's closest (so if there are 35 variations of j-man, jman, jay-man, etc, the nearest would show first).

Of course easiest would be to type the full URL or snap the QR code, but this will let them follow you around, find other DJs, and of course give me all sorts of fun statistics to play with...

NOTE: The geographical parts of this will only work in the US and Puerto Rico... at least for now. I now know how to calculate longitude/latitude and convert to miles/kilometers, but I would need a database of postal codes for other countries in order to get more global. Luckily it would be as simple as adding those postal codes with city, state/province, country, and coordinates to my existing database - just need to find sources of this info for other countries. A task for later...

Just throwing that out there about possibly letting non-VDJ DJs make use of the web app. I'm not sure about the trade-off of losing potential VDJ customers vs having more app-only customers... that's a whole other set of maths I would have to dig into and I'm not great with statistical analysis (I barely scratched a bit of calculus with the coordinates)...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Web App and Customers
« Reply #6 on: January 07, 2017, 03:06:40 PM »
It's funny but when I was looking for an "easy" way to calculate distances using ZIP codes, all I found were services that wanted paid access. A subscription to basically look up two ZIP codes, apply a little calculus, and give you a distance. A couple cents per lookup or so, depending on your "subscription level". That other app designers can use rather than do the math themselves...

So... I would have to tweak this to be completely accurate (the earth, as it happens, is not a perfect sphere!) but something like http://vdj.net/zipcalc.php is what people are paying for. Possible side project/income stream?

Add unit=m or unit=k to get JUST the distance (no HTML).

Examples:

With HTML: http://vdj.net/zipcalc.php?z1=46303&z2=90210
Miles: http://vdj.net/zipcalc.php?unit=m&z1=46303&z2=63010
Kilos: http://vdj.net/zipcalc.php?z2=46303&z1=8888&unit=k

(note the argument order doesn't matter)

I guess it's that "end of day" boredom that comes around here when it's dark out at 5pm... lol... but perhaps I could charge one cent per request if anyone wanted to use my little API ;) I have nearly 42,000 ZIP codes and their "center" long/lat coordinates stored (about 1.7 billion combinations). The math is good but not perfect - turns out the algorithms used by GPS receivers are highly guarded and very complex. Mine's just some basic calculus assuming a perfect sphere...
« Last Edit: January 07, 2017, 03:22:05 PM by Justin »
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Web App and Customers
« Reply #7 on: January 16, 2017, 05:54:55 PM »
Pretty interesting stuff Justin...as you know I'm using VPN to host my own domain fabiosbook.com but I have to switch DNS before each gig and run a different one at the end of the night.  The DNS is setup as dinamic DNS, so the switch over to a different IP is very quick. 

I'm assuming I can still point http://fabiosbook.com to http://fabio.mydjsongbook.com  I'm glad you're deciding to make the login for customers optional.  As Chaz noted, it's a struggle to get people to use it. You can't always convince people to use it, but once they use it, they wonder why they never did.  Often I think people think because my domain is similar to facebook that it's related to facebook and they don't want to use it (some people don't have a facebook account nor do they want one).

On a related side note, last night I tried to get a woman to use it on her phone but she said it was too small on the phone, so told her to just use the paper books instead, she asked if it was complete list and I told her it wasn't but the phone was....she asked if she could look on my laptop instead...she said it was nicer if she could look through with me. It turned out she didn't even want to sing, she just wanted me to sing it for her. She said she wasn't good at singing. I suspect she was hitting on me...perhaps, if I wasn't happily married I might have let her look through my long list of songs.  8) ;D :P hahahah!

My wife is used to this sort of thing, when she was tending and we were both younger, we'd come back home with phone numbers, usually she had more than me.  It's surprising how many women have offered "favors" for bumping them up on the list before... ;)






Fabio Q.
Shooting Star Karaoke

Offline Justin

  • Site Administrator
  • Administrator
  • Hero Member
  • *****
  • Posts: 949
  • Karma: 11
    • View Profile
    • Virtual DJ Studio
Re: Web App and Customers
« Reply #8 on: January 19, 2017, 10:14:41 AM »
Quote
Often I think people think because my domain is similar to facebook that it's related to facebook and they don't want to use it

I hadn't really thought of that but yes, I could see how people could easily get confused!

Quote
It's surprising how many women have offered "favors" for bumping them up on the list before...

Too bad I try to keep this forum PG... I've certainly got some stories :) As I'm sure most of us do - everybody wants the DJ, or at least will do (or show) whatever it takes to get their song up next ;)

Anyway, I'm thinking of introducing the MyDJSongBook.com feature as an early preview for a few volunteers. The next 7.x update will incorporate the interface needed, and ... well see my next post under Announcements for more understanding...
-- Justin Nelson, CEO
   Next Generation Software, Inc.
   http://www.vdj.net/

Offline Fabio

  • Administrator
  • Hero Member
  • *****
  • Posts: 755
  • Karma: 11
    • View Profile
Re: Web App and Customers
« Reply #9 on: January 19, 2017, 02:22:47 PM »
Lol...I think, we all have stories.  It's surprising what some women are willing to do (or show) to get their next song bumped up!  ;)



Fabio Q.
Shooting Star Karaoke