Email Commands -- Tickets Anywhere Like Functionality (Code or Trigger Solution?)

Hey there,

We are thinking of switching from Spiceworks to Zammad, and one feature I use all the time is TicketsAnywhere. Essentially its a set of email commands that you can use to control the state of a ticket.

I am a relatively experienced coder (although new to Ruby) and would be more then happy to implement something like this. I tried looking at triggers but there isn’t a way to trigger the closure of a ticket when #close is in the email.

Just basic functionality like #close would be great, but I’d love #assign to [Name] as well.

Does anyone have any pointers / tips / suggestions on how this might be workable?

Here is the full list of spiceworks tickets anywhere functionality (from

Add time worked to a ticket:
#worked 10m
#add 2h to
#add 2h 30m
Set ticket priority:
#priority high
#priority low
Close a ticket:
Set due date:
#due 3 weeks from today
#due tomorrow @5pm
#due July 15, 2013 at noon
#due 3 businessdays from today @ noon
Assign the ticket:
#assign to Ford
CC a user (user must exist in your people inventory):
#cc Ford
Make the comment private (i.e. add a private note):
#private (this will apply to the entire email)
Accept a ticket:
#assign to me
Create a ticket for someone else:
#created by user_email
Set custom attributes:
#set attribute name=attribute value (ex: #set Floor Number=13)
Categorize the ticket:
#category maintenance
Mute a ticket:
#mute off
Reopen a closed ticket:
Unassign a ticket:
Place ticket in “Waiting on user” status:

If they are coming through email, you might be able to duplicate some functionality of that with a mail filter.