AssociateTag in Zendframework Amazon Anfragen

Posted in PHP on Januar 6th, 2012 by Michael Roth – Be the first to comment

Wie bereits erwähnt hat Amazon die Product Advertising API geändert. Daher ist nun bei jeder Anfrage eine PartnerId (engl. AssociateTag) notwendig, sonst wird folgende Fehlermeldung ausgegeben:

Your request is missing required parameters.
Required parameters include AssociateTag.

Es gibt zwei Möglichkeit dieses AssociateTag im Zendframework zu setzen. Die PartnerID  kann an die beiden Anfrage itemLookup() und itemSearch() im Optionen-Array mit übergeben werden.

$aws = new RD_Amazon_Query($awsID,'DE',$awsKey);
$item=$aws->category('All')->itemLookup($asin,
                                    array('ResponseGroup' => 'OfferFull, BrowseNodes,Large',
                                          'MerchantId' => 'Amazon',
                                          'AssociateTag' => 'rothdigital-21');

Als Alternative kann die Methode AssociateTag(‘rothdigital-21′)  benutzt werden um den Wert als Methodenaufruf zu setzten. Wichtig ist, dass die Category bei Anfragen als erstes gesetzt wird und dann erst AssociateTag.

$aws = new RD_Amazon_Query($awsID,'DE',$awsKey);
$item=$aws->category('All')->AssociateTag('rothdigital-21')
                           ->itemLookup($asin,
                                    array('ResponseGroup' => 'OfferFull, BrowseNodes,Large',
                                          'MerchantId' => 'Amazon');

Diese beiden Wege funktionieren mit Zendframework 1.11. Es gibt schon einen Bug-Report, der vorschlägt die PartnerId in den Konstruktor zu übernehmen. Daher kann sich das Verhalten im nächsten Release des Zendframework wieder ändern. Sollten Sie Änderungen feststellen, benutzen Sie einfach hier die Kommentarfunktion.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

phplist und Amazon Simple Email Service

Posted in Cloud, Internet on November 4th, 2011 by Michael Roth – Be the first to comment

phplist ist ein browserbasiertes Programm, das es erlaubt Newsletter an eine große Anzahl von Empfängern zu senden. Es können Templates angelegt werden und so das Aussehen der E-Mail individuell angepasst werden. Falls ein Server auf einmal viele E-Mails sendet kann dies von einigen Mailservern als Spamversand interpretiert werden und der Newslettersender kann auf einer Blacklist landen. Um dies zu verhindern kann man mit phplist die E-Mails zeitlich versetzt senden und beispielsweise mit einem Cronjob so alle fünf Minuten 100 E-Mails senden.

Diese Methode ist aber sehr zeitaufwendig. Bei vielen Empfänger kann sich der E-Mailversand über mehrere Stunden oder Tage hinziehen. Eine Alternative ist der Amazon Simple Email Service. Dieser Dienst ermöglicht das einfache und schnelle Versenden von vielen E-Mails. Amazon hat die eignen Mailserver auf mehreren Whitelisten eingetragen und überwacht die Qualität der E-Mails, daher können diese Server nicht so einfach auf Blacklists landen.

phplist unterstützt die Verbindung zu Amazon SES leider erst in der Entwicklungsversion 2.11.6. Um Amazon SES zu nutzen sind folgende Änderungen in der Datei config/config.php notwendig:

define('PHPMAILER',0);
define('AWS_ACCESSKEYID','Your Access Key ID');
define('AWS_SECRETKEY','Your corresponding secret key');
define('AWS_POSTURL','https://email.us-east-1.amazonaws.com/');

Eine genaue Anleitung ist unter http://www.phplist.com/?lid=515 zu finden.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

Änderung in der Amazon Product Advertising API

Posted in PERL on November 3rd, 2011 by Michael Roth – Be the first to comment

Seit dem 26. Oktober 2011 ist für das Abfragen von Produktinformationen über die Amazon Product Advertising API die Angabe eine Partner-ID, auch “associate tag” genannt, notwendig. Alle Anfrage ohne diese Partner-ID liefert folgenden Fehler:

Your request is missing required parameters.
Required parameters include AssociateTag.

Eine Partner-ID kann auf der Seite https://partnernet.amazon.de einfach und kostenlos beantragt werden.

Unter Perl empfehle ich den Einsatz des CPAN Moduls Net::Amazon. Ab der Version 0.61, die am 28. Oktober 2011, erschienen ist, kann beim Konstruktor das Parameter associate_tag übergeben werden. Das Erzeugen des Objekts sieht dann wie folgt aus:

  my $ua = Net::Amazon->new(
      associate_tag => 'YOUR_AMZN_ASSOCIATE_TAG',
      token         => 'YOUR_AMZN_TOKEN',
      secret_key    => 'YOUR_AMZN_SECRET_KEY',
  );

Eine genaue Anleitung ist auf der CPAN-Seite zu finden.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

Dropbox mit Truecrypt sichern

Posted in Cloud, Datenschutz, Internet on Juni 20th, 2011 by Michael Roth – 1 Comment

Dropbox ist ein Cloud-Dienst, der Daten zwischen mehreren Computern abgleicht. Dazu stellt Dropbox jedem angemeldeten Benutzer kostenlos 2 GB Speicher zur Verfügung. Um den Dienst zu nutzen muss auf jedem Computer, auf dem die Daten abgeglichen werden sollen, der Dropbox-Client installiert sein. Dann landen alle Dateien, die in einem speziellen Ordner geschoben werden auf dem Dropbox-Server und werden von dort auf alle anderen verknüpften Computer des Benutzers übertragen. Leider ist nicht klar, wie die Daten auf dem Dropbox-Server gesichert werden und wer alles Zugriff auf diese hat.

Um die Daten in der Cloud zu sichern kann mit Truecrypt ein verschlüsselter Container angelegt werden, der dann als zusätzliche Festplatte in das System eingehängt wird. Da Dropbox neue Dateien automatisch abgleicht, muss in Truecrypt eingestellt werden, dass der Zeitstempel der Container-Datei nicht geändert werden soll. Dann überträgt Dropbox nicht mehr die komplette Datei, sonder nur die Teile die sich geändert haben. Eine genaue Anleitung ist auf diesem Blog zu finden.

Um die Daten zu synchronisieren darf der Container nicht geöffnet sein. Die verschlüsselte Festplatte sollte also ausgehängt werden, bevor der Computer in den Ruhezustand gesetzt wird.

Mit dieser einfachen Änderung sind die Daten auf jedem Computer verfügbar und sicher. Leider können die Daten nun nicht mehr über das Webinterface von Dropbox bearbeitet werden. Was meiner Meinung aber für die zusätzliche Sicherheit eine hinnehmbare Einschränkung ist.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)
Get Adobe Flash playerPlugin by wpburn.com wordpress themes