Developing user interaction that uses Personalization and Campaigns can involve several steps. For example, if you want to target users with personalized content in a Campaign, you will add content to BEA's Virtual Content Repository, create Placeholders that display the content, set up properties (such as User Profile or Session properties) that are used to define the conditions under which users will be targeted with Campaign content, and then create the Campaign.
This chapter describes how to create these property sets that have conditions to identify users. The properties are used in the conditions you define for your Personalization logic. Each user is dynamically served personalized web content, automatic e-mails, or discounts based on the logic conditions.
WorkSpace Studio provides editors to help you define the following properties and events to create conditions that identify and track users:
Developers use WorkSpace Studio to create property sets and properties. Portal administrators can use WebLogic Portal Administration Console to update the values in the property set. See Checklist for Planning Your User Interaction Strategy for information on designing a property set, and see Modifying Property Set Values to learn how to update property set values.
This chapter includes the following sections:
For information on setting up and managing users that will use Interaction Management features, see the User Management Guide.
You can use WorkSpace Studio to create a property set in for a User Profile, User Segment, HTTP session or request data, date and time condition, or an event.
For example, a User Profile consists of additional attributes you collect and store about a user. Each piece of metadata in a User Profile is called a property. User properties can range from statically-defined properties, such as a user's phone number and e-mail address, to dynamically-created and persisted properties (web site tracking information for the user, for example).
You could create a property set called human resources that contains properties, such as gender
, hire date
, and e-mail-address
. User Profile properties appear as input fields in the WebLogic Portal Administration Console when you edit a User Profile value. (You can also assign Group Profile property values to groups.) The properties you create are also used to define rules for Personalization, as well as Delegated Administration and Visitor Entitlement roles. Users and groups can have multiple profiles, if a a profile equates to a property set. WebLogic Portal provides a default User Profile property set called CustomerProperties.usr
that contains common properties.
There are specific properties you can set on content items to enhance Personalization in your applications. See Creating a Content Selector for more information. For general information on Content Management, see the Content Management Guide.
After you create the necessary Personalization properties and conditions and set up users and content, you can create Interaction Management functionality for your portal. For example, after you create a User Segment to trigger Personalization, you can create a Content Selector that defines the content that is shown to users in a specific User Segment.
The following section describes how to create a property set for a User Profile, User Segment, HTTP Session or Request, event, Community, or remote portlet. Property sets are application-scoped; any additional scoping or namespacing must be performed by the application.
Property Sets and other Interaction Management features use a variety of conditions that identify users and what they are doing. For more information on conditions, see Understanding Conditions.
Note: | The steps in this chapter refer to the data\src folder in the Package Explorer View. Your data and src directories might be named differently. |
This section contains the following topics:
Consult the Checklist for Planning Your User Interaction Strategy for more details on designing a property set.
Perform the following steps to create a property set for a User Profile:
.usr
file extension. You can target visitors with web content, automatic e-mails, and discounts by defining and using groups called User Segments (similar to segments of a population). User Segments dynamically group users based on characteristics, such as group membership, browser type, profile values, and other user properties. If users match the characteristics, they automatically and dynamically become members of that User Segment. You can use User Segments in Content Selectors, Placeholders, and Campaigns.
Perform the following steps to create a User Segment:
.seg
file extension. For example, if you drag the condition The visitor has specific characteristics into the User Segment Editor, click the link in the Editor to select the User Profile properties and their values that make a user a member of the User Segment.
Properties for the user, HTTP session, and HTTP request conditions are based on the User Profile, HTTP sessions, and HTTP request properties you create.
WARNING: | Shopping cart events, discount actions, and catalogs are part of the Commerce API, which is deprecated with WebLogic Portal 10.0. The API is replaced by AquaLogic Commerce Services, which is available as a product separate from WebLogic Portal. |
Choose conditions based on the descriptions in Table 4-1.
After you create an application-defined Property Set (see Creating a Community or Remote Portlet Property Set) and some properties, you can use the An application property has specific values condition. You must have an existing property set in place to use this condition.
|
|
If the current date is equal to the one you specify, execute a specified action. For example, if the date is equal to July 22, 2006, send users an e-mail about an upcoming sale (action). The current date refers to the date at the point that the condition is evaluated for a user visiting the web site. For more information, see
Setting Dates and Times.
|
|
If the current date is after a date you specify, execute a specified action. For example, if the date is after December 18, 2005, offer users a discount (action). The current date refers to the date at the point that the condition is evaluated for a user visiting the web site. For more information, see
Setting Dates and Times.
|
|
If the current date and time are after a date and time you specify, execute a specified action. For example, if the date and time are after July 22, 2006 at 3 p.m., send users an e-mail about an upcoming sale (action). The current date and time refer to the date and time at the point that the condition is evaluated for a user visiting the web site. For more information, see
Setting Dates and Times.
|
|
If the current time falls within a range of times you specify, execute a specified action. For example, if the time is between 3 p.m. and 5 p.m., offer users a discount (action). The current time refers to the time at the point that the condition is evaluated for a given user visiting the web site. For more information, see
Setting Dates and Times.
|
|
If the current date falls within a range of dates you specify, execute the specified action. For example, if the date is between December 18, 2005 and December 18, 2006, show users a sale ad (action). The current date refers to the date at the point that the condition is evaluated for a given user visiting the web site. For more information, see
Setting Dates and Times.
|
|
If the current date and time fall within a range of dates and times you specify, execute the specified action. For example, if the date and time is between July 22, 2005 at 3 p.m. and July 22, 2006 at 3 p.m., show users a sale ad (action). The range of dates is inclusive. The current date and time refer to the date and time at the point that the condition is evaluated for a user visiting the web site. For more information, see
Setting Dates and Times.
|
|
If an item from a specific category is added to the shopping cart, execute a specific action. This applies to campaigns only. Shopping cart events, discount actions, and catalogs are part of the Commerce API, which is deprecated with WebLogic Portal 10.0. The API is replaced by AquaLogic Commerce Services.
|
When you set date and time conditions, the dates and times represent the time in your region. For example, if you are creating a Campaign action that will be triggered at 8 p.m., that means 8 p.m. in your region. For a time zone that is two hours behind you, the action will be triggered at 6 p.m. in that time zone.
This also affects dates you set. The date you set becomes effective at midnight in your time zone. In a time zone that is six hours ahead of yours, that date becomes effective for that time zone at 6 p.m. your time the day before.
Time changes also affect time-triggered actions. For example, you created a Campaign that begins October 1 at noon and ends October 31 at noon. If a change to standard time (one hour earlier) occurs on October 29, the Campaign will actually end on October 31 at 11 a.m. If you want the Campaign to end at noon on the new standard time, set the end time to 1 p.m.
Tip: | Because of the different dates and times on which actions will be triggered around the country or world, it is important to tell users that dates and times are effective for your time zone. This type of information allows users to calculate when in their time zone they can take advantage of your promotions. |
Session properties capture and use specific HTTP session information to trigger Personalization and Campaigns. Session properties are associated with a session and are not persisted between sessions. An example of a Session property set could be PortalA.
Perform the following steps to create a Session property set:
.ses
file extension. Use code in a JSP or Java Page Flow to populate the session.
Request properties capture and use specific HTTP request information to trigger Personalization. Request properties are associated with a request and are not persisted between requests.
Request properties can also store values that are populated programmatically. For example, the DefaultRequestPropertySet.req property set in the <project>\data\src\request\ directory is included with every portal web project, and contains properties called User-Agent and Client Classification. These properties are populated automatically when a device accesses a portal, providing a key component of the framework that delivers appropriate web content to mobile devices.
Perform the following steps to create a Request property set:
.req
file extension. You can create an application-defined property set to store profile data for entities that are not users or groups. These entities include Communities and remote portlets, or a custom entity created by an application programmer.
Perform the following steps to create a property set for an Application-defined property set:
propset
file extension.You must register custom events that you create so that your portal application recognizes the events. After you register your events, you can use them to trigger Personalization and Campaigns and track user behavior in your portals.
Events need event listeners to listen for them. Register the event listeners for your custom event in the <PORTAL_APP>\META-INF\wps-config.xml
file.
Perform the following steps to create an Event property set:
.evt
file extension. .evt
file extension. The Catalog Structure Editor in WorkSpace Studio lets you add properties to a catalog. After you add the properties, you must enable it in the WebLogic Portal Administration Console.
Catalog structure properties are name and value pairs that define the information you want to enter about items in your catalog, such as SKU, Description, and Price.
Before you create a Catalog property set, you should enable Catalog Management, which provides the Catalog tools that use the Catalog structure properties.
WARNING: | Catalogs, shopping cart events, discounts, and so on are part of the Commerce API, which was deprecated with WebLogic Portal 10.0. The API is replaced by AquaLogic Commerce Services, which is available as a product separate from WebLogic Portal. |
Perform the following steps to create a Catalog property set:
.clg
file extension.
After you create a property set for a User Profile, HTTP Session or Request, Community, or WSRP, add the properties you want to it. The following steps assume you have created a property set according to the instructions in Setting up a Property Set.
Perform the following steps to add a property to a property set:
The type defines the number of values that can be entered for the property. Following are descriptions of each type.
Male
or Female
.true
or false
. (Properties with a Boolean data type are automatically set to Single Restricted
.) Note: | Any change to the Data Type, Selection Mode, or Value Range fields removes anything previously entered in the Values field. |
WARNING: | You can also use the Property control to create and manage properties. However, properties created with this control do not appear in the WebLogic Portal Administration Console. The properties must be modified and updated programmatically. |
You can edit properties and values in WorkSpace Studio or you can edit just the property values in the WebLogic Portal Administration Console.
This section contains the following topics:
Perform the following steps in WorkSpace Studio to modify properties or conditions and their values for User Profiles, User Segments, HTTP session or request data, date and time conditions, or events:
You can also use the <profile:setProperty>
JSP tag in your JSPs or the Property control in your Page Flows to modify existing property values for users.
Portal administrators can use the WebLogic Portal Administration Console to modify a property's value. For instructions, see Editing a Property Value.
If you created a Unified User Profile (UUP) to access external user or group properties, you can use those properties to define rules for Personalization, Delegated Administration, or Visitor Entitlement.
After you create a UUP to access the properties stored in an external user store, such as an LDAP server, you can access those external properties only through WebLogic Portal's JSP tags, controls, or API. After you deploy a UUP, when the Administration Console focuses on the associated property set, it will call on the UUP to read values. A UUP must implement writable interfaces if you want to be able to write to the UUP properties.
If you want to use those external properties in defining rules for Personalization, Delegated Administration, or Visitor Entitlement, you must retrieve those properties in the WebLogic Portal Administration Console. Simply defining rules requires access only to the property set "schema", which you created in Creating a User Profile Property Set. When the rules are evaluated, the actual values are fetched. You do not have to use the Administration Console.
Note: | The properties you retrieve from an external user store may be read-only, and their values cannot be updated in the WebLogic Portal Administration Console. To make those properties writable, your custom UUP must implement writable properties. |
A password is not considered a property.
Perform the following steps to retrieve user or group properties from an external data store:
p13n_app.jar
file, copy the /META-INF/p13n-profile-config.xml
file to your own application's /META-INF
directory.p13n-profile-config.xml
file in the /META-INF
directory of your own application. See the instructions in the
User Management Guide.
You can delete individual properties from a property set, and you can delete an entire property set.
Perform the following steps to delete a property from a property set:
Perform the following steps to delete a property set:
You can also use the <profile:removeProperty>
JSP tag in your JSPs or the Property control in your Page Flow to remove existing property values from a user's profile.