Wednesday, December 15, 2010

AmaCraigBay

For the next Kynetx competition I decided to create AmaCraigBay. I have always talked to friends about how they got this really cool stuff from Craigslist for really cheap, or free. I never think to check Craigslist when I need something. I always pay full price. So, I figured I would put eBay and Craigslist results on Amazon search pages, that way whenever I am on Amazon looking for something, not only will I remember to check Craigslist and eBay, I will see the most popular item from each site right above Amazon's results.

I searched on Amazon for an iPad, and guess what, Craigslist beat both Amazon and eBay for the cheapest iPad (non-used) by almost $100 dollars. It's just an email and a short drive away. So if I don't win the competition, at least I can try my luck with Amazon, eBay, and Craigslist all in one page.

Here is a screenshot:

If you want to try it out, here are the browser extensions for Firefox, Chrome, and Internet Explorer. I haven't try the IE extension but it should work.

Firefox, Chrome, Internet Explorer

If you prefer a Bookmarklet, just drag the link below to your bookmark toolbar, and press it when you are on an Amazon search page.

AmaCraigBay

Found a cheaper iPad on Craigslist while searching Amazon
When you first visit Amazon, you should see a box asking you to enter your Craigslist city (this won't happen with the bookmarklet until after you press it).  Go to Craigslist and find your city.  Look at the URL and put the part between http:// and .craigslist.org in for your city.  You should see the results when you search (and if your using the bookmarklet, after you press the button on a search results page).  You need to accept 3rd Party cookies from kobj.net for it to remember your city.

Sunday, December 5, 2010

Amazon Friend Feedback

Have you ever searched for a product on Amazon, read the reviews and got mixed feelings about weather you should buy it or not.  Did you want to ask your friends opinion?  Well, now you can ask your Facebook friends without ever leaving Amazon.

For Kynetx's web augmentation contest, I decided to add a Get Friend Feedback button on every product on Amazon.com.  It shows up right above the customer reviews.  To get feedback from your friends, you can press the button, and it will let you type in a message that you can post to your Facebook wall, with a link to the product you are viewing.  When you visit the product again, it will display the comments and likes count that your friends have posted.

If I ever find the time, I would like to add an option to Tweet the product to get feed back on Twitter. I would like to get the friend comments to show up in the shopping cart, and put the button on other shopping sites like Google Products.

If you want to try it out, just install the browser plugin for your browser.  You will be prompted to go to Facebook and give my application permission to post things to your wall.  You can also get the app from Kynetx's marketplace.


Firefox Extension
Chrome Extension
Internet Explorer Extension

So here are the technical details on how I accomplished it with Kynetx.  The place_button rule grabs the Amazon product id from the url and the product name from the title and places a button on the page above the customer reviews. Under all of my tests, Amazon uses two different url's so this rule responds to both of them.

The place_form rule gets launched when the user clicks on the button, created in the previous rule.  It pops up a notify box with a textbox to enter in your question.

The request_posted rule gets launched when the user submits the question, and it posts the query to the user's Facebook wall.

The recent_post rule is fired automatically after the last rule fires.  The facebook:post function doesn't return anything, so I needed a way to get the Facebook post id so I can display the post when the users return to see the product.  I had to query the User's feed and get the last post.  I ran out of time to check to make sure it is the post I posted.  So sometimes it might grab the wrong post to display on Amazon.  Hopefully Kyntex's will update the facebook:post to provide a post id when it returns.  I store the Amazon product id with the Facebook post id by using trails.

Then, when the user visits a product on Amazon, I search through the trail in the need_discussion rule.  This rule uses a foreach loop to loop through the trail.  If the page's product id matches a product id in the trail, it launches the place discussion rule.

The place_discussion rule get's the like count and comment count from Facebook, and places them on the page below the "Get Friend Feedback" button.  It then launches the place comments rule.

The place_comments rule loops through all of the comments and places each one on the Amazon page.

Here is the full Kynetx code: