Solved

Question on large scale Flash/Condfusion/SQL deployment over mutlitple location LCD screens

Posted on 2007-04-04
32
277 Views
Last Modified: 2013-12-24
Hello all,

     I've recently been assigned to create a large scale flash/coldfusion/sql solution and was hoping I could get some ideas on how best to proceed (I have my own battle plan, but this is a little beyond what I normally do so I could use some input).  Basically, a client wants to have a web based admin tool that specifies flash content to be displayed on up to 5 LCD screens at each of many locations (each having 5 screens, and different content on each screen).  Each location will have 1 computer; that will pull content relevant to that location from the admin tool server.  That computer will then drive the content to its location's 5 LCD screens (using SideCar or some such).   The content of an LCD screen is fairly simple; a .swf movie that basically consists of three different still frames that it loops through (each still frame being a picture with some text).   These "slides" need to be editable from the admin tool, as does the master .swf file that loads them in (in case they want to change the overall transitions, order of the slides, background color, etc).  The client wants the admin tool created such that no .fla flash file will ever have to be edited directly (so perhaps the SQL database storing image and text information so they can be pulled into the flash movie via variables or some such on the fly).  
        Anyway, this is a fairly daunting project and I want to make sure I have a solid battle plan to avoid backtracking; any input or strategy ideas you guys can offer would be much appreciated.  Thank you.

0
Comment
Question by:andrewaiello
  • 15
  • 14
  • 3
32 Comments
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Here is the key question for you if you have not solved this one yet...  Can you display 5 different contents on 5 different monitors???  I know some third party projector tools does have a capability to detect the multiple monitors, but I have not gone any further than that...

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Yes, i know how to do that; the hardware aspect is no problem.  My question involves the best way to set up the admin tool and deploy the content to the PC's at each location; in such way to make updating as painless as possible without actually having to go into an the .fla files.
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
About the admin tool...  Is that something your client have only one copy running and all other projectors fetch the same data or one projector has one admin tool onsite???

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
There will only be one centralized admin tool (and one master server where all the stuff is stored); that is accessable via the web.  From that tool once the content for a location is updated it will be downloaded to the location's computer.
0
 
LVL 37

Accepted Solution

by:
CyanBlue earned 250 total points
Comment Utility
So, I guess it will be something like this if I can simplify the whole thing...

Create a web admin tool that basically saves the following information for the specific location...
(The additional values should be really put into the consideration when programming the main file because you cannot really generate the SWF on the fly unless you use the specific tools which I forgot the name of them...)

   Computer ID to target the specific computer...
   URL to the picture #1
   some text for slide #1
   URL to the picture #2
   some text for slide #2
   URL to the picture #3
   some text for slide #3
   type of the transitions
   values associates with that transition
   order of the slides
   background color
   etc

Once that's saved to the database, you basically need to program the projector that will be sitting in the location...
Have that projector to fetch the values from the server on every given interval so that it will refresh the data if it was changed by the admin...

Well...  I know I simplified it alot, but it does not sound that bad...  ;)

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Okay, good; thats pretty much the same battle plan that I had; I was just basically looking for whether there was some other wacky way to do it.  I'll keep this topic open for now, in case i hit any snags during implementation.  Thanks again.
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Not a problem...  Don't forget to keep us posted if you find any new information...  ;)

CyanBlue
0
 
LVL 4

Expert Comment

by:teddysetiawan
Comment Utility
Well I had create such app using FMS for company event ,

Its consist of 3x3 lcd screen , each screen display 1/9 part of image or video
( you should split the image / video by yourself)

so for full image/video  there will be 9 part of it.

image1,image2......image9

together the lcd put side by side so when the user see it will be full image/video




using FMS , each client can have their own ID when they connect to FMS

 the admin just tell the client to look for the image path base on their ID,
I use shared object on FMS so the client can always have the change value in real time using onSync

Hope that help





0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Interesting idea, teddy...  I think FMS is abit of an overkill though because you don't really have to have such robust functionality...

Yeah...  Developing for FMS might be tedious, but the end result is really cool most of the times...  Only if Adobe lower the price abit...  But then, there are Red5 and Wowza, so it might actually go down sooner or later...  

CyanBlue
0
 
LVL 4

Expert Comment

by:teddysetiawan
Comment Utility
Agree with you Cyan , the FMS price is not cheap.
but for development , you can use FMS since it free for 10 connection without time expiration.

RED5 will do the job for the alternatives since its free.

The main advantage using FMS or RED5 is that the admin can push the data or call a function on client side without have to use timer.




0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Sure...  Agreed...  :)
But you cannot use the dev version for the production...  Not sure if Adobe will notice it or not, but I would not recommend that to anybody...

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Hey guys,

      I have an added little challenge to the product.  The client wants precise scheduling going on like; for instance LCD screen 1 should show Slide 34  from 9am to Noon and slide 36 from Noon to 5pm on weekdays, slide 23 on saturdays etc.  What options do I have to execute this?  I am guessing cfschedule type stuff; any info you can give me would be much appreciated.  Thanks.
0
 
LVL 4

Expert Comment

by:teddysetiawan
Comment Utility
^_^  like I said Cyan , its for development.

For free server RED5 will do.


andrewaiello

I believe the concept is the same ,
if you have figure it out how your client interact with the admin  ,  
I guest you also  know how to add scheduling function on it.

