iService includes two types of utilities that can be used for importing contacts and generating interactions from an input file. The iService Batch Form Submission Utility can be used to read a file of information and process it through a predefined iService form. This utility includes a graphical user interface or can be used as a command line utility, and is the recommended method for importing contacts or processing records from a CSV file.
In addition to the iService Batch Form Submission Utility, iService includes an older command line utility (BatchUtility) that performs similar actions but without a predefined form. Because the command line utility does not use a predefined iService form, it requires more definition within the input file itself. However, it is more flexible in that it does not require a pre-existing form.
The batch form submission utility and command line utility can both be used to perform the following actions based on an input file.
1.Create new contacts
2.Set, update, or remove properties for contacts (e.g., name, email, address, phone, etc.)
3.Send agent emails to contacts and set interaction properties within the email
4.Create notes within contact history
5.Create tickets and queue them for agent handling
The utilities read a comma separated value(CSV) text file that contains the contact information to import and the details related to the interactions to create (agent email, notes, or tickets). The Command Line Utility is designed to be run at the command line or included in a batch file to automate routine execution on a predetermined schedule. The Batch Form Submission utility includes a graphical user interface and is significantly faster than the command line utility.
The utilities perform a variety of error checks to validate the input file. However, it is recommended that you ensure users are familiar with its operation and limitations before making it broadly available. Also, you should test the utility against a test file with limited data before using it on a large scale project. The source code for this utility is provided so that you can modify or extend its functionality. You can also use it as the baseline for other projects.
Example of Logic Used
As shown below, the utility is comprised of two primary functions: Importing and updating contact information, and generating interactions (e.g., agent email, notes, and tickets). The diagram below provides a basic overview of the logic used within the application for agent emails.
The first routine within the utility ensures the contact record exists and updates the contact properties that are included within the input file. This routine validates all of the contact properties included within the input file and logs error for any records that cannot be updated. The second routine builds the agent email (or other type of interaction) and validates all of the required interaction properties. If the input file does not contain all of the required fields for the specified type of interaction (see the Input File Requirements section below), the second portion of the routine is skipped and the operation is limited to contact import and update.
Since all of the actions performed by the utility are based on a contact, it’s important that the utility be run with the desired iService segment access. The lookup function that attempts to determine whether or not a contact exists uses the iService contact search web service. If the login used with the utility does not have access to the contact, the search results will be blank and the utility will attempt to create a new contact. However, the contact creation will fail because the contact login already exists. Also, when new contacts are created, they will be assigned to the same segments for which the running login has segment access. For instance, if you run the utility using a SuperUser login all new contacts will be assigned membership to all business segments.
|