Forum OpenACS Q&A: Messaging / chat functionality

Collapse
Posted by Gaven Eogan on
Hello all,

I am looking to add a new messaging / chat functionality to an OpenACS based system.

Requirements as follows:

So that users can send messages or ask questions etc. between themselves and other users of system. What we want to try and do is avoid all this communication going out to external email systems and not being able to keep track of all this communication as a result.

A user would be able to see if they got new "messages" from someone else on the system.

I presume it would be similar to the type of notifications you get on any online forums where you see a new email icon and count of new messages pending.

I think maybe an external email would also be generated to notify people they have a new message in system (it wouldn't give them actual message in email though - so forcing them back into system first)

So is there anything like this in OpenACS at all?

Collapse
Posted by Antonio Pisano on
Dear Gaven,

OpenACS doesn't have exactly what you are looking for out of the box, but all the building blocks should be there.
- chat package: this allows to create chat rooms where allowed users can communicate in real time. It is based on a Comet implementation. [1]
- forums: this package implement the forums we are writing on right now 😊 [2]
- notifications: it's a component that can be used by other package (like forums does) to subscribe to events happening on a particular object on the system and generate a reaction (typically some email being sent, but can be extended to whatever reaction through callbacks). This package is the one implementing the "Request Notifications" feature in this forum. [3]

Something else you might be interested into is websocket support in NaviServer, which can be used to implement a chat as well. Currently this is not used in any OpenACS package, but a demo implementation of a chat is there to use as a reference [4]

Hope this helps

Antonio

[1] https://openacs.org/xowiki/chat
[2] https://openacs.org/xowiki/forums
[3] https://openacs.org/xowiki/notifications
[4] https://bitbucket.org/naviserver/websocket

Collapse
Posted by Gaven Eogan on
Thanks for reply Antonio. I am familiar with the OpenACS packages you mentioned but I never heard of and don't really understand this websocket stuff. I'll have to study it. I was actually thinking of something similar to this talkjs.com system. If it doesn't exist I might try and do a simple version of it, and not going back to their server for storage.
Collapse
Posted by Antonio Pisano on
Sorry for giving you infos you already had, in fact looks like you are around with OpenACS sincle way longer than me 😊

There are some web-based embeddable chats around that are FOSS and similar to the application you pointed me to. In general they require a jabber server to take care of the communication (e.g. https://prosody.im/). Integrating with an existing OpenACS website might be some effort, so I don't know exactly if rolling your own code or going for one of these is better or not.

One example of such products to give an idea:
[1] https://conversejs.org/

Ciao!

Collapse
Posted by Gaven Eogan on
Yes using it for way too long. Since when it was just Arsdigita Community System in fact! I don't go on forums very often though.

Thanks for your answers. I am working on something else at the moment so will get back to this.