ticketit icon indicating copy to clipboard operation
ticketit copied to clipboard

Issues with Email

Open tmcdon89 opened this issue 9 years ago • 17 comments

  1. It does not add the reply email as a comment to the original ticket, instead it creates a new ticket for the reply email It looked like your email subject was showing as the ticket subject rather than "* added new comment on ticket *" This would be why. I'm not sure if the subject wasnt sent out correctly to you from the comment email or what the issue was, but thats the string that the emailcontroller looks for in the subject line to determine that the email is an existing ticket.

  2. It could not download and attach the email attachment I'll take a look at this. I had mine working correctly but may have changed something since the last time I checked it.

  3. It could not filter out the signature Unfortunately I'm not sure how to filter out the signature. But if it correctly tags a ticket as a comment instead of a new ticket it should successfully remove all previous reply's etc....

I've got some more testing to do but I'll post updates and any further questions I may have for you in this issue here.

Thanks!

tmcdon89 avatar Jan 04 '16 15:01 tmcdon89

You have done a great work, and I wish I could be more helpful to you, may be couple of days and you will find me working on this issue with you.

thekordy avatar Jan 04 '16 19:01 thekordy

I'll set up a test and see if I can help.

fishmad avatar Jan 19 '16 13:01 fishmad

I'm right working on it. I'll making a commit in about 10 minutes

balping avatar Jan 19 '16 14:01 balping

Nice

fishmad avatar Jan 19 '16 14:01 fishmad

Sounds great! I've been swamped and havent had much time to tackle debugging it.

tmcdon89 avatar Jan 19 '16 14:01 tmcdon89

That's the spirit :+1:

thekordy avatar Jan 19 '16 20:01 thekordy

Oh sorry guys, I thought it was the other issue... https://github.com/thekordy/ticketit/issues/122

I wan't working on this. But I'll check it tomorrow, now I have plenty of time :-)

balping avatar Jan 19 '16 20:01 balping

Auto assign now works

https://github.com/thekordy/ticketit/commit/3d601cb05d16b1dcf65555b7639f0903a13b2084

balping avatar Jan 23 '16 13:01 balping

I found this package: https://github.com/willdurand/EmailReplyParser

Others have already done this functionality before, maybe we could use it. What do you think?

balping avatar Jan 23 '16 18:01 balping

I personally have no issues using more packages as long as they accomplish a new task or more completely fulfill a current one. It looks like it does some work with signatures in addition to replys so thats definitely a benefit.

tmcdon89 avatar Jan 23 '16 19:01 tmcdon89

But that package works only with emails in english language, and yet it won't connect the reply email subject with the original ticket.

I have an initial idea to resolve this:

  1. To connect reply email with the ticket, we may add the ticket id to the subject of the first confirmation email sent to the user created the email, ex: "My issue subject [id: 123]" .. this can be checked by a simple regex .. also all communication emails should include the id in their subject.

  2. To remove quoted text, Some providers include a static expression to show users where to write their reply, ex: ###### write your reply before this line ####### ... but I haven't thought yet about how that could be done in multilingual environment.

thekordy avatar Jan 23 '16 20:01 thekordy

For 2)

We can still use some regex for ###### no-matter-what-text-is-in-here #######

For example: #{6}.+#{6}

Or:

######
Write your reply before the line above

In this case again, it doesn't matter what is written below the may #-s.

Or since everything is stored in language files, we can search for a translated string. There's no real difference. Even if different users have different language setup, we can always identify the necessary translation file.

balping avatar Jan 23 '16 20:01 balping

And yeah, 1) would solve many issues.

However I think it's time to change from incremental ticket id's to some kind of uuid / hash / random string solution. Users should have minimal information about tickets not created by them.

balping avatar Jan 23 '16 20:01 balping

In this case again, it doesn't matter what is written below the may #-s.

You are right, that would solve it with minimum impacts and won't be affected by translations.

However I think it's time to change from incremental ticket id's to some kind of uuid / hash / random string solution

Yes, and it would help us in future when we offer guest tickets, they would follow the status of their tickets by providing only the ticket id and their email address.

thekordy avatar Jan 23 '16 21:01 thekordy

I think another thing is left, to make this runs automatically on intervals

thekordy avatar Jan 24 '16 19:01 thekordy

I agree. My intent was to just set up the laravel scheduler to run the "getEmails" method on intervals.

tmcdon89 avatar Jan 24 '16 19:01 tmcdon89

I think we can make a catch-all mail. Then generate a unique ID for each ticket

[email protected] [email protected] [email protected]

So If he replies that unique ID we can match it with correct ticket.

zek avatar Mar 02 '16 23:03 zek