What do you mean in memory? Store the messages in the application cache? Of course, it may not be your decisions, but why doesn't your client want to use a db?
On Dec 25, 10:53 pm, Trenatos <[email protected]> wrote: > It definitely helps! > > I was thinking about simply keeping the last 10-20 messages in memory > (And cycle through for new messages), and update all clients once a > second or so with the full list, if it has changed since the last > push. > > And for private messaging to use the session IDs/Username to specify > sender and target. > > Encoding the transmissions is not something I had thought about, but > will be used (Even though the chat is for non-sensitive information, a > modicum of security would be nice.) > > I'm hoping to have a beta framework built within a few days to a week, > never having worked with AJAX or sessions manually before. > > Thank you Aaron, I appreciate the help :) > > /Marcus > > On Dec 25, 10:41 pm, "Aaron J. White" <[email protected]> wrote: > > > > > > > > > Well, I've created a chat system in SharePoint 2010 which I thinking > > of making open source. Even though I did mine in jquery/sharepoint it > > would be really easy to mimic it in openbd. > > My advice: > > > I highly recommend using a database. You probably only need one table. > > You can easily setup a scheduled task to delete old data if that's a > > concern. > > A chat is really just a list so use a UL to display your data on the > > page. Each message has an id. When a user first comes into the chat > > query your DB for the last message and put the information into the UL > > hidden. Now using jquery inspect the chat UL element for the last LI. > > Each LI will hold things like the message, author and most importantly > > the message id. Every 10 seconds use javascript/jquery/etc to check > > your chat UL for the last message id and then do an ajax call to your > > DB for any chat message with an id GT the last id on the page. This > > system has been really successful for me. > > > Also, remember to URL encode the user's messages when submitting them > > via ajax and of course decoding them before displaying on the page. > > > Hope the above is helpful. > > > On Dec 25, 6:38 pm, Trenatos <[email protected]> wrote: > > > > I've been tasked with putting together a new chat system for a > > > website. > > > My plan is to do this in CFML, probably deploying it behind Apache > > > with Tomcat. > > > > I have tried looking at a few existing solutions, but all the free > > > ones have been broken, and the non-free ones are expensive. > > > > So I'm looking into how to do it by myself. > > > > Tonight is only brainstorming. > > > > So, my plan is to start with looking into sessions, and how to pass > > > use AJAX with OpenBD to pass the updated messages. > > > > A little clunky is fine, I can refine it over time. > > > > Databases not need, we don't need to retain information long-term, so > > > keep only the last 20 messages in memory should work just fine. > > > > Each message being upwords of 6000 characters, it'll be interesting > > > putting this together. > > > > They also want custom functions, such as coloring of text between **, > > > *this text would be green, for example* > > > > There is a current system in place on the old server, however, the > > > person who implemented it is no longer around and it's built in python > > > or something else that requires a server (Runs with its' own linux > > > daemon). And for whatever reason, it doesn't want to start up on the > > > new server. > > > I'm not in charge of moving to the new server, that job went to one of > > > the old techs (He has no idea how the daemon works either), and I'm in > > > charge of the whole thing after the move is done. > > > > I know, I know, I'm rambling on here. > > > > Anyway, yes, my idea is to implement a CFML/AJAX solution, which I've > > > been using for about 3 weeks or so now :) > > > > Wish me luck, and if anyone has any advice I'd be more then willing to > > > take it. -- online documentation: http://openbd.org/manual/ google+ hints/tips: https://plus.google.com/115990347459711259462 http://groups.google.com/group/openbd?hl=en
