IceLib ships with full-featured sample applications in several languages/technologies (C#, VB.NET, ASP.NET). These applications demonstrate usage of the IceLib API to implement user interface elements that perform a variety of tasks. Exploration of these example applications can not only provide insight into the nuances of API usage, but also provide impressions of good approaches to follow both in the code and in the API usage.

IceLib API element documentation has been augmented throughout with references to example application usage of those APIs. See this section for details.

When applying an ES or SU, any sample application files that have been modified will not be overwritten. If the ES or SU contains any updates to the sample application files, they will not be updated unless the modified files are replaced with the original files.

Jump to a section:

Example Applications

Each application is commented and designed to illustrate "best practices" of a real implementation. The examples cover key topic areas, such as:

Applications in ExampleApps Folder
LanguageProject FolderDescription
C#TutorialExampleThis C# example contains a document with exercises that lead the reader through several small examples of using IceLib functionality to accomplish a task in the Visual Studio project. This example exercises some functionality of the ININ.IceLib.Connection, ININ.IceLib.Configuration, and ININ.IceLib.Statistics namespaces. It also demonstrates an approach to integration of IceLib with a WPF application.
C#InteractionsTestThis C# example implements a simple but feature-rich telephony client, similar to Interaction Client .Net Edition. You can perform common telephony tasks (place calls, send calls to voicemail, disconnect, etc.), view voicemails and query server parameters. This example exercises the functionality of the ININ.IceLib.Interactions namespace.
C#DirectoriesClientDemonstrates the functionality of the ININ.IceLib.Directories namespace. This application shows how to connect to an IC server, display information about contact directories on the server, view metadata for a directory, display entries in a directory, and even create a new contact directory.
C#DirExplorerExercises the functionality of the ININ.IceLib.Directories namespace by displaying workgroups, contact directories, Tracker, Station groups and entries in the Company Directory. A column in each view indicates whether or not a watch is in effect.
C#PeopleClientThis example exercises the functionality of the ININ.IceLib.People namespace. Once you establish a session with the server, you can view Watched Queries (attributes of various settings, details of access rights, etc.), information about Status Messages, and license information.
C#FaxSampleThis application demonstrates how to send a Fax message.
C#ConnectionExtensionsTestThis application tests server parameters, password policies, and custom notifications within the IceLib API.
C#StatisticsSampleThis example exercises the functionality of the ININ.IceLib.Statistics namespace. It contains browsing of the statistics catalog, watching valid parameter values, listening to statistic value changes, and configuration and monitoring of alerts.
C#TrackerAdminThis example helps you understand classes in the ININ.IceLib.Tracker namespace. The TreeView in the left pane allows you to select Address Types, Attribute Types, InteractionAddress Types, InteractionAddress Subtypes, Titles, Individual Types, and Organization Types. These elements correspond to classes in the Tracker namespace.
C#TrackerClientThis example demonstrates the search functionality of the ININ.IceLib.Tracker namespace. It allows the user to search the Tracker for individuals, interactions, organizations, or a location.
C#AutomationProcessLauncherThis example shows how to launch an Interaction Process Automation process with supplied data.
C#RecorderSampleThis application shows how to download an IC recording.
C# and PowerShellConfigurationCmdletThis example demonstrates how to work with configured users through a PowerShell cmdlet.
VB.NetVBTestVisual Basic.Net source in the ExampleApps\VBTest folder demonstrates functionality of the ININ.IceLib.People namespace, especially the UserStatus and UserStatusList classes. Once you establish a session with the IC server, you can filter workgroups to select persons in a given status.
ASP.NetAspIceLibClientDemoThis example implements a web page to set status information and place a call. It demonstrates how to use the Icelib public API to do tasks that are commonly carried out by the vaious IC Client applications.
Note
The 64-bit IceLib SDK does not contain the AspIceLibClientDemo example application. The example application (and other ASP.NET applications) can be built with the 64-bit IceLib assemblies, however the resultant web page would not be able to be debugged via Visual Studio, since that built-in debugging capability is 32-bit-only. For the purpose of an IceLib example application, requiring utilization of an actual IIS environment is not ideal, so we have left this example out of the 64-bit IceLib SDK. The 32-bit IceLib SDK still contains it.

Examples Documentation

Many API elements' documentation now have an Examples section to make it easier to find an example of a given API element. This documentation contains specific references to the selected API element from the IceLib SDK example applications, including the actual file name and line number for each example application.

Example Application Usages