2011-03-08

Personalized Emails made easy

Avail has for years been used successfully in email campaigns, especially by our more early adopter customers. Recently we have noticed an influx in the interest for recommendations in emails and we decided to make it a lot easier for our customers to get Avail recommendations in emails. 

In the Control Panel there is a new node called Email Recommendations. If you have the necessary data in place then getting email recommendations up and running is a matter of following an easy-to-use guide. The data necessary is product names, prices, image URL:s and product-detail-page URL:s. At the end of the guide you will have a HTML-code block that you simply copy and paste into the email service provider of choice. 

A drop-down contains a list of major email service providers such as Responsys, MailChimp, Neolane and Apsis which will generate HTML-code that works out of the box. But as long as you know the tag-format, Avail email recommendations can be used with any email service provider that supports dynamic HTML. 



2011-01-17

Control Panel

On the second of November 2010 we released the HTML Control Panel. After ironing out various kinks and fine-tuning the usability we will now make the HTML Control Panel the default Control Panel. As of February 28 2011 the JWS Control Panel will be disabled for all Avail SaaS customers and all Avail OnSite customers on version 8.5+.

2010-11-23

One Method to Rule Them All - SaaS & OnSite G8.5

With this release the method getRecommendations is introduced. This method will replace all current recommendation methods. Before this release the programmatic API method used defined what input could be used and the type for recommendation generated. With getRecommendations the input used and the type of recommendation generated is set in the Control Panel.



Why a new Method?
The first purpose is to empower non-techies such as e-commerce managers and marketing people to easily change the type of recommendation without having to rely on techies to do this. A safe bet is that this is something that will be appreciated by the person wanting the changes and techies alike.

The second purpose is to allow a more flexible set up of recommendations which gives merchandisers a larger degree of freedom to customize the recommendations to the need of a particular site.

The third purpose is to make it easier for new customers to integrate Avail and for existing customers that want to implement recommendations in new areas as there is only one recommendation method.

The forth purpose is to prepare for upcoming features that we are working on but not quite ready to announce.
Input
The new method getRecommendations takes multiple inputs. The available inputs to base recommendations on are:
  • Phrase - A search phrase used on the internal or an external search engine.
  • SessionId - The session id of the current session.
  • ProductId - A single product identifier. Typically the a product on a product detail page.
  • ProductIds - A set of product identifiers. For example a wish-list or a feed from the Facebook App My Bookshelf.
  • UserId - A user identifier of a logged-in or identified user.
When implementing getRecommendations make sure that you use all available inputs. This will allow non-technical people to readily change the input using the Control Panel. 

Output
Screenshot
As mentioned the output will be controlled from the Control Panel. On the template level you will be able to set if the output will be products or people. If the chosen output is products, then you will be able to chose if the recommendations should be based on:
  • Visitors’ Clicks and Purchases
  • Visitors’ Searches
  • Manual Rules
 On the subtemplate two new drop-downs will let you set the type of recommendation. Using the two drop-downs a sentence is created that we hope in everyday words explains the type of  recommendation made. Example of sentences that are formed:
  • People who bought the products you have viewed also bought
  • People who searched on-site selected

Screenshot
Old Recommendation Methods
Old recommendation methods such as getProductPredictions and getRelatedActions will be deprecated. This means that they will continue to work for some time, but all new code with recommendation-requests should be done with getRecommendations. Eventually a transition has to be made as the old methods will stop working. No date for when the old recommendations methods will stop working has been set but this will be announced and communicated well ahead of time so that everyone can do the transition in a orderly manner.


Other Minor Features
With this release it will be possible to apply a dynamic parameter to all subtemplates in a template instead of just one subtemplate.

Also, for those using Avail to return presentation data the float output has been changed to always be at least two decimals. This will result in whole number or one decimal prices being presented as 25.00 and 36.70 instead of 25.0 and 36.7.

A new method has been added: logRemovedFromCart. This method removes a product added to cart with method logAddedToCart as stored in Avail. This is useful when doing recommendations with getRecommendations based on the content of the cart which is derived from the argument session id. It will also affect the products filtered with the template setting Exclude Added to Cart.



Avail OnSite G8.5
OnSite G8.5 will include getRecommendations and the features mentioned in the following posts:
More powerful Recommendations
HTML Control Panel


2010-11-22

Code to handle availability problems

We have devised a solution to handle the event of Avail SaaS not being available. 
Before the Avail script tag add a row that declares a empty Emark object:
<script type="text/javascript">var Emark;</script>
Add an if-then statement before the Avail-specific code that checks if the object is available: 
if(Emark){
//Avail Code
}





Full page sample:
<html>
<head>
<script type="text/javascript">var Emark;</script>
<script type="text/javascript" id="thescript" charset="UTF-8" src="http://service.avail.net/2009-02-13/dynamic/XXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX/emark.js"></script>
<script type="text/javascript">
function populatePredictions(){
if(Emark){
var emark = new Emark(false);
var recs = emark.getProductsPredictions(['0208931'], 'GETRELATED_DEFAULT');
emark.commit(function() { 
document.getElementById("prodRecsDisplay").innerHTML += "Recs: " + recs; 
});
}
}
</script>
</head>

<body onload="populatePredictions();">
<h3>Sample Page</h3>

<b>Recommendations</b>
<div id="prodRecsDisplay"></div>

</body>
</html>

2010-11-02

More powerful Recommendations - SaaS

Avail RnD has been hard at work and is now ready to release a new powerful algorithm for deriving recommendations. The new algorithm works on the click data collected from users. For now it will be released on Avail SaaS and on Avail OnSite in a couple of weeks. 

Sequences
To improve the quality of the recommendations sequences are taken into account. A concrete example of when using sequences is beneficial this is that if you are contemplating buying a bike, a water bottle might appeal to you. It is less likely that if you are shopping for a water bottle that you might buy a bike on the spur of the moment. 

Self Improving
The new algorithm is self learning and tweaks itself based on how users respond to the recommendations thus adjusting itself to vertical specific behavior. This is all automatic and you do not have do a thing.

Selecting Data Sets
To empower advanced users a new drop-down in the Control Panel lets you choose which data set you base the recommendations on.

Avail works with three data sets:
  • viewed - products clicked on during a visit
  • bought-together - products bought at the same time
  • bought  - products bought by a user over time
To see how this could be of use, consider the recommendations based on the content of the shopping cart using the method getCartPredictions. The template has a maximum of three recommendations and two subtemplates: 
  • Subtemplate 1 - returns 3 recommendations, no fallback
  • Subtemplate 2 - returns 3 recommendations based on the data set viewed with fallback recommendations
The effect of the above is that you will always have three recommendations. First Avail will generate as many real recommendations as possible based on the bought-together data set. If there was not enough recommendations, get recommendations from the viewed data set and if still not enough append fallback recommendations. 

The HTML Control Panel Live - SaaS

The HTML version of the Control Panel is live! The HTML Control Panel will work for all customers on Avail SaaS. In a couple of weeks we will release an Avail OnSite version that supports the HTML Control Panel. 

To access the new Control Panel go to https://admin.avail.net. Starting this Thursday you will be prompted to use the HTML version when opening the old Java Web Start version of the Control Panel.

Supported browsers for the HTML Control Panel are Firefox 3.5+, Chrome 6+, IE 8+ and Safari 4+.
Metrics Area

Editing a subtemplate
In the new version we have tried to simplify several common tasks. Some examples of changes we have made: 
  • In the Metrics areas you now have forwards and backwards buttons that allows moving the dates for the graph forward and backward in time much more easily than before
  • The "Get Graph" button has been removed and the graph is updated with every change you make
  • When hovering with the mouse over the graph the values of the different graphs are rendered as numbers
  • We have moved the test tab from the subtemplates up to a separate tab and redesigned the test area
  • When hovering with the mouse over a template name you can see an overview of the template settings without having to open the template
  • and much more...
Let us know what you think. Your opinion matters to us. 

Henrik Schinzel
CTO Avail Intelligence

2010-09-29

A new Control Panel on the way

We are putting the finishing touches on a HTML version of the Control Panel. This will launch in a couple of weeks from now and will replace the current JavaWebStart Control Panel.

The Avail Control Panel been rewritten from the ground up in HTML and JavaScript. We did this as a few of our esteemed customer were not allowed to use Java on their machines due to IT policies. Also, the graphical interface of Java did not work consistently over all operating system creating a lot of extra work.

The new Control Panel will work with the upcoming Avail OnSite 8.4+ and Avail SaaS. All functionalities from the old version of the Control Panel will be available in the new version of the Control Panel.

When we launch the HTML version of the Control Panel you will be alerted of this fact when you open the JavaWebStart Control Panel and asked to start using the new version.