ProjeQtOr free project management software - Creating tickets from a mail - ProjeQtOr
 

Creating tickets from a mail

More
22 Jan 2020 17:26 #1 by lsigroup
Hi,

I'm currently asked to think about a way to create tickets (probably to be reviewed after their creation) automatically in our ProjeQtOr from incoming mails on a mailbox exclusively used for this.

I was wondering If you had ever think about this idea and a way of doing it.

A cron-executed script connecting a the mail addrress and checking If non-treated mails are waiting would not be very complicated to do, and a good start, but the subject is becoming a bit hard when thinking about how to associate things written on the mail to the ticket structure ...

I mean, how to deal with missing informations to associate client who writes the mail and the requester on ProjeQtor

I will be happy to exchange with you around the subject

Best regards,

Please Log in or Create an account to join the conversation.

More
23 Jan 2020 08:45 #2 by 4ce
Replied by 4ce on topic Creating tickets from a mail
Hi There,

the cron job reading out a specific mailbox already exists.
Creating Tickets out of this box is, as i remember correctly, pointed out and there should be an existing ticket in the evolution/roadmap database from projeqtor.

I think this will be included in a future update

Please Log in or Create an account to join the conversation.

More
23 Jan 2020 08:47 #3 by 4ce
Replied by 4ce on topic Creating tickets from a mail
ticket id: #2199

Evolution Receive Tickets as Emails

Please Log in or Create an account to join the conversation.

More
23 Jan 2020 17:08 #4 by lsigroup
Hi,

Firstly, thank you a lot, because you're right, I didn't told myself that this idea could have been already thought and didn't seach on the trackboard.
I couldn't manage to find and old topic about this amelioration either, maybe It wasn't suggested to you (I mean was your idea).

It really could be a time winning feature.

So I read all the notes on the ticket, as said inside the only way is to create tickets automatically as "recorded" with a maximum of informations already given and someone qualifying it in a second time.
Identify the "requester" with his mail address (as it's the only real identifier that can't be loss by misstyping). And check if he is in the user database.

Maybe It would be necessary to have a mecanism that sort the mailbox with different folders (one per projects, one for the errors / spam) to make it easier to check / analyze
Perhaps something answering to senders that got on errors because couldn't be identified ?

I thought about another complicated case. When people are not directly sending mails but transferring it, maybe it's hard to identify the requester real in this case mhh
Maybe a mail object could have a property "is_transfer" in order to indentify those cases.

You also mentionned the cron job for incoming mails, we're currently using exchange access for our mailboxes so I'm unable to test it right now (I asked someone to configure IMAP access for this mailbox as he told me it was possible). So I can't really see what result we get with this feature for now ...

Can I have more informations on the thing itself, and if it's soon or far planned and how could I help you maybe ?

Thank you,
Best regards

Please Log in or Create an account to join the conversation.

More
31 Jan 2020 09:43 #5 by babynus
Thanks for your ideas.
You comment and ideas have been added to Ticket notes.

About existing IMAP reading feature, it can identify reply to emails send from projeqtor (the initial essage must be preserved in the reply).
Projeqtor is then able to identify the concerned object, the replier, and stores the reply message as a new note on the object.

Babynus
Administrator of ProjeQtOr web site

Please Log in or Create an account to join the conversation.

More
31 Jan 2020 14:52 #6 by lsigroup
Hi Babynus,

Thank you for your reply,

I will introduce myself a bit more to give you a better context in our discussion
I am currently a student following a part-time (enterprise / school) developper formation (3rd year), and I'm working on ProjeQtOr for my society.

This said,

I had help from my technical service wich configured me the IMAP access so I was able to test your "note from mail" functionality with my ticket-dedicated mailbox.
Works great !

After this,
I tried to adapt your functionality to create tickets (I copied the initial function / mecanism and modified it in order to have this running onto the cron)
Brasically I rushed it, mays not be very "clean" code. a lot of things are "hardcoded" because i didn't have the time to create and understand totally the "parameters" way of working. I just wanted a result to show my tutor before returning to school next week.

So I told myself that it could be useful if I gave you what I did, in order for you to gain time (perhaps not)

Here is everything I'm able to tell you :

I added a new private attribute to the cron objet : $checkMailTicket
I added a new public function : getCheckMailTicket() (didn't create a new parameter as I said, the value is hardcoded)
I added the gesture on the cron::run() function for my new treatment :
  • The checkMailticket() gesture
  • The test to see if the functionality is "enabled" (> 0)

Finally,
I did a new function for the cron object : checkMailTicket() - wich is the update of your previous mails treatment function for notes, does the same thing but with tickets
I kept all the parsing / mail reading part and updated the object creation part.
First, I tested if the sender was a "user" or a "contact"
With this, I can chose between "idUser" or "idContact" for the criterias and return all his affectations.
As we mentionned, If there is only one affectation, then I have his project. If there are severals then I give him a hardcoded "dummy projet" : TO DEFINE
I detailed my modifications with commentarys in the code.

I couldn't go further with attachments / images or forwardings ... Because I'm doing other tasks and I'm going back to school on Monday for 2 weeks.


I really hope that It can gain you time, and I apologise if it doesn't, I'm not yet comfortable with all the ProjeQtOr code/mecanisms and I don't know every developpment concepts yet as I didn't finished my formation (plus I'm the only one doing PHP at work here).

If you want to communicate a bit more with me on the subject (or everything elese) here's my professional email : This email address is being protected from spambots. You need JavaScript enabled to view it.

Here is the pastebin with code pieces from "/model/cron.php" : pastebin.com/2atwBF5E

Huge thanks for your time and consideration,
Best regards

Please Log in or Create an account to join the conversation.

Moderators: babynusprotion
Time to create page: 0.040 seconds