[prev in list] [next in list] [prev in thread] [next in thread] 

List:       lenya-dev
Subject:    Re: New to Apache Lenya
From:       Michael Wechner <michael.wechner () wyona ! com>
Date:       2011-04-28 8:36:52
Message-ID: 4DB92724.8090303 () wyona ! com
[Download RAW message or body]

Hi Chamika

On 4/28/11 8:16 AM, Chamika Peiris wrote:
> 
> _Capturing user actions:_
> 
> I hope to capture user actions using a Java API in the personalization 
> module. For example, I can give methods in the API for "user buying", 
> "user rating", etc. The issue I have with this is how the client can 
> call this API. Can you give me a little clarification in this 
> regard?(I have given a use case for a particular user action called 
> "user search")

the logging for example can be done via Javascript, e.g.

http://sourceforge.net/apps/mediawiki/easyrec/index.php?title=JavaScript_API_v0.95

whereas these requests are then sent to "Boost" instead the CMS, or the 
CMS can log the relevant requests by itself, e.g. using log4j and 
logging something like

4317126 2011-04-28 10:23:45,899 [http-8080-Processor23] INFO  Access  - 
url:http%3A%2F%2F127.0.0.1%3A8080%2Fyanel%2Fyanel-website%2Fen%2Fabout.html 
r:yanel-website c:YA-1302509054838 ref:null 
ua:Mozilla%2F5.0+%28Macintosh%3B+U%3B+Intel+Mac+OS+X+10.6%3B+en-US%3B+rv%3A1.9.2.13%29+Gecko%2F20101203+Firefox%2F3.6.13 \
 t:overview%2CAbout+Lenya

whereas the most important parts re personalized interest analysis are, e.g.

Tags (t): t:overview,About Lenya
Unique cookie ID (c): c:YA-1302509054838


> 
> _User Case for "user search":_
> 
> 1. User logs in to the web application
> 2. User types "<search keyword>" in the search box
> 3. Clicks on the "Search" button
> 4. Receives personalized results

I guess you mean for example if a user types "Java" as a search term, 
and if the user is mostly interested in
programming languages, then the results will be about Java as 
programming language, whereas if the user
is not interested in programming language, then the results will be 
about Java Island or Java coffee, right?
> 
> In the 3rd step how the Lenya user can call our Java API?

Well, the CMS would call the API of "Boost", e.g. via SOAP it could look 
like:

Request to "Boost":
GET /boost/user-interests/cookie-id/YA-1299502385092
GET /boost/user-interest/user-id/marc

Response by "Boost"
<?xml version="1.0"?>

<user-interests cookie-id="YA-1299502385092" user-id="IF_AVAILABLE">
<interest weight="10">Jaguar</interest>
<interest weight="2">VW</interest>
</user-interests>

(Comment: Higher weight values are considered more important)

which means the Lenya personalization module can then use the above user 
interests to generate
a personalized response. The flow is as follows:


Browser/User -> Lenya CMS -> Boost -> Lenya CMS -> Browser/User


> Does Lenya have support for configuring such activities?

what activities?
> 
> _Using existing databases:_
> 
> Does Lenya have records for "user ratings", etc in databases, so that 
> we can use them in our personalization process? Does Lenya keep server 
> logs for all kind user actions and can we extract data such as "user 
> ID", "login time", etc from the server logs?

IIRC it also uses log4j, but not specifically for access logging, but as 
I tried to point out above, Lenya
doesn't have to do this by itself, but I guess the most simple of 
integrating this is by adding
the Javascript code to each page (see above or similar as Google analytics).

HTH

Michael
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lenya.apache.org
> For additional commands, e-mail: dev-help@lenya.apache.org


