Infos:
- Used Zammad version: 2.8.x
- Used Zammad installation source: docker-compose
- Operating system: Debian 9
- Browser + version: Chromium
Description
When editing groups in Admin → Groups, there’s an option “Assign follow ups” yes/no with the following explanation:
Assign follow up to latest agent again.
I didn’t really understand the purpose of this option, because when I (as an agent) e.g. reply and close a ticket, I am still the owner even when it’s closed - so why would there be any need to re-assign the ticket to me when the customer replies to the closed ticket?
My first assumption was that if I turned this option off, then Zammad might actually unassign the ticket from me and that only having this option enabled ensures that the tickets stays assigned to me. I went ahead and turned it off for Users and tested it:
- Sent a mail from my external email address to Zammad.
- Replied and closed with my agent.
- Replied from my external mail address.
But the ticket remained assigned to me, so that assumption is apparently wrong.
Then I assumed that it might do the following:
- Customer sends a mail from his external address to Zammad.
- Agent replies and closes the ticket, without actually setting himself as the owner. The ticket is now closed and has owner “-”.
- Customer replies.
- Zammad sets the ticket owner to the agent because he was the last one to reply?
I re-enabled “Assign follow ups” for the group and went ahead and tested it, but it doesn’t do that either - the ticket remained owned by “-”.
Then I assumed that the “Assign follow ups” option might be related to “Follow up possible” - maybe it only has an effect when “Follow up possible” is disabled? Maybe something like this:
- Customer sends a mail from his external address to Zammad.
- Agent replies and closes the ticket.
- Customer replies, but as “Follow up possible” is set to “do not reopen ticket but create new ticket”, the reply creates a new ticket.
- The new ticket is automatically assigned to the agent who replied to the old ticket.
I tested it, and it doesn’t do that either. At this point I’m thoroughly confused about the purpose of this option, so I grepped through the source:
martin /opt/zammad (develop) # grep -rl follow_up_assignment .
./log/development.log
./tmp/cache_file_store_test/552/5D0/Group%3A%3AUsers
./tmp/cache_file_store_development/5EE/8D0/Group%3A%3Aaws%3A%3A1
./db/migrate/20120101000001_create_base.rb
./db/seeds/object_manager_attributes.rb
./db/schema.rb
./test/unit/ticket_owner_reset_on_follow_up_test.rb
./app/assets/javascripts/app/models/group.coffee
./app/controllers/groups_controller.rb
./public/assets/application-9616c77ef23d30770ce982314cad60ea2f8a89b7c69c961eada0cd3d3e52b965.js
./public/assets/tests/ticket_selector.js
./public/assets/application-cb38283b375afe58df0132e329bdfd5b1b8a6a808b72679d46033ab6bf955377.js
./public/assets/application-d255dde521654440efbc676549a2ba68a46c572fd774fd09db95365cda574324.js
There’s not much there - it’s defined in the schema, there’s the user interface for groups, a single test creates a group with follow_up_assignment: true
, and that seems to be very much it. I haven’t found code that actually uses this option. Is it possible that is simply doesn’t have any effect?