I’m at a loss, but this feels like it’s so basic there must be some way…
I have an RT system that cannot accept inbound mail (for now at least, possibly forever). In fact, I’d prefer it not use email at all - it’s meant for internal use.
However, we still receive emails from our customers/users that we’d like to track in RT - with the appropriate email addresses etc. in case we ever do open it up for external email.
I can enter my own replies and my own comments, that’s easy; but how do I enter a comment/reply on behalf of a user?
This seems like it should be a no-brainer, but I can’t find a way to do so. (What if a user phones you - you have to be able to track that somehow!)
I think you’re going to find this difficult, because RT is built assuming email based transactions (both outgoing and incoming) and assigning transactions based on emails or who is interacting with the Web UI. The lib/RT/Interface/Web.pm that implements updating tickets via the web UI uses $session{'CurrentUser'} for example, so it is going to attach the current web user (priv or unpriv assuming they have the correct rights to make replies/comments) to the transaction recording the reply/comment. Having said that you might want to see if the RT-Extension-BecomeUser would work for your situation as I think that can allow unpriv users to become other people. Though personally I’d want people who could become other people to be priv - is there a particular reason why the people you want to be processing your tickets on behalf of customers can’t be made priv and put into group(s)?
FWIW when we have a phone call that might be of use a comment is added to say something like “Phoned by Jim Smith who asked for the flange-wurzle to be regrommited” but that will be recorded under the name of the person who took the call and logged the comment. The ticket will be owned by the requesting user though.
Tha t is not the way a ticketing system works. It is meant to track who interacts with the system for documentation, SLA proovement and so on. It it not worthy to such a system to fake another user if doing anything.
Maybe a transaction-CustomField or mayby a Custom Role (don’t know them well) will help you. So the agent documents the incoming phone-call and you see who took the call. With the CF he would be able to document the person he is talking with.
You should strongly think about making your users privileged with appropiate rights. The unprivileged users are supposed to be the clients of the system who might log in.
We currently don’t accept inbound emails, yet we need to track customer emails within RT for future reference. While I can log my own replies and comments, I’m stuck on how to accurately record comments or replies on behalf of users who contact us through other channels, like phone calls. Essential for maintaining thorough records.
Seeing @Finnley’s reponse today brought me back to this post, and re-reading your original post, I realised that this question is probably the heart of the matter - if you could do as you would like and somehow change the person recording the correspondence, how would you track which agent took the call?
I think in either case, you will need some sort of way to record “the other party”.
What we do in the case you mentioned, is that we record details of the call in the ticket, under the agent’s name, usually as a reply that summarises the call for the caller. But then we do use email almost exclusively, that is really the core power of RT.
In your case, I would add the caller to the ticket as either a CC or a Requestor, and record details of the interaction. If you’re not using email, then that will probably be fine for your use case, otherwise a custom role as others have suggested would also be possible.