The Agentry Client API for external processes provides four methods that may be called by an external process to request information and data from, and to invoke transactions and execute actions on the Agentry Client. In order to use this API the external process must be built using the resources provided by the Agentry Client SDK for this API. The resources provided were built and are maintained using Visual Studio 2008 in the Visual C++ language. These same tools must be used to build the external process that is to make calls into the API.
The Agentry Client API for external processes does not include any corresponding controls or other similar components within the Agentry Client. It is limited to the methods made available to external processes to call.
Each of these methods includes a parameter containing the Agentry Client context object. This object is provided by the AgentryInitialilze method, which must be called prior to calling any of the other methods, and this object is then passed to each of the other methods when called.
Data is returned to the external process via the EvaluateAgentryRule method within the Agentry Client API. The rule to be evaluated and the module in which it has been defined are passed to the method parameters, along with a string variable in which the return value of the rule is provided. Using this method rules can be called within the Agentry Client from the external process to retrieve values from the Client. The returned values can be calculated or conditional values based on the structure of the rule definition, or they can simply be property values or other similar data items, again based on the rule structure.
Actions can be executed by the external process via the ExecuteAgentryAction method within the Agentry Client API. The action to be executed and the module in which it has been defined are passed to the method. The method returns a Boolean indicator of success or failure to execute the action.
Edit transactions can be instantiated, properties within them populated with values, and subsequently applied on the Agentry Client as a result of a request from an external process via the ExecuteAgentryTransaction method. The edit transaction to be processed, the module in which it is defined, and values for one or more of its properties are passed to the method as parameters. Not all properties within the transaction need to be populated by the method call, and any not provided are initialized according to the property definitions just as if the transaction were instantiated via standard Agentry Client processing.