The first three issues were resolved by changing the email address of the default Joomla "Super User". It was configured with the same email address that is being used for incoming email tickets. This address is also the same used in the Joomla Global Configuration>Server>Mail Settings.
Yup, that makes sense. It's a good idea to have a different mail address for the site and the ticket system. Otherwise you get the ticket system talking to itself.
Let's say your site uses address A for itself, the ticket system and the default Super User. Here's what will happen.
The client sends an email to the ticket system, i.e. at address A. This is read by the mail fetch and creates a ticket. It also sends an email to all managers. This includes the address of the Super User which is the same email address A.
The email has a reply line that references the ticket ID. The next time the mail fetch runs it sees that email. Does it have a reply line? Check: it's a reply to a ticket. Does it belong to a known user? Check: it belongs to Super User. Does the user has reply rights to the ticket? Check: the Super User is a de factor ticket manager. Therefore it takes the text above the reply line (i.e. nothing) and submits it as a reply to the ticket.
Now two things happen. A ticket manager just replied to a new ticket so they are auto-assigned the ticket. This explains why all tickets are assigned to the Super User.
Since a reply is filed to a ticket assigned to a manager no manager gets emailed. The user who filed the ticket, however, is sent an email being told that the ticket received a blank reply.
I am still investigating the last issue, as the tickets are still being changed automatically to "unpublished" after a short interval.
This is really weird. The email fetch only has code to publish items, nothing to unpublish new or existing tickets / posts.
Both automatic replies and instant replies on mail fetch only submits posts, it doesn't change the ticket publish status. Even the auto-close CRON task will close a ticket, it won't unpublish it. The only two ways to unpublish a ticket are by manual action through the front- or backend when you are a ticket manager. Since these actions are behind a login and do ACL checks they won't be triggered by something crawling the page.
Therefore, unless you have set up the guest user as a ticket manager I don't see how that could happen.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!