[Attachment #3 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body text="#000000" bgcolor="#ffffff">
    Hi Chamika<br>
    <br>
    On 4/28/11 8:16 AM, Chamika Peiris wrote:
    <blockquote
      cite="mid:BANLkTimQtbdi73a3r_cYvA-WQ2BwB-UpkQ@mail.gmail.com"
      type="cite"><br>
      <div><u>Capturing user actions:</u></div>
      <div><br>
      </div>
      <div>I hope to capture user actions using a Java API in the
        personalization module. For example, I can give methods in the
        API for "user buying", "user rating", etc. The issue I have with
        this is how the client can call this API. Can you give me a
        little clarification in this regard?(I have given a use case for
        a particular user action called "user search")</div>
    </blockquote>
    <br>
    the logging for example can be done via Javascript, e.g.<br>
    <br>
<a class="moz-txt-link-freetext" \
href="http://sourceforge.net/apps/mediawiki/easyrec/index.php?title=JavaScript_API_v0. \
95">http://sourceforge.net/apps/mediawiki/easyrec/index.php?title=JavaScript_API_v0.95</a><br>
  <br>
    whereas these requests are then sent to "Boost" instead the CMS, or
    the CMS can log the relevant requests by itself, e.g. using log4j
    and logging something like<br>
    <br>
    4317126 2011-04-28 10:23:45,899 [http-8080-Processor23] INFO&nbsp;
    Access&nbsp; -
    url:http%3A%2F%2F127.0.0.1%3A8080%2Fyanel%2Fyanel-website%2Fen%2Fabout.html
    r:yanel-website c:YA-1302509054838 ref:null
    ua:Mozilla%2F5.0+%28Macintosh%3B+U%3B+Intel+Mac+OS+X+10.6%3B+en-US%3B+rv%3A1.9.2.13%29+Gecko%2F20101203+Firefox%2F3.6.13
  t:overview%2CAbout+Lenya<br>
    <br>
    whereas the most important parts re personalized interest analysis
    are, e.g.<br>
    <br>
    Tags (t): t:overview,About Lenya<br>
    Unique cookie ID (c): c:YA-1302509054838 <br>
    <br>
    <br>
    <blockquote
      cite="mid:BANLkTimQtbdi73a3r_cYvA-WQ2BwB-UpkQ@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <div><u>User Case for "user search":</u></div>
      <div><br>
      </div>
      <div>1. User logs in to the web application</div>
      <div>2. User types "&lt;search keyword&gt;" in the search box</div>
      <div>3. Clicks on the "Search" button</div>
      <div>4. Receives personalized results</div>
    </blockquote>
    <br>
    I guess you mean for example if a user types "Java" as a search
    term, and if the user is mostly interested in<br>
    programming languages, then the results will be about Java as
    programming language, whereas if the user<br>
    is not interested in programming language, then the results will be
    about Java Island or Java coffee, right?<br>
    <blockquote
      cite="mid:BANLkTimQtbdi73a3r_cYvA-WQ2BwB-UpkQ@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <div>In the 3rd step how the Lenya user can call our Java API? </div>
    </blockquote>
    <br>
    Well, the CMS would call the API of "Boost", e.g. via SOAP it could
    look like:<br>
    <br>
    Request to "Boost":<br>
    GET /boost/user-interests/cookie-id/YA-1299502385092
    <br>
    GET /boost/user-interest/user-id/marc
    <br>
    <br>
    Response by "Boost"<br>
    &lt;?xml version="1.0"?&gt;
    <br>
    <br>
    &lt;user-interests cookie-id="YA-1299502385092"
    user-id="IF_AVAILABLE"&gt;
    <br>
    &lt;interest weight="10"&gt;Jaguar&lt;/interest&gt;
    <br>
    &lt;interest weight="2"&gt;VW&lt;/interest&gt;
    <br>
    &lt;/user-interests&gt;
    <br>
    <br>
    (Comment: Higher weight values are considered more important)
    <br>
    <br>
    which means the Lenya personalization module can then use the above
    user interests to generate<br>
    a personalized response. The flow is as follows:<br>
    <br>
    <br>
    Browser/User -&gt; Lenya CMS -&gt; Boost -&gt; Lenya CMS -&gt;
    Browser/User<br>
    <br>
    <br>
    <blockquote
      cite="mid:BANLkTimQtbdi73a3r_cYvA-WQ2BwB-UpkQ@mail.gmail.com"
      type="cite">
      <div>Does Lenya have support for configuring such activities?</div>
    </blockquote>
    <br>
    what activities?<br>
    <blockquote
      cite="mid:BANLkTimQtbdi73a3r_cYvA-WQ2BwB-UpkQ@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <div><u>Using existing databases:</u></div>
      <div><br>
      </div>
      <div>Does Lenya have records for "user ratings", etc in databases,
        so that we can use them in our personalization process? Does
        Lenya keep server logs for all kind user actions and can we
        extract data such as "user ID", "login time", etc from the
        server logs?</div>
    </blockquote>
    <br>
    IIRC it also uses log4j, but not specifically for access logging,
    but as I tried to point out above, Lenya<br>
    doesn't have to do this by itself, but I guess the most simple of
    integrating this is by adding<br>
    the Javascript code to each page (see above or similar as Google
    analytics).<br>
    <br>
    HTH<br>
    <br>
    Michael<br>
    <blockquote
      cite="mid:BANLkTimQtbdi73a3r_cYvA-WQ2BwB-UpkQ@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>

---------------------------------------------------------------------
To unsubscribe, e-mail: <a class="moz-txt-link-abbreviated" \
href="mailto:dev-unsubscribe@lenya.apache.org">dev-unsubscribe@lenya.apache.org</a> \
For additional commands, e-mail: <a class="moz-txt-link-abbreviated" \
href="mailto:dev-help@lenya.apache.org">dev-help@lenya.apache.org</a></pre>  \
</blockquote>  <br>
  </body>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic