Prism-Bukkit icon indicating copy to clipboard operation
Prism-Bukkit copied to clipboard

[FEATURE] Provide support for CMI chat channels to be logged in a:chat action lookups

Open GenSecrets opened this issue 5 years ago • 8 comments

Currently, CMI (a large popular multi-function Spigot plugin) has a chat channel functionality where players can /chat and start a persistent chat channel to talk without using commands. Once someone enters a chat channel, Prism does not log anything typed by the user inside that chat channel

Solution Since the user types out messages as chat messages and not through commands, the messages once found through the event listener, would be logged as chat actions in lookups. Simply /pr l r:global a:chat p:playername would grab all chat actions by the playername, both inside and outside the chat channels

Alternatives and additional context There are no work arounds other than not allowing the chat channels, since prism lacks the support for this logging. However for some additional information, I'm not sure how useful it is, but CMI does have an open API for use.

GenSecrets avatar May 17 '20 22:05 GenSecrets

I am fairly sure we are not going to add dependencies that hook other plugins unless it provides a general benefit. In generally I wouldnt be using prism to log chat - there are better ways of doing that. In fact you can create a fairly simple log4j filter to split chat into a seperate log file.

Narimm avatar May 17 '20 23:05 Narimm

I would appreciate comments from interested parties on this issue generally. Not just CMI but any others...

Narimm avatar May 17 '20 23:05 Narimm

Incidently Prism does support logging PLAYER commands - which I assume if enabled would log the CMI chat messages.

Narimm avatar May 17 '20 23:05 Narimm

I don't use CMI, nor do I use Prism to log chat. However, it can be useful to see a player's location, as logged by Prism, as part of chat logging. e.g., You know where to look when a player types, "Look at this giant peepee I just built!"

As far as dependencies are concerned, Prism already has 12 dependencies. What's one more?

Prism dependencies:

paper-api paperlib DripReporterAPI metrics-core metrics-healthchecks worldedit-bukkit slf4j-api gson bstats-bukkit annotations HikariCP paste-gg-api

Bobcat00 avatar May 18 '20 14:05 Bobcat00

I guess my point was that do you keep adding dependency for every chat plugin? Do you add it for plugins that you like?
I think if we add dependencies they need to bring value to the majority AND be unable to be implemented with out the dependency ...I find it odd that if you turned on player command longing and chat logging that CMI's commands and chat would not get logged.

Narimm avatar May 18 '20 15:05 Narimm

Perhaps CMI uses Bukkit's Conversation API, which very few people even know about. I don't know if it provides any events, but logging inputs to the Conversation API would be a generic enhancement.

If CMI has its own internal chat mechanism, I agree we shouldn't add code to deal with that.

Bobcat00 avatar May 18 '20 21:05 Bobcat00

I thought the conversation Api was to handle plugin-player interaction in a flow type mechanism not for actual chat

Narimm avatar May 19 '20 00:05 Narimm

Ie Plugin Setup Plugin>Do you want to enable debug? Player > No Plug > Please enter your database name? Player> someDatabase

and so on

Narimm avatar May 19 '20 00:05 Narimm

This repository is no longer active. You can try to resubmit this at the current Prism repo here https://github.com/prism/PrismRefracted

viveleroi avatar Apr 13 '23 03:04 viveleroi