We need a BoF view that will be syndicated on CCC television screens. I got a start on this, which can be viewed here http://pixelwhip-denver2012.redesign.devdrupal.org/bofs/marquee.

This consists of

  1. A new page view.
  2. A custom page--bofs-marquee.tpl.php which strips out all the extra blocks and regions.
  3. A marquee tag. That's right suckas, I found a use for it!
  4. A jQuery plugin that smooths out the scrolling of the native marquee.
  5. Some page specific styles.

It would be best if this were to run in Chrome as anything that scrolls forever is going to be cpu intensive. This particular script was the best I could find in that regard. There are some tweaks that could be made, but I need sleep.

Comments

sirkitree’s picture

Personally I think that takes too long. I'd rather see a bunch of information instantly, and it cycle through the time slots, or days or something. Instead of scrolling, show as much as possible, and then pop to the next screen of information.

coltrane’s picture

From mpotter:

So to give a better understanding: There will be two large plasma displays near the BoF rooms that will have a PC running a web browser. We need it to cycle through a single-day's BoF schedule.

I looked at your rotator at http://drupal.org/node/1018084 and it's a good start. But the idea is to have the entire page rotate (or at least most of it, maybe a DrupalCon logo or banner would stay put). I'm thinking of maybe a blue background with white text to match the look of the site.

The info showed would be the Name of the BoF, the Room, and the Time slot. With a font size large enough to read easily from a distance.

So if your current rotator was expanded so each box took up the full width of the page and had the time information, I think it would be close. (remove sidebar, etc)

Only other issue is to how to make it automatically wrap around and start over. This would be left unattended all day.

Are you still able to work on this? If not, I might be able to help on Monday when I get there.

pixelwhip’s picture

The benefit of auto-scrolling is that we don't know how long the view is going to be for a given time slot and don't know the resolution of the monitors. The current solution sets the regions to a fixed percentage of the screen size and lets the list scroll through from start to finish. So it should work on any monitor.

With that being said, I agree it is slow and doesn't allow you to see all the info at once. An ideal solution would show a grid of all (12?) rooms for each timeslot and the BoFs that are scheduled at that time. Then we can cycle between times every 20 sec. or so. This has the benefit of showing which rooms are available in addition to which are scheduled. It also allows us to predict how much content will be on the screen so it can be sized in percentages. Is it possible to create such a view, being that the room is referenced from the bof rather than the bof being referenced the room?

We also need to figure out a way to refresh the view or page periodically so the information is current. Jerad, why don't you whoop up something in node so this gets updated in real time :) Actually that may not be a bad idea. The markup is simple enough and the styles can be pulled out easily. This page could just as easily point to some other server running node.

I honestly don't know when I'll have time to do much more work on this. My day today is packed and I'll be in a training all day Monday. So, what is the next step?

sirkitree’s picture

I could work on this tomorrow during the hackathon. Do we have the TV/monitors that this'll be displayed upon so that we can test in real-time?

I might start on this tonight to get something working for real-time updates using Node.js - thanks for the suggestion John!

coltrane’s picture

Jerad, there's a JSON feed at http://denver2012.drupal.org/api/bofs if you'd like. But you'll have to do filtering and sorting yourself.

sirkitree’s picture

Also, this would have to be near-realtime, since it'd be on one of my servers, and I won't have the live db to query I'll have to scrape.

sirkitree’s picture

Assigned: pixelwhip » sirkitree
Status: Needs review » Needs work
Anonymous’s picture

i'm happy to help with this.

sirkitree’s picture

Got a quick start on this here: https://github.com/sirkitree/BoFscreen

sirkitree’s picture

Looking at this now - just saw there is a json feed :P

That being the case we can do this all with front-end javascript using jQuery.getJson(); and just update the DOM

sirkitree’s picture

@coltrane: is there a jsonp version of this feed so i can pull it cross domain?

sirkitree’s picture

  • current github repo has express presenting a basic page.
  • think we can do this with front-end js alone ($.getJSON() parse and update page)
  • needs jsonp to work cross domain
  • if we can't have that, perhaps just throw the js we come up with into pixelwhip's current working page
coltrane’s picture

@sirkitree created http://denver2012.drupal.org/api/bofs-jsonp which is prefixed with "feed" so http://denver2012.drupal.org/api/bofs-jsonp?callback=feed should be consumable.

mpotter’s picture

The page at http://pixelwhip-denver2012.redesign.devdrupal.org/bofs/marquee looks really great! We just need to get that moved to the main drupalcon site and I think we are all set. I assume it's set to show the sessions for the current day?

I'll try to track down the monitors today and see how it looks live.

Jerad: do you have a demo page for your rotator? Or is your code already integrated on pixelwhip's site?

sirkitree’s picture

@mpotter: I have nothing to show yet. If pixelwhip's is fine with everyone, then we can use that and just refresh the page manually after every timeslot. I was just trying to come up with something because it was suggested by pixelwhip.

I certainly have other things I can be working on if what we have is already fine. No need in duplicating efforts here. Please let me know.

sirkitree’s picture

@coltrane, the feed seems malformed. I keep getting this error.

Only local images are allowed.

sirkitree’s picture

NM - we're using johns original. we tested on a monitor this evening and it looks great :)

The one thing is that we need to insert some js to only show the next time slot. I've a start on some.

jQuery("td.session-title").next().each(function() {
  console.log(jQuery(this).text().trim());
  var times = [10:45am, 11:45am, 01:00pm, 02:15pm, 03:45pm, 05:00pm];
  if ( jQuery(this).text().trim() != "Tue, 11:45am - 01:00pm" ) {
    jQuery(this).parent('tr').hide();
  }
});

Of course this still needs some work in the morning. Need to get what time it is now, formatted, and then compare and hide irrelevant ones. But tired now. More in the morning!

mpotter’s picture

Hey guys. Do we have a URL this morning? The original one from pixelwhip isn't showing anything. Setting up the monitors in the 500 and 200 hallways this morning.

mpotter’s picture

Took another look at the scroller at http://pixelwhip-denver2012.redesign.devdrupal.org/bofs/marquee and while it's showing some data again, there is something wrong with the feed. It does not show all of the BoF sessions at 10:45.

I took an informal poll of people around me and they agreed that scrolling the entire day schedule is bad. For now I've just got the screens pointing to the BoF schedule page to show the next block of upcoming sessions. If we can incorporate jerad's js to limit the scrolling to the next 2 time slots (and not show anything in the past slots), that would be great assuming we get the data feed working also.

If not, I guess I'll just update the screens manually through the day whenever I can.

BTW: The laptops are not locked or password protected, so if you get something going during the day, feel free to change the URL. Just be sure to leave Firefox in Fullscreen mode when done. I'll keep monitoring this thread throughout the day.

coltrane’s picture

Status: Needs work » Needs review

This is now up at http://denver2012.staging.devdrupal.org/bofs/marquee

Please confirm that it is correct

coltrane’s picture

pixelwhip’s picture

I updated the 2 TV screens with the new url.

pixelwhip’s picture

Status: Needs review » Needs work

The sessions seem to not be getting updated when it refreshes. I'm guessing it's because the page is being cached for anon users. Is it possible to exclude this page from page caching?

coltrane’s picture

@sirkitree can you just log in to the site?

if you need an account hit me up on irc for the password for account "everydayuser"

edit: it's probably possible to have that page excluded, but you'll have to get somebody on the infra team to do that