Service Hosts
Service Hosts
The items on the Service Hosts grid populate the drop-down lists of Service Hosts that occur throughout the application. Service Hosts define specific types of services that have special permissions associated with them. An example would be: adding Cisco VoIP service to part of your organization. By defining Cisco VoIP as a Service Host a User can then specify the Equipment (and subsequent Service Locations) tied to this Service Host. This enables you to view your organization by Service Hosts as well as eliminate errors by trying to add, for example, TDM voice services where only VoIP services exist and vice versa. By adding items to the grid, Admin Users can add to these lists; by editing existing items, Admin Users can change the contents of these lists; and by deleting items from the grid, Admin Users can reduce these lists.
In any case, the items on the Service Hosts grid represent the hosts that provide phone or other services for the User's organization or its customers.
Adding a Service Host
Navigate to the Service Hosts grid (see image above) by opening the 'Admin' tab and clicking on the node labeled 'System Tables', then the node labeled 'Service Hosts'.
To add a new Service Host to the grid, click the button located immediately above the grid.
In the Service Host data entry form (see image above), the user is prompted to define two required fields: 'Name', and 'Host Type'.
Users can also define a default 'NPA' and 'NXX' to be used during call file processing.
Using the tabs displayed in the graphic above, Admin Users can also add Equipment to the Service Host and add Vendors associated with the selected Service Host.
In the middle section of the form, labeled 'Access Data', Admin Users specify how the system can access this Service Host. These settings are used by the Communication/Switch Modules to connect to the host. The Admin user can set access data by 'IP Address', 'Network Port', 'Username', 'New Password', 'WSDL URI', and 'Version' (see figure below).
Saving the New Service Host
Once all Required fields have been satisfied, click the button located at the bottom of the Service Host data entry form. The new Service Host will appear as an item on the original Service Hosts grid and will be available as a selection whenever a 'Service Host' field is encountered throughout the application.
Editing Existing Service Hosts
Admin Users can edit existing Service Hosts by double-clicking on any item on the Service Hosts grid or by selecting an item and clicking the button located immediately above the grid.
This opens the item's Service Host data entry form, at which point the User can define the item's inputs by following the protocol established earlier in this section. Once all Required fields have been satisfied, click the button at the bottom of the form.
Admin Users can delete existing Service Hosts by selecting the appropriate item on the Service Hosts grid and clicking the button located immediately above the grid. The deleted Service Host will no longer appear as an option when users encounter a 'Service Host' data field throughout the application.
Exchanging Data With External Data Stores
Service Hosts can be set up to take advantage of remote data resources via Internet-based APIs. This section will explain how to set up API Service Hosts and utilize them in PCR-360.
Set Up An API Service Host
- Go to Admin > System Tables > Service Hosts
- Open a new Service Host, and select "REST API" on the Host Type list. The form will update, changing some of the inputs available. The image above shows a sample of the data needed for the new Host.
- If the API you're using requires specific HTTP headers, you can use the "Data Encoding" list to select some pre-set headers. You can customize them in the "Request Headers" box. Enter one complete header per line. If you modify the presets, they won't be changed if you select a different "Data Encoding" item. Clear the text box if you want to switch Encoding types to use different preset headers.
- Enter the URL to the API that will process your data. The "https://" is optional, but our Service Hosts will only send requests over an encrypted connection. APIs that don't support encrypted connections are not supported and strongly discouraged.
- To make the Host reusable, use only as much of the API URL as is necessary to establish the connection. For example, many APIs use path segments to indicate how a request should be routed:
- https://some-other-host.com/api*/customers/1234?*first_name=Jeff*&*last_name=Smith*
could indicate the customers table, ID # 1234 should update first_name and last_name to the provided values. https://some-other-host.com/api*/order/add
could mean that an Order needs to be generated. Perhaps this API requires a JSON data object instead of a query string that would look like:JS{ "45-abc-67": 1000, "~staples": 400, "SD_NUMBER": [the Service Desk Number from PCR-360] }
This may indicate 1,000 of part # 45-abc-67 and 400 of something that looks like "staples", and the ServiceDesk SD Number is needed.
- Notice the only common part of the above examples is the URL entered in the sample image. Everything after "api/" changes depending on what kind of request you're making. Provide the minimum part of the URL you need. The part of the URL that changes will be set in the Escalation Sequences.
- https://some-other-host.com/api*/customers/1234?*first_name=Jeff*&*last_name=Smith*
- If your connection requires authentication, provide the Username and Password. The password will be securely encrypted in the database. Some APIs use a Key string that acts as authentication so you don't need a User/Pass pair. You may need to provide the key as a parameter in the Escalation Sequence, or include it in the Host URL input above. Address specific requirements with the API owner.
- Some APIs may also require usage of a configuration file, version, or specific network port to establish connection and/or exchange data. Fill these in as needed.
- When all information is complete, Save the Service Host. Note that you cannot change the "Host Type" of existing Service Hosts anymore. This is to avoid retaining or adding invalid data, or removing necessary data, for a given Host Type.
The Service Host is now ready for setting up Escalations REST Sequences.