Giter VIP home page Giter VIP logo

Comments (10)

ewsterrenburg avatar ewsterrenburg commented on July 28, 2024

@toshiro92
The OTRS manual states the following:

TicketUpdate

TicketUpdate operation adds the capability to modify attributes from an existing ticket or to add a new article, including attachments and all defined dynamic fields for the ticket and the new article.

Note: It is not necessary to create a new article to modify a ticket attribute.

So, no modifications for the existing articles... Which makes sense from a transparency view: you can't edit this in the web-interface either.

What I expect your code would do if it were working is add additional articles with the updated content....

The error seems to be caused when the charset is set to the value that is read from article read from soap. In my case: soap returns utf-8, while when creating an article, i'm using UTF8

from python-otrs.

toshiro92 avatar toshiro92 commented on July 28, 2024

Hum, I think this is because I have an addon which allow the article Edition when it is a Note. Is there any way to delete an article ? Because I could get data, create a new Article and then delete the old one ?

Also, I saw on OTRS perl API that a ArticleUpdate() currently exists, as also on the list of Events into the Web Service Configuration details. Could it be another way ?

The way I currently could do is to connect directly on OTRS database and update the article Table.

from python-otrs.

ewsterrenburg avatar ewsterrenburg commented on July 28, 2024
  1. You can't delete an article either (you could do it directly on the database, but even then you need to remove some other records (history, flags) first).
  2. It seems this operation is indeed available from the webservice functionality. However it would require your own custom webservice configuration in OTRS and writing a Custom Web Service Connectors as well. The standard generic ticket connector does not have this functionality.
  3. That should work :)

from python-otrs.

mjducharme avatar mjducharme commented on July 28, 2024

Hi,

At least in version 5, I do not see a TicketUpdate operation. This functionality appears to be an Invoker instead of an operation. OTRS Invokers are used, say, so that when OTRS detects that an article has been updated, you can have an invoker place a web service call to some other system to update it. It is therefore OTRS itself that is pushing the updates to a remote system using invoker code.

So, the ArticleUpdate thing that you see is really just a method to DETECT ArticleUpdate events that occur in the system and allow you to hook in web service calls to other systems so that OTRS will do some kind of configured SOAP or REST call to a separate system as a direct result of the Article Update. It doesn't update an article from what I can see.

There is a further aspect to this. OTRS does not support Article updating/editing out of the box. The reason is the same reason why any professional accounting system will not allow you to directly edit previous posted transactions - instead you need to post a correction. Otherwise, people could edit previous data for potentially nefarious purposes. The articles should serve as the history of what went on with a ticket with no ability for technicians to go back and 'rewrite their history' (ex. to make their past troubleshooting efforts seem more normal and effective if they have been given warnings from management).

from python-otrs.

mjducharme avatar mjducharme commented on July 28, 2024

Example Scenario: A technician has been given multiple warnings by management that he or she is not asking whether the customer's computer is plugged in early in the troubleshooting process. One day, after these warnings, the technician spends two hours on the phone with a customer, documenting the troubleshooting with various updates, and then the customer discovers it wasn't plugged in and then it works. The technician then decides to edit an article near the beginning, to state that they asked the customer to check whether their computer was plugged in, and received a response that it was. Of course they did not do this in reality, but they might edit such an article to say they did this if they thought it would save them from disciplinary action. The technician is able to 'rewrite their own history' to make their actions look more favorably on them.

This is why it is a universally bad idea to edit articles, I would not suggest using any special add on to allow editing notes.

from python-otrs.

ewsterrenburg avatar ewsterrenburg commented on July 28, 2024

I agree usually you shouldn't want to mess with the article sequence of a ticket and fully understand why this is not available from the web-interface. I would also depend on how you are using OTRS: in our organization, it is more a way of logging customer questions/problems of a diverse nature. It is not used for proving performance in relation to a SLA, strict time accounting or evaluating agent performance etc. Being able to edit or delete notes could make this history less "polluted" here.

None-the-less, I fully understand why it is designed the way it is, and think one should not mess with that approach. If you really think you need to be able to edit articles, you should seriously question if you are using the correct workflow / working processes / software tool...

I really have no idea if it would technically be possible to do so though (I assumed @toshiro92 had dug up a list of operations available for writing your own webservice here, but do not know enough about the inner workings of OTRS here...).

Sometimes I do remove (test-)tickets by directly connecting to the database and it works like a charm. Would not recommend to incorporate updates directly on the database in a production workflow though.

from python-otrs.

mjducharme avatar mjducharme commented on July 28, 2024

@ewsterrenburg there is an official way of deleting tickets in OTRS through the WebUI - you can use the GenericAgent in Admin menu to match tickets based on certain criteria and delete them. It is only available through there so that technicians cannot delete tickets. Its incorporation in the GenericAgent is mostly for clearing out old data - for a system that has been in operation for a decade, ticket information that is more than 6 years old might not be useful anymore.

from python-otrs.

ewsterrenburg avatar ewsterrenburg commented on July 28, 2024

Thanks for the tip (at least in OTRS 4 it's hidden quite well :).

from python-otrs.

toshiro92 avatar toshiro92 commented on July 28, 2024

I am also agree about the fact an Article must not be modified. However here this is about "Notes" which are created on OTRS ticket, and can be edited on GUI interface.

I've tried the update case on article table, but it does not change the value on the GUI interface. I think an existing cache is present between the webserver and the DB...

from python-otrs.

mjducharme avatar mjducharme commented on July 28, 2024

@toshiro92 you cannot normally edit notes through the OTRS user interface. If you have the ability to do this, it is due to a non standard add on you have installed.

from python-otrs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.