I need to connect to a third party application using one of the following methods, HTTP POST, SOAP or XML. I am totally clueless in how to get started. I need SC information to be posted to the application.
I suppose the method will depend on whether your connection to the 3rd party application must be per transaction, or on a periodic basis.
If you need to send the information periodically, extract the data from the OVSD database using data exchange. This will create an XML file, which you can use as you wish in the third party appl. This method has the advantage of being repeatable; you can recover from errors.
If you need to send the information on an event by event basis (for example, when an item reaches a certain status), then create a DB rule that is triggered by the required event. Within the DB rule, call an application or a smart action, passing to it as arguments the data you require from the item. All of the logic about how to send that data to the 3rd party app must be in the application you call, which can be virtually anything you like. For example, your command line can be the URL that calls the CGI that allows you to post the arguments coming from the OVSD item.
It would be periodically based on the users requirements. I did create a DB rule with the URL of 3 party appl which opens the page. I need to create a SC DB rule that triggers when a user selects it (like a button).
How do I setup the data exchange to work automatically within a db rule?
>>It would be periodically based on >>the users requirements. If you want a periodic interface, I wouldn't use DB rules at all. I would configure a job in a scheduling tool to run sd_export, which would create the xml file.
>>I need to create a SC DB rule that >>triggers when a user selects it >>(like a button). In that case, you need a UI rule, not a DB rule (although I suppose a button could also trigger a DB rule - just remember to reset the button at the end). Either you could set up an application that runs sd_export, and call that application using a smart action which is triggered by the rule, or you could execute directly the application from the rule. The problem with this is that the user performs an action (clicks a button), but does not really get any feedback if it runs sd_export. So you will probably want to trigger a script that does a whole load of things in addition to running sd_export. Otherwise, call a URL, passing to it the arguments. Let the 3rd party application give the user feedback.
I created the sd_export file that creates an xml file with no problems from the cmd line.
I created a button that will trigger the Smart Action.
I am not sure how to pass the values when a new SC ticket is created. I need to create the XML file with these values. I'm assuming the parameters are passed via the Smart Action and that I need to adjust the .ini file (add an condition)? I'm just not sure how to. I've looked for examples but could find any.
You need to create in OVSD an Application, which runs sd_event. You will pass to this application as parameters the values coming from the current Service Call. You will have an event, such as selecting a Smart Action from the menu, or clicking a button, or whatever, that either runs the Smart Action directly, or runs a rule that runs the smart action. The Smart Action calls the application you defined above.