for instance , If I use FMS , I add scheduling function on the admin  and pass the value to FMS to broadcast  the client.

teddy





0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
If I were doing it, I'd rather put that scheduling information to the database and have that data evaluated by the client machine which does the presentation...  If I don't use FMS that is...  
Not that I am against with FMS, I don't think it'd be the best choice to this sort of job...  The admin part is basically a form that writes data to the database and the client part is where it access the data from the database and interprets that data to display the presentation...

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Yes; thats what i think.

      Basically all that i need to store in the database is url strings (with urlscope variables attached etc) and the client machine just needs to get them.  Do you know a good place to look up how to do this with an MS SQL database?
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Don't know much about the MSSQL but I don't think it is going to be much different from MySQL...
And, you don't really have much thing to learn in this type of situation...
You just need to insert the data by using INSERT INTO and retrieve it by using SELECT command from the server side language...

Check this page out...

http://www.sql-tutorial.net/

CyanBlue
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Oh, lol; thats not what I meant; I use SQL all the time;  I meant how to set up the scheduling in the database as was mentioned above; that I've never done.
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
I don't think you can set up the scheduling in the database since the database do not have any connection with the client computers...

I think teddy and I mentioned that earlier...  But you've got to decide what sorts of method you'd like to use first so that we can help you further...  For example, teddy is talking about doing this over the FMS and it's got good potential for sure, but I don't know if that's what you are going to use or not...  and vice versa...

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Seeing that i don't know what FMS is, i guess i'm not using it ;)
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
If that is the case, I'd probably put the scheduling onto the client end...  Maybe lookup the server everytime when one pass is done or something similar...

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Okay Cyan,  

      Can you point me in the direction of some materials to read on how to do this effectively?  Thank you.
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
I think you get the idea on how to approach the whole thing, right???  Do you have questions on the specific steps that I can help you with or was that just general question???

I could create the whole thing if I were to do the job, but I don't know of any specific material that I can refer to that will help you get through the whole steps unless you are asking more specific question...

FYI, I won't be available for 4~7 days from tomorrow...  It's not I am abandoning you, but I've got to take care of some medical problem...

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Lol... thank you.  All i have a question on is how to set up "Client-side scheduling"
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Well...  The admin site will probably say you have to display image series #1 between 4/12/07 1PM and 3PM and image series #2 between 3PM ~ 6Pm or something similar... and when the client initially contacts the server at 2PM, it will fetch the data it will know that the image series #1 is only available between 2 ~ 3PM and it will make another call at 3PM to retrieve the series #2 data and so on...

Does this help you in any ways???

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Yeah, i can puzzle it out.  Thanks.
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Don't forget to keep us posted...  ;)

CyanBlue
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
K guys, I just found out that i can't use php, asp, coldfusion, etc from the computer's at the store locations (only on the admin server); its some like generic content web browser thing.   Also, they want the information to be stored locally on each computer to each screen.    Therefore I would have to do something like this:  say we have a database record for one of the LCD screens, its got its label, and say a breakfast URL, and a lunch URL.  I'll need to query the database for that record and spit the info out onto a text file on the Store's computer (where the LCD resides).  So that file will be like  URLBreakfast = sdgbsnmbsmndg    URLLUNCH=blablabla   etc.   So now on the client, via javascript I guess, it will check the time and based on that get the value of the appropriate variable from the text file and redirect the browser to the value of that variable?   Does that seem logical?  Thanks.
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
So far my plan is working; I just need two questions answered.

How can i make a page know to refresh itself at certain specific times; as in; at 5 oclock, 7 oclock, and 10 oclock   (i know how to make a page like, refresh every 2 minutes and such).    Also;  i've managed to use javascript to read info from a text file, like i can read in the text "myVar = 435"  now my question is, how do i get that info which was read in to be evaluated as actual javascript; as in I actually want a javascript variable named myVar to be set to 435.  Thank you in advance.
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
any thoughts? lol
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Okay, i actually figured out the scheduling matter; now I just need that info being read in to be evaluated as javascript....any help would be much appreciated.  thank you.
0
 
LVL 1

Author Comment

by:andrewaiello
Comment Utility
Ahh, the answer to that was just eval().  I found out something cool too; if you ever need to modify an embed tag with javascript check it out:

where searchhString is some java variable

document.write('<embed src="myMovie.swf?' + searchString + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="200" height="100"</embed>');


Not bad right? ;)
0
 
LVL 37

Expert Comment

by:CyanBlue
Comment Utility
Man...  I had no idea if this one is already a year old...  So, I take you have done something about the problem...  Care to explain how you attacked it???  ;)

CyanBlue
0

Featured Post

Get up to 2TB FREE CLOUD per backup license!

An exclusive Black Friday offer just for Expert Exchange audience! Buy any of our top-rated backup solutions & get up to 2TB free cloud per system! Perform local & cloud backup in the same step, and restore instantly—anytime, anywhere. Grab this deal now before it disappears!

Join & Write a Comment

Introduction This article explores the design of a cache system that can improve the performance of a web site or web application.  The assumption is that the web site has many more “read” operations than “write” operations (this is commonly the ca…
For both online and offline retail, the cross-channel business is the most recent pattern in the B2C trade space.
Via a live example, show how to shrink a transaction log file down to a reasonable size.
The goal of the tutorial is to teach the user how to how to record live broadcast.

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now