<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Modern Toil &#187; CDW</title>
	<atom:link href="http://moderntoil.com/?feed=rss2&#038;tag=cdw" rel="self" type="application/rss+xml" />
	<link>http://moderntoil.com</link>
	<description>Technology, Life, &#38; Work</description>
	<lastBuildDate>Sun, 29 Dec 2019 22:49:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>HP TouchPad &#8211; ORDER FAIL, FAIL, FAIL, FAIL</title>
		<link>http://moderntoil.com/?p=405</link>
		<comments>http://moderntoil.com/?p=405#comments</comments>
		<pubDate>Fri, 26 Aug 2011 18:36:34 +0000</pubDate>
		<dc:creator>Rich</dc:creator>
				<category><![CDATA[How-to]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Barnes & Noble]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[CDW]]></category>
		<category><![CDATA[FAIL]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[Insight]]></category>
		<category><![CDATA[TouchPad]]></category>

		<guid isPermaLink="false">http://moderntoil.com/?p=405</guid>
		<description><![CDATA[So I ended up ordering . . I believe 8 total of the HP TouchPads from:
Barnes &#38; Noble
CDW
Insight
*ALL* my orders ended up cancelled.  This is a bit surprising since my first order with Insight was placed within 1 minute of the price decrease.  I think they must have sold out BEFORE they decreased the price.  [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://moderntoil.com/wp-content/uploads/2011/08/shellscript.jpg"><img class="alignleft size-full wp-image-406" title="shellscript" src="http://moderntoil.com/wp-content/uploads/2011/08/shellscript.jpg" alt="" width="128" height="128" /></a>So I ended up ordering . . I believe 8 total of the HP TouchPads from:</p>
<p>Barnes &amp; Noble<br />
CDW<br />
Insight</p>
<p>*ALL* my orders ended up cancelled.  This is a bit surprising since my first order with Insight was placed within 1 minute of the price decrease.  I think they must have sold out BEFORE they decreased the price.  My guess is that all of the above retailers don&#8217;t deplete stock until a human verifies/releases each order, OR the system automatically POSTS the credit card transaction.  Given the ridiculous amount of transactions these companies were doing during the rush, what usually occurs automagically was probably stopped by safety checks on the number of transactions, or raw amt. of revenue etc.  Once humans are involved in moving things forward, minutes and seconds very easily turn into hours and days.</p>
<p>It looks like the best bet for getting one of these at this point is probably through HP Directly.  They currently show OUT OF STOCK, but based on their tweets and sign-up page, it seems they do expect to get more in.</p>
<p>So, do you trust their notify page?  Well, I honestly do believe when they get stock, and verify orders are able to be completed, they&#8217;ll notify everyone.  That said, you can&#8217;t just immediately send emails to hundreds of thousands of people, and even if you could, greylisting and other limiters can often prevent you from receiving the email for a while.</p>
<p>By the time you get your notification, stock may again be depleted, for good.</p>
<p>What I&#8217;ve done is put together a very simple shell script that checks HP&#8217;s site for changes, and notifies me via email.  The email address I&#8217;m using is a &#8220;pushed&#8221; Exchange email, so I get notified immediately.</p>
<p>I&#8217;m pasting the script below, but please understand I do so with ZERO warranty, etc.   I don&#8217;t claim to be an expert in bash or scripting, and I&#8217;m sure there&#8217;s a better way to accomplish the same task.  Feel free to share in the comments if you&#8217;ve got a better way, but for me, this script DOES WORK, so I&#8217;m happy with it <img src='http://moderntoil.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>To use this, you will need a Linux box with a bash shell, curl, bc, and the ability to send outgoing messages with sendmail locally.  If you can&#8217;t send outgoing email, the script will still alert you via the terminal that something has changed.</p>
<p>Here it is:</p>
<blockquote><p>#!/bin/bash</p>
<p>#The URL to check for change<br />
URL_TO_CHECK=&#8221;http://www.shopping.hp.com/webapp/shopping/can.do?landing=rts_tablet&amp;category=rts_tablet&amp;catLevel=1&amp;storeName=storefronts&#8221;</p>
<p>#Number of seconds to wait between checks<br />
FREQUENCY=&#8221;20&#8243;</p>
<p>#The phrase to look for on the page<br />
PHRASE=&#8221;outofstock&#8221;</p>
<p>#The number of times the phrase occurs on the page with no change<br />
OCCURENCES=&#8221;4&#8243;</p>
<p>#The subject to use for the alert email<br />
ALERT_SUBJECT=&#8221;HP TABLET PORTAL CHANGED STATUS&#8221;</p>
<p>#The email address to send alerts to<br />
ALERT_ADDRESS=&#8221;youremail@yourdomain.com&#8221;</p>
<p># DO NOT EDIT BELOW THIS POINT<br />
stop=no<br />
iteration=1</p>
<p>while [ $stop = no ]</p>
<p>do</p>
<p>status=$(curl -s $URL_TO_CHECK | grep &#8220;$PHRASE&#8221; | wc -l)</p>
<p>if [ $status = $OCCURENCES ]<br />
then<br />
echo Iteration $iteration: NO CHANGE<br />
sleep $FREQUENCY<br />
else<br />
echo &#8220;POSSIBLE CHANGE DETECTED, RE-CHECKING IN 30 SECONDS&#8221;<br />
sleep 30<br />
status_verify=$(curl -s $URL_TO_CHECK | grep &#8220;$PHRASE&#8221; | wc -l)<br />
echo $status_verify</p>
<p>if [ $status_verify = $OCCURENCES ]<br />
then<br />
echo &#8220;FALSE ALARM, RESUMING NORMAL CHECKS&#8221;<br />
else</p>
<p>echo CHANGED STATUS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br />
echo &#8220;Subject: $ALERT_SUBJECT<br />
$URL_TO_CHECK&#8221; | sendmail $ALERT_ADDRESS<br />
sleep 5</p>
<p>echo CHANGED STATUS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br />
echo &#8220;Subject: $ALERT_SUBJECT<br />
$URL_TO_CHECK&#8221; | sendmail $ALERT_ADDRESS<br />
sleep 5</p>
<p>echo CHANGED STATUS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br />
echo &#8220;Subject: $ALERT_SUBJECT<br />
$URL_TO_CHECK&#8221; | sendmail $ALERT_ADDRESS<br />
stop=yes<br />
fi<br />
fi<br />
iteration=$(echo $iteration + 1 | bc)<br />
done</p></blockquote>
<p>The script goes to this URL:</p>
<p><a href="http://www.shopping.hp.com/webapp/shopping/can.do?landing=rts_tablet&amp;category=rts_tablet&amp;catLevel=1&amp;storeName=storefronts" target="_blank">http://www.shopping.hp.com/webapp/shopping/can.do?landing=rts_tablet&amp;category=rts_tablet&amp;catLevel=1&amp;storeName=storefronts</a></p>
<p>and looks for the gif image names for those &#8220;Out of stock&#8221; buttons</p>
<p>They occur (4) times in the page, and it expects to see them (4) times.  If that number changes, it re-checks in 30 seconds, and if it&#8217;s still something other than (4), the alert sequence begins.  You can easily change the variables at the top to check other phrases at other URL&#8217;s, and make sure you replace the &#8220;youremail@yourdomain.com&#8221; with YOUR email address.</p>
<p>Happy shopping!</p>
<div class='dd_post_share'><div class='dd_buttons'><div class='dd_button'><a name='fb_share' type='button_count' share_url='http://moderntoil.com/?p=405' href='http://www.facebook.com/sharer.php'>Share</a><script src='http://static.ak.fbcdn.net/connect.php/js/FB.Share' type='text/javascript'></script></div><div class='dd_button'><script src='http://widgets.digg.com/buttons.js' type='text/javascript'></script><a class='DiggThisButton DiggCompact' href='http://digg.com/submit?url=http://moderntoil.com/?p=405&amp;title=HP+TouchPad+-+ORDER+FAIL%2C+FAIL%2C+FAIL%2C+FAIL'></a></div><div class='dd_button'><iframe src='http://api.tweetmeme.com/button.js?url=http://moderntoil.com/?p=405&amp;source=&amp;style=compact' height='20' width='90' frameborder='0' scrolling='no'></iframe></div></div></div><div style='clear:both'></div><!-- Social Buttons Generated by Digg Digg plugin v4.0.5, 
    Author : Yong Mook Kim
    Website : http://www.mkyong.com/blog/digg-digg-wordpress-plugin/ -->]]></content:encoded>
			<wfw:commentRss>http://moderntoil.com/?feed=rss2&amp;p=405</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
