I have a question regarding external providers. For example: We get a ticket because of a printer that doesn't work any more. We try to fix it, but we can not. We have a contract with an external Company that we need to contact in case that the printer is damaged. Is there a way to create a E-Mail in the ticket for an external provider that does not have access to iTop? Or something like a forwarding function?
In the past I was working with OTRS but also with my old company that feature was not included inside our ticketsystem.
Cheers
Mel
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Create a new State for the Ticket object called Awaiting External or Send to External
Create a Trigger Based on that State for Ticket.
Create an e-mail action and work your way via OQL from the CI to the External Company linked in the contract.
If you can't get there via OQL, you might have to resort to a Database trigger on the Ticket Table for that particular State. Getting to the provider e-mail via SQL might be a tad easier.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
thank you for the reply. Does this maybe also work with the "Work order"? I have tried a little bit around yesterday with the "Work Order" and I found out that I can assign this to another Team. In this case I called it "Support Team for printers". The Team is part of the external organisation and has it's own e-mail address. I have created a trigger for "work order" but now my knowledge->0 about OQL ends somehow. I need to get in the Action the Team Name I have assigned this "Work order" to (or better the e-mail addresses of the members of the team).
Thanks,
Mel
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have tried the following expression inside the To-Field of an Action:
SELECT Person AS p
JOIN lnkPersonToTeam AS l1 ON l1.person_id=p.id
JOIN Team AS t ON l1.team_id=t.id
WHERE t.name = :this->t_name
If I test the query and I put in the Name of the Team, it gives me back the result I want to have. But if I create a "Work order" and I put in the Team that I have tested before in the test of the Query it gives to following error (also with other teams it doesn't work):
Fatal error: Call to a member function LoadInObject() on a non-object in C:\xampp\xampp\htdocs\itop9\core\dbobject.class.php on line 467
The trigger that I have created is a "create" trigger for "Work order" and it should normally send out an e-mail to the members of the team I have assigned the "Work Order" to.
It is the same Action I have used for the on ticket creation trigger but with a placeholder for the Team Name.
Cheers,
Mel
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I did not touch this now for more than 2 weeks and I found yesterday my mistake :( The expression doesn't work inside a Workorder but in a Query it works.
In a workorder it needs to be like this:
SELECT Person WHERE id= :this->agent_id
Looks really easy :) and it did the job.
If I want to contact now an external company in a ticket I create a workorder in the ticket and give it to a team-member of the external company and it will send out an e-mail.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I have a question regarding external providers. For example: We get a ticket because of a printer that doesn't work any more. We try to fix it, but we can not. We have a contract with an external Company that we need to contact in case that the printer is damaged. Is there a way to create a E-Mail in the ticket for an external provider that does not have access to iTop? Or something like a forwarding function?
In the past I was working with OTRS but also with my old company that feature was not included inside our ticketsystem.
Cheers
Mel
One possibility is:
If you can't get there via OQL, you might have to resort to a Database trigger on the Ticket Table for that particular State. Getting to the provider e-mail via SQL might be a tad easier.
Hi,
thank you for the reply. Does this maybe also work with the "Work order"? I have tried a little bit around yesterday with the "Work Order" and I found out that I can assign this to another Team. In this case I called it "Support Team for printers". The Team is part of the external organisation and has it's own e-mail address. I have created a trigger for "work order" but now my knowledge->0 about OQL ends somehow. I need to get in the Action the Team Name I have assigned this "Work order" to (or better the e-mail addresses of the members of the team).
Thanks,
Mel
I have tried the following expression inside the To-Field of an Action:
SELECT Person AS p
JOIN lnkPersonToTeam AS l1 ON l1.person_id=p.id
JOIN Team AS t ON l1.team_id=t.id
WHERE t.name = :this->t_name
If I test the query and I put in the Name of the Team, it gives me back the result I want to have. But if I create a "Work order" and I put in the Team that I have tested before in the test of the Query it gives to following error (also with other teams it doesn't work):
Fatal error: Call to a member function LoadInObject() on a non-object in C:\xampp\xampp\htdocs\itop9\core\dbobject.class.php on line 467
The trigger that I have created is a "create" trigger for "Work order" and it should normally send out an e-mail to the members of the team I have assigned the "Work Order" to.
It is the same Action I have used for the on ticket creation trigger but with a placeholder for the Team Name.
Cheers,
Mel
I did not touch this now for more than 2 weeks and I found yesterday my mistake :( The expression doesn't work inside a Workorder but in a Query it works.
In a workorder it needs to be like this:
SELECT Person WHERE id= :this->agent_id
Looks really easy :) and it did the job.
If I want to contact now an external company in a ticket I create a workorder in the ticket and give it to a team-member of the external company and it will send out an e-mail.