Amazon Store , Cloud and Web Services Integration with Drupal

I will cover this in two parts, 1st will be integration with Amazon store so you can make money using Amazon Associates program, in 2nd part I will cover the Amazon web services and Cloud and related modules.

Part 1 – Making money with Amazon Store and Products.

In this segment, there are essentially two modules which can help you achieve integration with Amazon store, such that you can show amazon products on your drupal website.

1.Amazon Module

The module includes the following functionality:

  • CCK integration via an 'Amazon product' field type
  • Extensive Views integration
  • Support for extended Amazon product data (like page counts for books, and MPAA ratings for DVDs)
  • Quick-insertion of Amazon item information in node content via an input filter
  • Simple search integration
  • Basic token support for product data

Amazon requires that all access to its data use an API key. To use this module, you must sign up for an Amazon API account and request an access key. This process is free, but without it, the module won't do anything. In addition, if you want to earn money from referrals to Amazon, you will want an Associate ID. Please refer to the documentation for links to the associate page for your locale.

2.Amazon Store module

An Amazon Store for Drupal. This is an implementation of the Amazon Product Advertising API (formerly Amazon Associates Web Service, or AAWS) for Drupal. You can install this and right away you have an Amazon Associates Store. Get yourself an Associates ID and then all purchases made through your store will result in a commission going to you. Allows searching, provides product pages, and manages a shopping cart.

Dependencies:

  • Amazon module.
  • You must have PHP5.2+

Nice-to-have:

  • Panels module. (The 1.x releases work with Panels 2, the 2.x releases work with Panels 3). If Panels is installed, there is a default amazon item detail page and multiple panel panes provided so you can customize it.
  • If thickbox is enabled then you get large-size images when you click on a product image

Theming

Most of the critical elements of display have .tpl.php files. You can just copy the template file to your theme and modify it to suit. For example, if you'd like to change the search results page, simply copy amazon_store_search_results.tpl.php to your theme directory and modify. The Item display page also has a complete panels implementation. You can enable the panel and then mix and match panels to suit.


Part 2 – Modules to support Amazon Services

First lets see what are some of the popular Amazon Services are

  • Amazon Elastic Compute Cloud (Amazon  (EC2)) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.
    Amazon EC2’s simple web service interface allows you to obtain and configure capacity with minimal friction. It provides you with complete control of your computing resources and lets you run on Amazon’s proven computing environment. Amazon EC2 reduces the time required to obtain and boot new server instances to minutes, allowing you to quickly scale capacity, both up and down, as your computing requirements change. Amazon EC2 changes the economics of computing by allowing you to pay only for capacity that you actually use. Amazon EC2 provides developers the tools to build failure resilient applications and isolate themselves from common failure scenarios.
  • Simple Storage Service (S3) Amazon S3 provides a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable,
  • Simple Queue Service (SQS) Amazon Simple Queue Service (Amazon SQS) offers a reliable, highly scalable, hosted queue for storing messages as they travel between computers. By using Amazon SQS, developers can simply move data between distributed components of their applications that perform different tasks, without losing messages or requiring each component to be always available. Amazon SQS makes it easy to build an automated workflow, working in close conjunction with the Amazon Elastic Compute Cloud (Amazon EC2) and the other AWS infrastructure web services
  • Flexible Payments Service (FPS) With Amazon FPS, developers can accept payments on their website for selling goods or services, raise donations, execute recurring payments, and send payments.
  • Mechanical Turk (MTurk) Amazon Mechanical Turk is a marketplace for work that requires human intelligence. The Mechanical Turk web service enables companies to programmatically access this marketplace and a diverse, on-demand workforce. Developers can leverage this service to build human intelligence directly into their applications.

Supporting modules

1.Marketplace: Amazon Flexible Payment Service

This module enables the use of Amazon Flexible Payments to pay sellers. It depends on (and integrates with) Ubercart Amazon Payments.

As the name implies, Ubercart Marketplace is also required.

The module enables sellers to authorize your store to pay them when their products are ordered. It also modifies the redirect to the Amazon Payments CBUI (when the customer authorizes the payment) so that multiple sellers can be paid.

The seller commission is taken into account when asking for their authorization to be paid.

Finally, it provides a hook for other modules to change the amount that sellers are paid at checkout. I (wizonesolutions) used this to implement a down payment system in a client project.

2.Amazon S3 Module – Only Drupal 7

The AmazonS3 module allows the local file system to be replaced with S3. Uploads are saved into the drupal file table using D7's new file/stream wrapper system.

Dependencies on other modules:

You can switch it on as the default file system scheme, or individually for file and image fields. Image styles are delivered first through the private file system, which generates a derivative on S3 and is served from S3 thereafter.

Requirements
You will need to set allow_url_fopen to on your PHP settings. This option enables the URL-aware fopen wrappers that enable accessing URL object like files. See http://uk.php.net/manual/en/function.fopen.php

Read  Installation & Setup of the Amazon S3 Module and Utilizing Cloudfront Support

Related module:  Amazon S3 Logs

Reads and parses your Amazon S3 account's various log files, so you can easily track your most popular uri's, and how much bandwidth has been used per-file. It also makes sure to never download the same log file twice (saving you bandwidth), and can be configured to only check for new log files every few hours (saving you GET and LIST requests).

3.Amazon Web Services API

This module is actually a collection of modules and is still under development.  The first being the main AWS API module. The sub-modules each deal with a specific Amazon Service.

4.Amazon S3 Stream Wrapper

Amazon S3 has a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web. It gives any developer access to the same highly scalable, reliable, fast, inexpensive data storage infrastructure that Amazon uses to run its own global network of web sites. The service aims to maximize benefits of scale and to pass those benefits to developers.

5.Amazon Mechanical Turk Integration

6.Amazon Import – Only Drupal 6. No Stable version.