Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Extension Idea: Spy

edited October 2007 in Vanilla 1.0 Help
I've noticed a feature/mod/plugin for a certain "v"ersion of another forum, and I'm curious if anyone else has found this useful when visiting forums that run this particular "v"ersion. They dub it as forum spy, and in a nutshell (for people who may not have seen it in action) it's an auto-refresh script through ajax that reads a file/rss feed and updates the display accordingly. Someone adds a post, and the file is updated. Then if you're on the spy page, when it refreshes you can watch new posts being added. If you want to participate, you can click the post or category, and it opens in a new window. Essentially, it saves time refreshing the main forum display, and looking for new posts of interest. It also allows you to designate which categories interest you, and it only displays posts from the past XX minutes. Most seem to limit it at 30-60 minutes, from what I've seen. This isn't necessarily something for a less active forum, but for higher traffic ones it can be really handy to keep up on a few categories of interest instead of browsing them all from the main page. The discussions page of Vanilla is kind of similar, but this is a little bit more than that. Has anybody else found this useful in other places, or have an interest?

Comments

  • Sort of like digg spy?
  • Yepper. Which is where I believe the other idea was spawned.
  • Love the idea, as long as I don't need a stand-alone server just to support these 'voyeur-only' sessions
  • i guess it should only refresh for members. the guest will have to do manual refresh
  • I would just make the page available to logged in users only, in that case.
  • Just remember though, the page isn't exactly refreshing. Just the little list in the middle that reads a text file every so often. Whether that's xml or not, I don't know. But, consider this. Let's say you have 100 visitiors sitting on the main page hitting their refresh button once every minute. What would eat up more bandwidth? The refresh, or letting an ajax script check a file for updates and if there aren't any then it doesn't update any content? It would take out database calls too, which would save some overhead as well. So actually having it available to non-members as well might not be a bad idea. The ones I've seen on forums (excluding digg), timeout after something like 15 minutes of inactivity on the viewers end. So someone can't just load it in another tab, and let it run all day. It's overall a pretty handy gadget to have on a picnic, as long as the forum it's on has plenty of activity.
  • Thunder, I have often yearned for that type of thing. It would be great to have a truly 'live' site....with the latest posts showing up without clicking on page refresh.
  • Hmmm. Since "vanilla-spy" functionality does not necessarily need to be tracked it may be possible to do this without impacting the server too much. On the *server side* every comment or discussion post results in an update of fixed- length (e.g. 20 items) in-memory array (linked list to keep it easy) of XML-formatted posting title, dat/timestamp, discussion stats, and 'owner'. Some *client-side* javascript code pulls the latest additions to the linked list and formats them on-screen. Since data is in-memory disk or DB interaction is required only ONCE per posting (not per request). To keep things fast category- and/or user-block filtering can be omitted (though the former could be taken care of client-side). (note: not an experienced AJAX programmer, so perhaps I'm full of %^&% here)
  • You could just add a tab with that tab-whatsitsname-extension and have an ajax script that refreshes a display (via Magpie) of the main forum RSS feed. Set Magpie cache to something low and match it with the Ajax refresh timer. ta-daaaaa
  • That would use a lot of server resources (as it retrieves the full list, not just the latest items).
  • edited October 2007
    Just thought I'd throw this out there: jQuery Spy. Should work pretty well for this application if someone wanted to hack it together.
  • Perhaps this could be developed as an external piece of code which you can plug into your site? This in some way's is slightly similar to that other thread where we were trying to achieve an 'automatic discussion update'.
This discussion has been closed.