Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

CardioLog provides advanced visitor segmentation capabilities by integrating both external and internal personal user data into reports.

Retrieval of the The organizational hierarchy (of users and groups ) is performed monitored by the Active Directory Updates service,  which which retrieves the data directly from Active Directory by default. 
The  The Active Directory Updates service can also retrieve the data from a custom source, using a designated web service which supplies the custom organization desired organizational structure (of users and groups).Retrieval  Retrieval of additional user information, such as department, gender, etc. and other profile data is performed by the User Categories Updates service, which retrieves the data from Active Directory attributes or SharePoint User Profilesby  by default.
The  The User Categories Updates service can also retrieve the data from a custom source, using a designated separate web service which supplies user that supplies the user information.

Contents

  • Retrieving Users and And Groups From a A Custom Source
    • Creating the The Custom Users and And Groups Structure Web Service
  • Retrieving User Information From a A Custom Source
    • Creating the The Custom User Information Web Service
  • Configuring Visitor Segmentation by By Active Directory Attributes
  • Configuring Visitor Segmentation by By SharePoint User Profiles

Retrieving Users and Groups

...

From a Custom Source

In order to load your organization structure (users and groups) user and group organization structure to CardioLog, it is you are required to specify a web service from which that the Active Directory Updates service will gather the organization's data from. This is done through the CardioLog Administration user interface:

  1. Create the custom organization structure web service for your organization.
  2. Verify that the your custom organization structure web service returns a valid XML response, according to the XML schema, and that
  3. Confirm the CardioLog Scheduling Service user account has sufficient read request permissions to access (request) the web service.
  4. Browse CardioLog > Administration CardioLog Scheduling Service Active Directory Updates.
  5. Click Next.
  6. Enter the custom web service URL in the Web Service URL text box and then click the down arrow (acceptable file extensions: "aspx", "asmx", "xml").
  7. Click Save and restart the CardioLog Scheduling Service.
  8. Perform IISRESET on the CardioLog application server.
  9. After the next run of Active Directory Updates, your users and groups will be added to the Users and Groups filter of each report.

...

The Users and Groups web service should be exposed by a web page which provides a XML string response according to the following schema:

 

<?xmlversion="1.0"encoding="Windows-1252"?>

<xs:schema

elementFormDefault="qualified"

xmlns:mstns="http://tempuri.org/ADXmlSchema.xsd"

xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:elementname="tree">

<xs:complexType>

<xs:sequence>

<xs:elementname="users">

<xs:complexType>

<xs:sequence>

<xs:elementmaxOccurs="unbounded"name="user">

<xs:complexType>

<xs:sequence>

<xs:elementname="accountName"type="xs:string" />

<xs:elementname="displayName"type="xs:string" />

<xs:elementname="userMail"type="xs:string" />

<xs:elementname="memberOf"type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:elementname="groups">

<xs:complexType>

<xs:sequence>

<xs:elementmaxOccurs="unbounded"name="group">

<xs:complexType>

<xs:sequence>

<xs:elementname="groupName"type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

...

User accountName: the user account name (a unique user ID).
User displayName: the user display name.
User userMail: the user email address.
User memberOf: a semicolon separated list of group names associated with the user.

 Sample Data:

 

<tree>

<users>

<user>

<accountName>MyCompany\james</accountName>

<displayName>James Wright</displayName>

<userMail>james.wright@mycompany.com</userMail>

<memberOf>Administrators;Marketing</memberOf>

</user>

<user>

<accountName>MyCompany\dana</accountName>

<displayName>Dana Cohen</displayName>

<userMail>dana.cohen@mycompany.com</userMail>

<memberOf>Sales</memberOf>

</user>

</users>

</tree>

...

The user information web service should be exposed by a web page which provides an XML string response, according to the following schema: 

 

<?xmlversion="1.0"encoding="utf-8" ?>

<xs:schemaid="CategoryXmlSchema"

elementFormDefault="qualified"

xmlns:mstns="http://tempuri.org/CategoryXmlSchema.xsd"

xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:elementname="tree">

<xs:complexType>

<xs:sequence>

<xs:elementname="item"type="UserCategoryXmlNode"minOccurs="0"maxOccurs="unbounded" />

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:complexTypename="UserCategoryXmlNode">

<xs:sequence>

<xs:elementname="userName"type="xs:string" />

<xs:elementname="categories"minOccurs="0"maxOccurs="1">

<xs:complexType>

<xs:sequence>

<xs:elementname="categoryValue"type="categoryNode"minOccurs="0"maxOccurs="unbounded" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

<xs:complexTypename="categoryNode">

<xs:sequence>

<xs:elementname="categoryName"type="xs:string"minOccurs="1"maxOccurs="1" />

<xs:elementname="categoryValue"type="xs:string"minOccurs="1"maxOccurs="1" />

</xs:sequence>

</xs:complexType>

</xs:schema>

...

 username: the user account name (should match the accountName field in the organization structure)
categoryName: the category name.
categoryValue: the category value.

Sample Data:

 

<tree>

<item>

<userName>MyCompany\james</userName>

<categories>

<categoryValue>

<categoryName>Region</categoryName>

<categoryValue>West</categoryValue>

</categoryValue>

<categoryValue>

<categoryName>Gender</categoryName>

<categoryValue>Male</categoryValue>

</categoryValue>

</categories>

</item>

<item>

<userName>MyCompany\dana</userName>

<categories>

<categoryValue>

<categoryName>Region</categoryName>

<categoryValue>North</categoryValue>

</categoryValue>

<categoryValue>

<categoryName>Gender</categoryName>

<categoryValue>Female</categoryValue>

</categoryValue>

</categories>

</item>

</tree>

...