Flex Chat

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
portablecow's picture

Hello,

I've never posted in this group, but was trying to gauge interest in a Flex Chat application for Drupal that I've been working on. I'm a hobbyist so all my work on this project has been in my free time from my normal job so it's been slow going. I basically have an pre-alpha build of the module right now. It includes a flex chat services module I created to interface between flex and Drupal.

The basic application does poll the server at a customizable (via admin/settings interface) time frame for messages. It has 2 additional customizable timers to check for room invites and new users that have logged in. There is no additional server to install for my chat application. However, this may become expensive depending on the number of users. Eventually I would like to implement database caching so each session can read from the database cache instead of creating a new query.

I may grow the scope of the project to have it similar to a Facebook wall in realtime.

Some of the current features that I've implemented (some still need more work) are:
- room support (public and private)
- room invites
- delete rooms
- join public/private rooms (depending on permission level)
- user picture used for avatar in post
- uses rich text editor font color/size/style selection
- each user customizes their username color
- custom room background colors

Features I would like to add:
- smiley support
- moderator functions (delete posts)
- filter
- add images/videos to posts

Any interest in a module like this or are there already too many options? I can give interested parties a link to my demo site where you can check out the alpha build as long as you don't mind some lingering bugs.

Thanks

Comments

More Detail

johnstorey's picture

I am interested in some more details. I am finishing off some code that creates a private chat room in an eJabberD server from Drupal, then hands off authentication details to a Flex app running on Facebook. The Facebook app connects directly to the chat server using the XIFF ActionScript library. Mostly that is done to offload work from Drupal for scalability purposes.

Then I use Drupal as a way to share user Facebook avatar icons for everyone in the chat (they may not be friends on Facebook, so I can't get the icons directly).

There is some caching in various portions of this solution as well.

I'd love to expand this out to a full Drupal / Flex / XIFF solution that is basically a re-usable Feature someday, but if you are further down the road I might be able to get it all into your project instead.

Impressive Solution!

portablecow's picture

As I mentioned in my post my big concern for my project is the scalability of it. It would create quite the load on the server for large sites. It sounds like your solution is much more scalable and I also like the inclusion of Facebook since everyone is on Facebook and resistance is futile. I'm just using the AMFPHP server included with the services module to communicate to Flex. I have not worked with the XIFF ActionScript Library but initially looked into eJabberD as a server solution.

There may be a place for both solutions, but it seems to me that mine is much more limited in scope. I would also be happy to roll some of my project into yours as well and work with you on your project. It also maybe nice to offer a choice of servers, we could support both implementations. Eventually, I would love to expand this to Red5 and offer video chat as well.

I could message you my url and login info for my site if you'd like to try my application just forgive the bugs please.