<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-16406849</id><updated>2024-10-05T04:15:52.185+01:00</updated><category term="android"/><category term="HTPC"/><category term="Plex"/><category term="google"/><category term="home cinema"/><category term="php"/><category term="unifiedremote"/><category term="webdev"/><category term="yii framework"/><category term="Chrome"/><category term="Netsuite"/><category term="analytics"/><category term="media"/><category term="yii"/><category term="Eclipse"/><category term="SEO"/><category term="bigdata"/><category term="blogger"/><category term="clockworkmod"/><category term="integration"/><category term="saas"/><category term="search"/><category term="tethering"/><category term="API"/><category term="BI"/><category term="CDN"/><category term="Cloudfiles"/><category term="Code"/><category term="Dropbox"/><category term="Editor"/><category term="GA"/><category term="Google+"/><category term="IM"/><category term="Mardown"/><category term="Qlikview"/><category term="REST"/><category term="Rackspace"/><category term="TKB"/><category term="TTL"/><category term="adb"/><category term="amazon"/><category term="analysis"/><category term="app"/><category term="asgari"/><category term="astrill"/><category term="automation"/><category term="aws"/><category term="block"/><category term="blogspot"/><category term="chat"/><category term="cm7"/><category term="composer"/><category term="cyanogen"/><category term="desire"/><category term="email"/><category term="git"/><category term="gmail"/><category term="google apps"/><category term="google keep"/><category term="home automation"/><category term="htc"/><category term="iron.io"/><category term="launchy"/><category term="lucene"/><category term="monitoring"/><category term="motion detection"/><category term="postfix"/><category term="record"/><category term="restlet"/><category term="search rank"/><category term="ses"/><category term="solr"/><category term="suitescript"/><category term="supervision"/><category term="svn"/><category term="tasker"/><category term="ubuntu"/><category term="vera"/><category term="vesternet"/><category term="vpn"/><category term="webcam"/><category term="wifi"/><category term="yiiron"/><category term="z-wave"/><title type='text'>Br0sk</title><subtitle type='html'>I always like to share my technical findings with people, so here you go.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>38</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-16406849.post-4963098054853083990</id><published>2015-09-02T12:52:00.000+01:00</published><updated>2015-09-02T12:52:15.577+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Netsuite"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><category scheme="http://www.blogger.com/atom/ns#" term="restlet"/><category scheme="http://www.blogger.com/atom/ns#" term="webdev"/><title type='text'>How to easily get the IP address of a client calling a Netsuite RESTlet</title><content type='html'>&lt;h3&gt;
The Problem:&lt;/h3&gt;
&lt;div&gt;
In order to get a RESTlet to be allowed to access Netsuite you need to give the usual login details but on top of that you need to allow the IP address of the caller to not leave your account open to anybody to try to access your RESTlet. Sometime it is a bit tricky to know the external IP address of the system that you call Netsuite from. I had this issue when developing using &lt;a href=&quot;http://c9.io/&quot;&gt;c9.io&lt;/a&gt;. They gave me a list of of &lt;a href=&quot;https://docs.c9.io/v1.0/discuss/554c7a231f5dd20d008a7bab&quot; target=&quot;_blank&quot;&gt;IP addresses&lt;/a&gt;&amp;nbsp;but even after adding them to the employee record I was still getting an error message telling me &quot;Invalid login. IP Address does not match any of the IP Address rules specified for this entity.&quot;.&lt;/div&gt;
&lt;h3&gt;
The Solution:&lt;/h3&gt;
&lt;div&gt;
On the employee record in Netsuite you are trying to login as, just add the word ALL to the IP rules and save the record. This opens up access for anybody.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ1nguGfZ-OKT5QwM9JhjR0zJVIu4zxjvSgcPYQiyQAI73aKw_j5VryAS1egWfi3lXyy5blAvmTg9T8nQC4M-33FYqrSNmYt56D30rCoYalt9I2GgP7eDtg5M9UAg6fjSK0xcC/s1600/Screenshot_090215_123117_PM.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;187&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ1nguGfZ-OKT5QwM9JhjR0zJVIu4zxjvSgcPYQiyQAI73aKw_j5VryAS1egWfi3lXyy5blAvmTg9T8nQC4M-33FYqrSNmYt56D30rCoYalt9I2GgP7eDtg5M9UAg6fjSK0xcC/s320/Screenshot_090215_123117_PM.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
We will only keep this setting for a short while.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now run your RESTlet call again and and if you now get a proper response instead of an error message go to the login audit trail in Netsuite.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGDSBts7vR1dMQS-IfeAKyOkL2c5Hh3sTlqBFxYu7GoErUsfJiZhp1XvVQvy6jR5XeKmnmGIRRUOiYUAC0t8EsMGSjFvVRZ7fhritzaPRe9LCqs5YG5MdCaK19hHnN8kJwYaCg/s1600/Screenshot_090215_123740_PM.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;422&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGDSBts7vR1dMQS-IfeAKyOkL2c5Hh3sTlqBFxYu7GoErUsfJiZhp1XvVQvy6jR5XeKmnmGIRRUOiYUAC0t8EsMGSjFvVRZ7fhritzaPRe9LCqs5YG5MdCaK19hHnN8kJwYaCg/s640/Screenshot_090215_123740_PM.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now click submit and have a look at the list of logins. Find the latest one and you will notice that it has the IP of the RESTlet client logging in.&lt;/div&gt;
&lt;div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdD5bE8sBSzBUyOL-AW_vuxZaUACyKYULWbo7w-thtJ-KwVffY1TZyCDaITCr1j6P02jO4yuF3ukBkMHIhFkMai4BUgPfpX7k62TITbVpAgyZmUZ3cby0CP2btdniiv4fsxfa5/s1600/Screenshot_090215_124549_PM.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;34&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdD5bE8sBSzBUyOL-AW_vuxZaUACyKYULWbo7w-thtJ-KwVffY1TZyCDaITCr1j6P02jO4yuF3ukBkMHIhFkMai4BUgPfpX7k62TITbVpAgyZmUZ3cby0CP2btdniiv4fsxfa5/s640/Screenshot_090215_124549_PM.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Now go back to the employee record and replace the word ALL with the actual IP address in the result above.&lt;br /&gt;
&lt;br /&gt;
This time you have the right IP and proper IP based restriction to your account.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/4963098054853083990/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2015/09/how-to-easily-get-ip-address-of-client.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4963098054853083990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4963098054853083990'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2015/09/how-to-easily-get-ip-address-of-client.html' title='How to easily get the IP address of a client calling a Netsuite RESTlet'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQ1nguGfZ-OKT5QwM9JhjR0zJVIu4zxjvSgcPYQiyQAI73aKw_j5VryAS1egWfi3lXyy5blAvmTg9T8nQC4M-33FYqrSNmYt56D30rCoYalt9I2GgP7eDtg5M9UAg6fjSK0xcC/s72-c/Screenshot_090215_123117_PM.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-4388970810184492298</id><published>2015-08-03T21:25:00.000+01:00</published><updated>2015-08-03T21:25:15.806+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="analytics"/><category scheme="http://www.blogger.com/atom/ns#" term="bigdata"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><category scheme="http://www.blogger.com/atom/ns#" term="yii framework"/><title type='text'>Yii2 Extension for keen.io Just Released!</title><content type='html'>I just released a new Yii2 extension for &lt;a href=&quot;http://keen.io/&quot;&gt;keen.io&lt;/a&gt;. Keen is a service very similar to &lt;a href=&quot;http://getconnect.io/&quot;&gt;getconnect.io&lt;/a&gt; that I wrote an &lt;a href=&quot;http://br0sk.blogspot.co.uk/2015/07/yii2-extension-for-getconnectio.html&quot; target=&quot;_blank&quot;&gt;extension&lt;/a&gt; for a a couple of days ago. Keen feels a little bit more mature as a product compared to &lt;a href=&quot;http://getconnect.io/&quot;&gt;getconnect.io&lt;/a&gt;&amp;nbsp;and they have been around longer and therefore have a bigger following &amp;nbsp;so far.&lt;br /&gt;
&lt;br /&gt;
The extension is published as&amp;nbsp;&lt;a href=&quot;https://github.com/br0sk/yii2-keen&quot; target=&quot;_blank&quot;&gt;br0sk/yii2-keen&lt;/a&gt;&amp;nbsp;on GiHub &lt;a href=&quot;http://www.yiiframework.com/extension/yii2-keen/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt; on the Yii page.&lt;br /&gt;
&lt;br /&gt;
Feel free to post bug reports or comments or over at &lt;a href=&quot;https://github.com/br0sk/yii2-keen&quot; target=&quot;_blank&quot;&gt;GitHub&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/4388970810184492298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2015/08/yii2-extension-for-keenio-just-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4388970810184492298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4388970810184492298'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2015/08/yii2-extension-for-keenio-just-released.html' title='Yii2 Extension for keen.io Just Released!'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-1396652449177172795</id><published>2015-07-25T10:42:00.000+01:00</published><updated>2015-07-25T10:42:58.289+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="analytics"/><category scheme="http://www.blogger.com/atom/ns#" term="bigdata"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><category scheme="http://www.blogger.com/atom/ns#" term="webdev"/><category scheme="http://www.blogger.com/atom/ns#" term="yii framework"/><title type='text'>Yii2 extension for getconnect.io</title><content type='html'>I just released a new Yii2 extension for &lt;a href=&quot;http://getconnect.io/&quot;&gt;getconnect.io&lt;/a&gt;. Connect is a service that allows you to post event data for statistical use. If you want to build your own dashboard or analyse for instance how many users that have logged in on your website this is a great service. When the data is in their database you can easily query the data and make use of their beautiful visualisations. Have a look at their site&amp;nbsp;&lt;a href=&quot;http://getconnect.io/&quot;&gt;http://getconnect.io/&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The extension is published as &lt;a href=&quot;https://github.com/br0sk/yii2-connect&quot; target=&quot;_blank&quot;&gt;br0sk/connect&lt;/a&gt; on GiHub.&lt;br /&gt;
&lt;br /&gt;
Right now the PHP version of their API only allow for pushing data to their service but I am sure they will add more functionality soon. I talked to the guys at &lt;a href=&quot;http://getconnect.io/&quot;&gt;getconnect.io&lt;/a&gt;&amp;nbsp;a couple of days ago and they were very friendly and seemed to have a good dev team. I am sure they will become quite a major player in the custom analytic game out there.&lt;br /&gt;
&lt;br /&gt;
Feel free to post bug reports or comments here or over at GitHub.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/1396652449177172795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2015/07/yii2-extension-for-getconnectio.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/1396652449177172795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/1396652449177172795'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2015/07/yii2-extension-for-getconnectio.html' title='Yii2 extension for getconnect.io'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-974861019848695870</id><published>2014-06-18T16:44:00.001+01:00</published><updated>2014-06-18T16:44:55.484+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="wifi"/><title type='text'>How to fix UniFi AP AC flashing white and getting stuck in a boot loop</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii27DCoG1HHHwiC0Xwxn3HRBXBBByHnlH23SFZECmHsdwYuQAUvfbSYaTpnNQa0y4WbXLiplcax7ckOAVBshLkmSX5ACwbconyTySzD5e7rlYQlXGhKfpb7HL20OhpEp4JQr5e/s1600/flashing-white-unifi-ap-ac.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii27DCoG1HHHwiC0Xwxn3HRBXBBByHnlH23SFZECmHsdwYuQAUvfbSYaTpnNQa0y4WbXLiplcax7ckOAVBshLkmSX5ACwbconyTySzD5e7rlYQlXGhKfpb7HL20OhpEp4JQr5e/s1600/flashing-white-unifi-ap-ac.png&quot; height=&quot;200&quot; width=&quot;197&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
I have recently been playing around with one of these&amp;nbsp;&lt;a href=&quot;http://www.ubnt.com/unifi#apac&quot;&gt;http://www.ubnt.com/unifi#apac&lt;/a&gt;. It&#39;s a great little wireless access point. Together with&amp;nbsp;&lt;a href=&quot;http://www.ubnt.com/unifi#UnifiSoftware&quot;&gt;http://www.ubnt.com/unifi#UnifiSoftware&lt;/a&gt;&amp;nbsp;you can build up a very powerful Wi-Fi network.&amp;nbsp; In fact you can add up to a 100 access points to your network.&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Problem&lt;/b&gt;&lt;br /&gt;
While changing some settings on th AP I managed to get the it to get stuck in a boot loop. It was basically just flashing white all the time and before it could start up it rebooted and started flashing again. The problem was that the unit wasn&#39;t even able to get an IP address from the DHCP server before it crashed so I could never access the unit via SSH or http.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Solution&lt;/b&gt;&lt;br /&gt;
The trick is to access the unit before it crashes and reload the vram memory. Here is what you need to to to fix the problem.&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Grab a computer with an Ethernet port&lt;/li&gt;
&lt;li&gt;Disconnect it from any network&lt;/li&gt;
&lt;li&gt;Hard set the IP on the PC to let&#39;s say 192.168.1.13&lt;/li&gt;
&lt;li&gt;Plug in the AP to the POE adapter&lt;/li&gt;
&lt;li&gt;Plug in the PC via Ethernet socket to the LAN connection on the POE adapter&lt;/li&gt;
&lt;li&gt;Start a command window and run an infinite ping like this &lt;b&gt;&lt;i&gt;ping 192.168.1.20 -t&amp;nbsp;&lt;/i&gt;&lt;/b&gt;(you will see the pings failing and when the AP reboots you will see how it connect for a little while returning successful pings)&lt;/li&gt;
&lt;li&gt;As soon as you notice that the pings are successful you need to access the AP in a web browser by going to &lt;b&gt;&lt;i&gt;http://192.168.1.20&lt;/i&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Hopefully you will get the web page of the AP. At the bottom of the page it says something like &quot;Reload vram&quot;.&lt;/li&gt;
&lt;li&gt;Click the link saying &quot;Reload vram&quot;(you have to be very quick before it reboots again).&lt;/li&gt;
&lt;li&gt;If it doesn&#39;t work repeat from bullet point 7.&lt;/li&gt;
&lt;li&gt;Eventually when the vram is reloaded the AP will boot up properly and go blue. You will also see that all your pings are now successful.&lt;/li&gt;
&lt;li&gt;Unplug the AP from the computer and put it back in your router/switch&lt;/li&gt;
&lt;li&gt;Power cycle the AP(only if &amp;nbsp;it has a solid blue light) and it will reappear in your controller software.&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
I hope this helps someone. It took me quite some time to figure it out. Many thanks to Oliver at&amp;nbsp;&lt;a href=&quot;http://broadbandbuyer.co.uk/&quot;&gt;broadbandbuyer.co.uk&lt;/a&gt;&amp;nbsp;for the hint about relaoding the vram.&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/974861019848695870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2014/06/how-to-fix-unifi-ap-ac-flashing-white.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/974861019848695870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/974861019848695870'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2014/06/how-to-fix-unifi-ap-ac-flashing-white.html' title='How to fix UniFi AP AC flashing white and getting stuck in a boot loop'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii27DCoG1HHHwiC0Xwxn3HRBXBBByHnlH23SFZECmHsdwYuQAUvfbSYaTpnNQa0y4WbXLiplcax7ckOAVBshLkmSX5ACwbconyTySzD5e7rlYQlXGhKfpb7HL20OhpEp4JQr5e/s72-c/flashing-white-unifi-ap-ac.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-5157639620541749245</id><published>2013-10-31T12:08:00.000+00:00</published><updated>2013-10-31T12:08:46.712+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Netsuite"/><category scheme="http://www.blogger.com/atom/ns#" term="suitescript"/><title type='text'>How to get Address Templating Working with Custom Transaction Addresses in Netsuite</title><content type='html'>&lt;h2&gt;
How to set a Custom Shipping Address on a Transaction in Netsuite Using Suitescript&lt;/h2&gt;
I have a situation where I want to use a specific address as the shipping address on a quotation. I don&#39;t want this address to be added to the customer record. It is a one time only address that should only be available on the quotation.&lt;br /&gt;
&lt;br /&gt;
Simple enough right?&lt;br /&gt;
&lt;h3&gt;
The Problem&lt;/h3&gt;
This should be pretty straight forward using code like this&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   1 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006699;&quot;&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/span&gt; theRecord &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #9966ff;&quot;&gt;nlapiLoadRecord&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;estimate&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;  &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/span&gt;recordmode&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;dynamic&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   2 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   3 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddresslist&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   4 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipattention&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;User&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;   5 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddressee&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Company&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Ltd&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   6 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipphone&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;999-888-7777&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   7 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddr1&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   8 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddr2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;   9 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipcity&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;  10 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipstate&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;State&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;  11 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipzip&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;10004&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;  12 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipcountry&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;SE&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;  13 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipoverride&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;F&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;  14 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipisresidential&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;T&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;  15 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;  16 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;nlapiSubmitRecord&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;  17 &lt;/span&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;
Unfortunately if you do that the data is properly set in the background but it is not rendered in the shipping address textarea.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwJee38MMRYCB2RKijRmvlcc6RLj44OHQKtCt2YtqseFmcHAjBnoUnSKZ1XljkLplI_E6FdmeM3HKl7t-fBWLk3PSSti3zApbCfT0m1i36TvM9C9wxBS89H5psyPZ659ONK0bg/s1600/no+custom+address+added.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwJee38MMRYCB2RKijRmvlcc6RLj44OHQKtCt2YtqseFmcHAjBnoUnSKZ1XljkLplI_E6FdmeM3HKl7t-fBWLk3PSSti3zApbCfT0m1i36TvM9C9wxBS89H5psyPZ659ONK0bg/s1600/no+custom+address+added.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to get the address to be rendered in the text area we have to create a custom string including line breaks like this:&lt;br /&gt;
&lt;pre&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;1 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddress&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;User&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;1\nTemp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Company&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Ltd\n999-888-7777\n123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street\n123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt; &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;
This is a bit crazy since that breaks the address templating that is built in to Netsuite. Let&#39;s say that a Japanese address is supposed to be rendered with the field in a different order from a Swedish address. If we create the address string on our own we either have to replicate all the rules for every country directly in the code or just render the field in the same order for every country. This adds loads of coding work or increases the risk for parcels not getting to the customer.&lt;br /&gt;
&lt;br /&gt;
We need a better solution where the built in address renderers are being used. I have asked Netsuite about this and they just refer to that this is by design.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
The Solution&lt;/h3&gt;
The only properly working way I found for fixing this is to use the address functionality on the customer record.&lt;br /&gt;
&lt;br /&gt;
This is what I do &lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Load the quotation record&lt;/li&gt;
&lt;li&gt;Load the customer record of the entity on the order&lt;/li&gt;
&lt;li&gt;Add a new address to the customer&lt;/li&gt;
&lt;li&gt;Copy the &lt;b&gt;addrtext&lt;/b&gt; attribute on the new address&lt;/li&gt;
&lt;li&gt;Add the rendered address to the text area on the quotation&lt;/li&gt;
&lt;li&gt;Save the quotation record&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
This solution gives us a templated text string to set in the address field on the quotation.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
Here is the full code for this.&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 1 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006699;&quot;&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/span&gt; theRecord &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #9966ff;&quot;&gt;nlapiLoadRecord&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;estimate&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: red;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;  &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/span&gt;recordmode&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;dynamic&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 2 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 3 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006699;&quot;&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/span&gt; theCustomer &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #9966ff;&quot;&gt;nlapiLoadRecord&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;customer&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;getFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;entity&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;  &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;{&lt;/strong&gt;&lt;/span&gt;recordmode&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;dynamic&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;}&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 4 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt; 5 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;selectNewLineItem&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 6 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 7 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;attention&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;User&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 8 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressee&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Company&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Ltd&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt; 9 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;phone&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;999-888-7777&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;10 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addr1&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;11 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addr2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;12 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;city&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;13 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;state&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;State&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;14 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;zip&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;10004&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;15 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;country&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;SE&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;16 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;override&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;F&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;17 &lt;/span&gt;&lt;/span&gt;theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;isresidential&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;T&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;18 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;19 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #006699;&quot;&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/span&gt; templatedAddress &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;=&lt;/strong&gt;&lt;/span&gt; theCustomer&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;getCurrentLineItemValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addressbook&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;addrtext&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;20 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;21 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddresslist&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;22 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipattention&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;User&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;23 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddressee&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Temp&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Company&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Ltd&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;24 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipphone&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;999-888-7777&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;25 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddr1&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;26 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddr2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;123&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Street&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;27 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipcity&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;28 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipstate&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;Test&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;State&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;29 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipzip&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;10004&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;30 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipcountry&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;SE&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;31 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipoverride&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;F&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;32 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipisresidential&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; &lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;T&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;33 &lt;/span&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;setFieldValue&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;shipaddress&lt;/span&gt;&lt;span style=&quot;color: #ff00cc;&quot;&gt;&#39;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;,&lt;/strong&gt;&lt;/span&gt; templatedAddress &lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: black;&quot;&gt;34 &lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;background: #dbdbdb; border-right: solid 2px black; margin-right: 5px;&quot;&gt;&lt;span style=&quot;color: #990066;&quot;&gt;35 &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color: #9966ff;&quot;&gt;nlapiSubmitRecord&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;(&lt;/strong&gt;&lt;/span&gt;theRecord&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;)&lt;/strong&gt;&lt;/span&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;/span&gt;
&lt;/span&gt;&lt;/pre&gt;
&lt;br /&gt;
Now the address field looks like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiF3d9K4o8aWUfU7yroUiTLTKAV1I3PQTU52oVNSfCfZTkpUAovHsPKm83jQUw_Zgpgo56nHY3lb1UpNFrktmyn-sq93OT9FAh_T12SPaIFd85Q_nM21tkpa-vVt-yCFIzjgY32/s1600/the+templated+address+solution.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiF3d9K4o8aWUfU7yroUiTLTKAV1I3PQTU52oVNSfCfZTkpUAovHsPKm83jQUw_Zgpgo56nHY3lb1UpNFrktmyn-sq93OT9FAh_T12SPaIFd85Q_nM21tkpa-vVt-yCFIzjgY32/s1600/the+templated+address+solution.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;h3&gt;
Summary&lt;/h3&gt;
This solution is acceptable because we only have to load the customer record and not waste time by having to submit the customer record and load it again to get the data. The drawback is that it gets pretty slow and we use up a few execution points extra.&lt;br /&gt;
&lt;br /&gt;
Netsuite really need to fix this. It works fine using web services or if if you do it straight in the UI. Why shouldn&#39;t it work in Suitescript?&lt;br /&gt;
&lt;br /&gt;
I hope this helped you. I know for sure that I couldn’t create the feature I am working on now without this solution.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/5157639620541749245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/10/How-to-get-custom-address-templating-working-in-netsuite.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5157639620541749245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5157639620541749245'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/10/How-to-get-custom-address-templating-working-in-netsuite.html' title='How to get Address Templating Working with Custom Transaction Addresses in Netsuite'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwJee38MMRYCB2RKijRmvlcc6RLj44OHQKtCt2YtqseFmcHAjBnoUnSKZ1XljkLplI_E6FdmeM3HKl7t-fBWLk3PSSti3zApbCfT0m1i36TvM9C9wxBS89H5psyPZ659ONK0bg/s72-c/no+custom+address+added.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-5483349515942559384</id><published>2013-08-08T21:55:00.001+01:00</published><updated>2013-08-08T21:55:51.484+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="home automation"/><category scheme="http://www.blogger.com/atom/ns#" term="TKB"/><category scheme="http://www.blogger.com/atom/ns#" term="vera"/><category scheme="http://www.blogger.com/atom/ns#" term="vesternet"/><category scheme="http://www.blogger.com/atom/ns#" term="z-wave"/><title type='text'>Configuring TKB on/off Switch in VeraLite</title><content type='html'>I have recently finally started the home automation project that I have been mulling over for about 15 years.&lt;br /&gt;
&lt;br /&gt;
I have selected Z-wave as the technology to use and I have started buying some devices from&amp;nbsp;&lt;a href=&quot;http://www.vesternet.com/&quot;&gt;www.vesternet.com&lt;/a&gt;&amp;nbsp;(I am extremely pleased with the service from them so far). They have fantastic deals on Mondays and I have fallen for their marketing several Mondays in a row now. This blog post is about TKB home on/off switch and how to configure it for VeraLite.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Start off like this&lt;/b&gt;&lt;br /&gt;
1. Put the Vera into pairing mode by going to the add devices and select &quot;Add ZWave devices, like light switches, door locks, thermostats, etc.&quot;&lt;br /&gt;
2. Plug in the TKB on/off module close to the VeraLite and the web interface will soon discover it&lt;br /&gt;
3. Follow the instructions to add the device&lt;br /&gt;
&lt;br /&gt;
When this is done you should be able to turn the power on and off on the device. This was when I ran into trouble. The blue light on the TKB on/off module was on when it was not letting power through. To me this seemed very odd. The blue LED was off when power was on. After some help of Google I found this blog post&amp;nbsp;&lt;a href=&quot;http://cdrussell.blogspot.co.uk/2013/05/z-wave-fixing-inverted-led-issue-on-tkb.html&quot;&gt;http://cdrussell.blogspot.co.uk/2013/05/z-wave-fixing-inverted-led-issue-on-tkb.html&lt;/a&gt;, it is a great blog post about how to reverse the blue light but not specific for the Vera. Apparently the relay comes pre programmed in something called night-mode. This is controlled by a parameter on the sensor. Unfortunately the VeraLite doesn&#39;t set this parameter p automatically when the module is added.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Here is how to do it manually&lt;/b&gt;&lt;br /&gt;
1. &amp;nbsp;Find the device in the Vera web interface&lt;br /&gt;
2. Click the wrench symbol in the top right corner of the frame around the device&lt;br /&gt;
3. Go to the tab &quot;Device Options&quot;&lt;br /&gt;
4. Create a new parameter called 1 like the snapshot below&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXhyphenhyphenoi69c981njF-6g4S4xNkq-YswJ4FAOAXb2Sanj4X0M80nVxM90CPZVSUosvwEiY8nuBG6pdBwcqyihm9UbRSiHuleAXtY5tUoQn3Jf_THUJ1KaZ6W9PK_IcMwiUH5rz3Qi/s1600/add+parameter+1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;420&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXhyphenhyphenoi69c981njF-6g4S4xNkq-YswJ4FAOAXb2Sanj4X0M80nVxM90CPZVSUosvwEiY8nuBG6pdBwcqyihm9UbRSiHuleAXtY5tUoQn3Jf_THUJ1KaZ6W9PK_IcMwiUH5rz3Qi/s640/add+parameter+1.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
5. Now save the changes and if needed reload the Vera. After doing so the light should be reverted and working in a more logical way.&lt;br /&gt;
&lt;br /&gt;
For more info on parameter 1 for this device read the blog post here&amp;nbsp;&lt;a href=&quot;http://cdrussell.blogspot.co.uk/2013/05/z-wave-fixing-inverted-led-issue-on-tkb.html&quot;&gt;http://cdrussell.blogspot.co.uk/2013/05/z-wave-fixing-inverted-led-issue-on-tkb.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/5483349515942559384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/08/configuring-tkb-onoff-switch-in-veralite.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5483349515942559384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5483349515942559384'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/08/configuring-tkb-onoff-switch-in-veralite.html' title='Configuring TKB on/off Switch in VeraLite'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXhyphenhyphenoi69c981njF-6g4S4xNkq-YswJ4FAOAXb2Sanj4X0M80nVxM90CPZVSUosvwEiY8nuBG6pdBwcqyihm9UbRSiHuleAXtY5tUoQn3Jf_THUJ1KaZ6W9PK_IcMwiUH5rz3Qi/s72-c/add+parameter+1.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-68250471268173539</id><published>2013-07-29T12:19:00.002+01:00</published><updated>2013-07-29T12:19:58.004+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Netsuite"/><category scheme="http://www.blogger.com/atom/ns#" term="search"/><title type='text'>How to Handle Item Locations on Saved Transaction Searches in Netsuite</title><content type='html'>&lt;h3&gt;
The Problem&lt;/h3&gt;
We have a transaction search that is joined with items and grouped on item internal id. We want to know the stock on order and the stock on hand for a specific location, not all the locations combined. The real problem here is that it is not easy to understand what the global stock values are and what the individual locations values are.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
The Solution&lt;/h3&gt;
So here is what to do to single out a location.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Set up a saved transaction search with &lt;b&gt;main line false&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;In the result tab group the search on &lt;b&gt;item internal id&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;In the results tab set the &lt;b&gt;item:Location on order&lt;/b&gt; and set the aggregation to &lt;b&gt;maximum&lt;/b&gt;&amp;nbsp;this is possible since we will only ever get the quantities of a single location.&lt;/li&gt;
&lt;li&gt;In the results tab set the&amp;nbsp;&lt;b&gt;item:Location on hand&amp;nbsp;&lt;/b&gt;and set the aggregation to&amp;nbsp;&lt;b&gt;maximum&lt;/b&gt;&amp;nbsp;this is possible since we will only ever get the quantities of a single location.&lt;/li&gt;
&lt;li&gt;Now in order to isolate a specific location you need to use the filter &lt;b&gt;item location&lt;/b&gt;&amp;nbsp;and pick the location you are interested in. This is the real trick, it is very tempting to go looking for the fields starting with location but that will not work for this purpose.&lt;/li&gt;
&lt;li&gt;Run the search and you will have a list of your items where you can aggregate sales data but at the same time indicate the state of the stock in a specific location. This is great when keeping an eye on stock of items in a sales for instance.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
This all sound pretty logical and it is when you know what filters and columns to use.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Hopefully this will save someone a bit of time. I know for sure that I will look this blog post up in a couple of months when I need to do a similar search.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/68250471268173539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/07/how-to-handle-item-locations-on-saved.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/68250471268173539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/68250471268173539'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/07/how-to-handle-item-locations-on-saved.html' title='How to Handle Item Locations on Saved Transaction Searches in Netsuite'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-5513474768397185604</id><published>2013-05-04T13:28:00.000+01:00</published><updated>2013-05-04T13:28:02.300+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="app"/><category scheme="http://www.blogger.com/atom/ns#" term="Chrome"/><category scheme="http://www.blogger.com/atom/ns#" term="google keep"/><category scheme="http://www.blogger.com/atom/ns#" term="launchy"/><title type='text'>Launch Google Keep Chrome app with Launchy</title><content type='html'>The new Chrome app for &lt;a href=&quot;https://drive.google.com/keep/&quot; target=&quot;_blank&quot;&gt;Google keep&lt;/a&gt; is&amp;nbsp;&lt;a href=&quot;https://chrome.google.com/webstore/detail/google-keep/hmjkmjkepdijhoojdojkdfohbdgmmhki&quot; target=&quot;_blank&quot;&gt;available in the Chrome web store now&lt;/a&gt;. Grab it now and it will install like any other Chrome app. The difference is that when you click the Google Keep icon it will start up as a separate window and not in a tab as usual. I find it very slow and&amp;nbsp;cumbersome to access the app like that, I would rather&amp;nbsp;use Launchy or maybe the Windows key to launch the app.&lt;br /&gt;
&lt;br /&gt;
Here is how to do that:&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;text-align: center;&quot;&gt;1. Install &lt;/span&gt;&lt;a href=&quot;https://chrome.google.com/webstore/detail/google-keep/hmjkmjkepdijhoojdojkdfohbdgmmhki&quot; style=&quot;text-align: center;&quot; target=&quot;_blank&quot;&gt;Google Keep for Chrome&lt;/a&gt;&lt;br /&gt;
2. Right click the Google Keep launch icon that was created in Chrome.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheSaCLg_Kn1uy3Kxfe7r-pjdfyWz0w8UkqUD6HFi7riICuiN6M-AcOHV8MRbBCXHKC9U_Q8j7rNUt2E5EcYZCZFzWWTYNAMLFyAr34yezq7Czy5oR7nr4h-d-Yef8wWlXmQZF_/s1600/google+keep+create+shortcut.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;222&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheSaCLg_Kn1uy3Kxfe7r-pjdfyWz0w8UkqUD6HFi7riICuiN6M-AcOHV8MRbBCXHKC9U_Q8j7rNUt2E5EcYZCZFzWWTYNAMLFyAr34yezq7Czy5oR7nr4h-d-Yef8wWlXmQZF_/s400/google+keep+create+shortcut.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
3. Now select the option you want. Putting it in the start menu is enough for Launchy to pick it up.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgocOSvOuTEKY-jjVERn_rqrpZCmBc_UlXjSP3XbRu08REYpk2fXurqZgFnWIgZ0y2SOyQgYUsJHsMDPEBLUs_oeAqDgznnT7gBXFNahGboij-vJFdM6DgvwTVVVVSIqyUipb6x/s1600/google+keep+create+shortcut+options.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;237&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgocOSvOuTEKY-jjVERn_rqrpZCmBc_UlXjSP3XbRu08REYpk2fXurqZgFnWIgZ0y2SOyQgYUsJHsMDPEBLUs_oeAqDgznnT7gBXFNahGboij-vJFdM6DgvwTVVVVSIqyUipb6x/s320/google+keep+create+shortcut+options.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
4. Open Launchy and force a reload of the catalogue from the settings or wait for Launchy to pick up the change on it&#39;s own.&lt;br /&gt;
5. Press alt&amp;nbsp;+ space to launch Laucnhy and type in &quot;keep&quot;. Thi is what you will get&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMI8mIODu4OBwGDmU60kvg37_WnNojUUq_WNskQ6Ja6H4ftUb-siMRXuV35tNRXS-XF87930OsnM2Vr-9O9guQEPvwZRjLUSoeeg0NYrGTi7CxL8JOP2-Sju7PcZuoUR_Qut0M/s1600/google+keep+launchy+launch.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;152&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMI8mIODu4OBwGDmU60kvg37_WnNojUUq_WNskQ6Ja6H4ftUb-siMRXuV35tNRXS-XF87930OsnM2Vr-9O9guQEPvwZRjLUSoeeg0NYrGTi7CxL8JOP2-Sju7PcZuoUR_Qut0M/s320/google+keep+launchy+launch.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
6. Just press enter and the Google Keep Chrome app launches as any other app on your system.&lt;br /&gt;
&lt;br /&gt;
This way you can get to the Keep app much quicker than through Chrome. An Google Keep is all about capturing things quickly.&lt;br /&gt;
&lt;br /&gt;
A very simple tip but it will save you a lot of time.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/5513474768397185604/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/05/launch-google-keep-chrome-app-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5513474768397185604'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5513474768397185604'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/05/launch-google-keep-chrome-app-with.html' title='Launch Google Keep Chrome app with Launchy'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheSaCLg_Kn1uy3Kxfe7r-pjdfyWz0w8UkqUD6HFi7riICuiN6M-AcOHV8MRbBCXHKC9U_Q8j7rNUt2E5EcYZCZFzWWTYNAMLFyAr34yezq7Czy5oR7nr4h-d-Yef8wWlXmQZF_/s72-c/google+keep+create+shortcut.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-8870305727892748593</id><published>2013-04-26T11:42:00.001+01:00</published><updated>2013-04-26T11:42:21.412+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iron.io"/><category scheme="http://www.blogger.com/atom/ns#" term="yii"/><category scheme="http://www.blogger.com/atom/ns#" term="yii framework"/><category scheme="http://www.blogger.com/atom/ns#" term="yiiron"/><title type='text'>Yiiron 1.0.4 Released</title><content type='html'>I just released version 1.0.4 of &lt;a href=&quot;https://github.com/br0sk/yiiron&quot; target=&quot;_blank&quot;&gt;Yiiron&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The new features are:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Making use of the new config feature in IronWorkers. Instead of saving the config file in the uploaded zip file it sends it in as an array. No code changes are needed just use version 1.0.4.&lt;/li&gt;
&lt;li&gt;The method workerRunYiiAction now returns the IronWorker task id if it is run with the option ironWorker=true. This way you can use the id to cancel the task or check for progress.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I am working on a demo that will be built on Yiiron. The demo should make it easier for you to understand why you relly should use this extension if you are use the Yii Framework.&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/8870305727892748593/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/04/yiiron-104-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/8870305727892748593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/8870305727892748593'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/04/yiiron-104-released.html' title='Yiiron 1.0.4 Released'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-211299469866520017</id><published>2013-04-04T22:51:00.001+01:00</published><updated>2013-04-04T23:40:04.311+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="composer"/><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="webdev"/><category scheme="http://www.blogger.com/atom/ns#" term="yii"/><category scheme="http://www.blogger.com/atom/ns#" term="yii framework"/><title type='text'>How to use the official Yii installer for Composer</title><content type='html'>I just wrote an extension that integrates Yii and&amp;nbsp;&lt;a href=&quot;http://iron.io/?rc=je1&quot; target=&quot;_blank&quot;&gt;iron.io&lt;/a&gt;&amp;nbsp;it is called &lt;a href=&quot;http://www.yiiframework.com/extension/yiiron&quot; target=&quot;_blank&quot;&gt;Yiiron&lt;/a&gt;.&amp;nbsp;I decided to make the extension &amp;nbsp;installable via Composer. It turns out that there is now an official Yii installer for Composer and since I couldn&#39;t find a tutorial for how to use it I decided to write one. Jump over to the wiki I wrote about it over on the Yii Framework site&amp;nbsp;&lt;a href=&quot;http://www.yiiframework.com/wiki/473/how-to-use-the-official-yii-installer-for-composer/&quot;&gt;http://www.yiiframework.com/wiki/473/how-to-use-the-official-yii-installer-for-composer/&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/211299469866520017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/04/how-to-use-official-yii-installer-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/211299469866520017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/211299469866520017'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/04/how-to-use-official-yii-installer-for.html' title='How to use the official Yii installer for Composer'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-2866696933097519641</id><published>2013-03-13T23:03:00.001+00:00</published><updated>2013-03-13T23:03:51.698+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blogger"/><category scheme="http://www.blogger.com/atom/ns#" term="SEO"/><title type='text'>My search hits are back again!</title><content type='html'>Remember this post&amp;nbsp;&lt;a href=&quot;http://br0sk.blogspot.co.uk/2013/01/how-i-lost-85-of-my-search-hits-over.html&quot;&gt;http://br0sk.blogspot.co.uk/2013/01/how-i-lost-85-of-my-search-hits-over.html&lt;/a&gt;. It&amp;nbsp;describes&amp;nbsp;how I lost 85% of my search hits to this blog. On the 6th of March for some magical reason I now rank better in Google and the result took a leap back up to the same level as before the downgrade.&lt;br /&gt;
To me this is very strange I haven&#39;t made any changes or removed any contents. I have heard a rumour that there is a new Panda release coming up &lt;a href=&quot;http://searchengineland.com/googles-matt-cutts-on-upcoming-penguin-panda-link-networks-updates-151273&quot;&gt;http://searchengineland.com/googles-matt-cutts-on-upcoming-penguin-panda-link-networks-updates-151273&lt;/a&gt;&amp;nbsp;maybe the sudden increase in searches hitting the blog has something with that to do.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJePbfuuTfh68wPz3mo6wXzXYltry-MTM5emwGFxcZ23nXvKBtURtsDi9zDo5wTAAiDCZwgyIxYbTPVQ1vG4Sti0nNmae3cqxZiRcS0QgcAM8a21Tj9vrhji_Xq7Tiyy9MgWkp/s1600/search+hits+are+back.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;138&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJePbfuuTfh68wPz3mo6wXzXYltry-MTM5emwGFxcZ23nXvKBtURtsDi9zDo5wTAAiDCZwgyIxYbTPVQ1vG4Sti0nNmae3cqxZiRcS0QgcAM8a21Tj9vrhji_Xq7Tiyy9MgWkp/s640/search+hits+are+back.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/2866696933097519641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/03/my-search-hits-are-back-again.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/2866696933097519641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/2866696933097519641'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/03/my-search-hits-are-back-again.html' title='My search hits are back again!'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJePbfuuTfh68wPz3mo6wXzXYltry-MTM5emwGFxcZ23nXvKBtURtsDi9zDo5wTAAiDCZwgyIxYbTPVQ1vG4Sti0nNmae3cqxZiRcS0QgcAM8a21Tj9vrhji_Xq7Tiyy9MgWkp/s72-c/search+hits+are+back.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-4763909336156568932</id><published>2013-02-25T23:37:00.003+00:00</published><updated>2013-02-25T23:37:38.641+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="adb"/><category scheme="http://www.blogger.com/atom/ns#" term="android"/><category scheme="http://www.blogger.com/atom/ns#" term="clockworkmod"/><category scheme="http://www.blogger.com/atom/ns#" term="tethering"/><title type='text'>How to get ClockworkMod Tether to work on Android 4.2.2 </title><content type='html'>&lt;span style=&quot;font-size: x-small;&quot;&gt;Note: This is a bit of a hack and I take no responsibility for if something goes wrong with your phone or computer but it sure helped me get Tether running agian.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc4xyx3u7qDshOcLuCGDTMW0Y1whG_s2r4gtVX1iraCDTg7hbfedkqSV8K6pI1gL-h1VoqGrGsTDF9wuP657h4cPiDW09Dbef0yt3ceH1Ts2UhKrI0_3QGvQr2fZ0aYn8ukST7/s1600/Screenshot_2012-12-26-12-18-07.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc4xyx3u7qDshOcLuCGDTMW0Y1whG_s2r4gtVX1iraCDTg7hbfedkqSV8K6pI1gL-h1VoqGrGsTDF9wuP657h4cPiDW09Dbef0yt3ceH1Ts2UhKrI0_3QGvQr2fZ0aYn8ukST7/s320/Screenshot_2012-12-26-12-18-07.png&quot; width=&quot;180&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Recently the excellent application &lt;a href=&quot;https://play.google.com/store/apps/details?id=com.koushikdutta.tether&amp;amp;hl=en&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;ClockworkMod Tether&lt;/a&gt; stopped working for me. I couldn&#39;t figure out why it was always working great before. After some digging I found that this post&amp;nbsp;&lt;a href=&quot;https://plus.google.com/+CyanogenMod/posts/M2pVM7Y6MTq&quot;&gt;https://plus.google.com/+CyanogenMod/posts/M2pVM7Y6MTq&lt;/a&gt;&amp;nbsp;it explains that there has been some changes in how the adb connections work in Android 4.2.2. Now you can set a global setting that allows a specific computer to connect to your phone via adb. If you don&#39;t do this you will not be able to use adb connections at all. This will mean that applications using adb will stop working after you have installed Android 4.2.2. This includes applications like ClockworkMod Tether and for instance&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.faveset.klink_blue&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;Klink&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I have the latest CyanogenMod installed on my phone and that is why I was having this problem.&lt;br /&gt;
&lt;br /&gt;
Here is what I had to do to solve it. This was done on a Windows 8 laptop.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Follow this &lt;a href=&quot;http://www.redmondpie.com/how-to-set-up-android-adb-and-fastboot-on-windows-tutorial/&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&gt;tutorial&lt;/a&gt;&amp;nbsp;to install the latest Android SDK on Windows. It is important to follow the last step where we accept adb connections from the PC. When we run the command &quot;adb devices&quot; there will be a prompt on the phone. Make sure to accept connections from this machine.&lt;/li&gt;
&lt;li&gt;Now we need to get Clockwork Tether to use the latest adb files from the SDK. First take a copy of the directory c:\Program Files (x86)\ClockworkMod\Tether\win32\. Now copy the files&amp;nbsp;C:\Android-adb\platform-tools\adb.exe , C:\Android-adb\platform-tools\AdbWinApi.dll and C:\Android-adb\platform-tools\AdbWinUsbApi.dll to the folder&amp;nbsp;c:\Program Files (x86)\ClockworkMod\Tether\win32\. Overwrite the files already&amp;nbsp;existing. This will require administrator&amp;nbsp;privileges.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Start the Tether application on your PC and connect your phone. This should now once more work.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
You need to do this in order to run tethering like &lt;a href=&quot;http://br0sk.blogspot.co.uk/2012/12/how-to-tether-android-vpn-connection.html&quot; target=&quot;_blank&quot;&gt;this&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/4763909336156568932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/02/how-to-get-clockworkmod-tether-to-work.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4763909336156568932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4763909336156568932'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/02/how-to-get-clockworkmod-tether-to-work.html' title='How to get ClockworkMod Tether to work on Android 4.2.2 '/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc4xyx3u7qDshOcLuCGDTMW0Y1whG_s2r4gtVX1iraCDTg7hbfedkqSV8K6pI1gL-h1VoqGrGsTDF9wuP657h4cPiDW09Dbef0yt3ceH1Ts2UhKrI0_3QGvQr2fZ0aYn8ukST7/s72-c/Screenshot_2012-12-26-12-18-07.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-5386720798331794102</id><published>2013-01-12T11:46:00.001+00:00</published><updated>2013-01-12T11:46:51.883+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="google"/><category scheme="http://www.blogger.com/atom/ns#" term="Google+"/><category scheme="http://www.blogger.com/atom/ns#" term="search rank"/><category scheme="http://www.blogger.com/atom/ns#" term="SEO"/><title type='text'>How I lost 85% of my Search Hits Over Night</title><content type='html'>On the 27:th of December the number of search impressions for my author stats dropped with about 85%! Nobody likes to see something like that. Fortunately I am not a business solely relying on revenue from people coming in from Google. If I was I would probably be out of business by now.&lt;br /&gt;
&lt;h3&gt;
So how did this happen?&amp;nbsp;&lt;/h3&gt;
&lt;div&gt;
On the 26:th of December 2012 I wrote and published this blog post&amp;nbsp;&lt;a href=&quot;http://br0sk.blogspot.co.uk/2012/12/how-to-tether-android-vpn-connection.html&quot;&gt;http://br0sk.blogspot.co.uk/2012/12/how-to-tether-android-vpn-connection.html&lt;/a&gt;. I am pretty sure this is what caused my search impressions to drop heavily the day after(I don&#39;t have any proof for this but the number of search impressions have been very stable up until now). I know that the subject of the post is a bit touchy but it is not illegal and just a little hack to get around an annoying block that the mobile phone service providers are introducing all over the world forcing people to buy expensive tethering accounts even though they only need to use tethering every now and then. I was looking around for information about this subject and it was really hard to find any good information about it so when I got it working I decided to post it for other people to use.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This was apparently not a good decision since it totally killed my SEO even though I am on Blogger. It has nothing to do with a change to the blog it must be purely based on the content posted.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Coming to think about it was probably hard to find any information about this subject because all sites posting this kind of information were kicked down the search ranks in Google.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This is what I did to get my search rank to drop so heavily:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Posted the blog on Blogger&lt;/li&gt;
&lt;li&gt;Shared it on Google+&lt;/li&gt;
&lt;li&gt;Shared it in the CyanogenMod community&amp;nbsp;&lt;a href=&quot;https://plus.google.com/u/0/105779856699545910371/posts/PdSKQh75mqf&quot;&gt;https://plus.google.com/u/0/105779856699545910371/posts/PdSKQh75mqf&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
This is a screen grab of my impression to visit graph taken from the author stats in &lt;a href=&quot;https://www.google.com/webmasters/tools/&quot; target=&quot;_blank&quot;&gt;Google Webmaster&lt;/a&gt; Tools.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Check out the extreme drop in impressions!&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUG8WdUItazplN6Tfvv_uuf6iLpndE3zQ1jHI34NLw9qfX0lO0N8mXH_Z5fMvetRGzdrsBos3GRyW2QouVW2P29ybfbEqK2EKteUrXPAxkCLY-idvtYBEF0SuvkEfxWaJ3qu-q/s1600/85+percent+drop.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;146&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUG8WdUItazplN6Tfvv_uuf6iLpndE3zQ1jHI34NLw9qfX0lO0N8mXH_Z5fMvetRGzdrsBos3GRyW2QouVW2P29ybfbEqK2EKteUrXPAxkCLY-idvtYBEF0SuvkEfxWaJ3qu-q/s640/85+percent+drop.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3&gt;
So why did this happen&lt;/h3&gt;
&lt;div&gt;
I really wonder why this happened?&lt;/div&gt;
&lt;div&gt;
The post doesn&#39;t break any of the rules here&amp;nbsp;&lt;a href=&quot;http://www.blogger.com/content.g&quot;&gt;http://www.blogger.com/content.g&lt;/a&gt;. Both the blog and the Google+ post are still live and I have had no warnings or any indication of that someone thought it was wrong to post this.&lt;/div&gt;
&lt;div&gt;
Can it be that the post was marked as abuse on Google+ and then affected my author score and since my Blog is connected to my Google+ page it dropped my search ranking scrore?&lt;/div&gt;
&lt;div&gt;
It is also very interesting to see how aggressive the drop is and only just one day after the blog post was published.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Feel free to comment if you have any idea of why this might have happened. Have you been affected in a similar way if so how did you solve the problem?&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
It is really sad because I did nothing wrong I just shared information that can help a lot of people get around an annoying problem.&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/5386720798331794102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2013/01/how-i-lost-85-of-my-search-hits-over.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5386720798331794102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5386720798331794102'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2013/01/how-i-lost-85-of-my-search-hits-over.html' title='How I lost 85% of my Search Hits Over Night'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUG8WdUItazplN6Tfvv_uuf6iLpndE3zQ1jHI34NLw9qfX0lO0N8mXH_Z5fMvetRGzdrsBos3GRyW2QouVW2P29ybfbEqK2EKteUrXPAxkCLY-idvtYBEF0SuvkEfxWaJ3qu-q/s72-c/85+percent+drop.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-4683449988548851011</id><published>2012-12-28T14:24:00.002+00:00</published><updated>2012-12-28T14:24:51.749+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android"/><category scheme="http://www.blogger.com/atom/ns#" term="automation"/><category scheme="http://www.blogger.com/atom/ns#" term="tasker"/><title type='text'>Control Aeroplane Mode with Tasker on Android 4.2.x</title><content type='html'>Since Android 4.2 Android no longer allows access to the aeroplane mode and what radios to turn off during aeroplane mode.&lt;br /&gt;
&lt;br /&gt;
This was a real problem for me since I use &lt;a href=&quot;http://tasker.dinglisch.net/&quot; target=&quot;_blank&quot;&gt;Tasker&lt;/a&gt;&amp;nbsp;to turn off 3G radio at home automatically to save battery since coverage is very poor in our house. When I say turn off 3G radio I mean not only the 3G data but the whole mobile radio which means that I cannot receive phone calls or text messages. As soon as I leave my home WiFi the phone automatically activates the 3G radio. This is a great way to save battery in areas with poor mobile reception. It prevents the phone from raising the power to try to get in contact with the base stations.&lt;br /&gt;
&lt;br /&gt;
This worked fine before Android 4.2 but Tasker cannot handle that any more because of a change in Android 4.2.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Solution&lt;/b&gt;&lt;br /&gt;
Luckily there is a nice little program that can take care of this problem.&lt;br /&gt;
To get it to work we need this:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;b&gt;rooted &lt;/b&gt;phone. It will not work on a non rooted phone since&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.intangibleobject.securesettings.plugin&quot; target=&quot;_blank&quot;&gt;Secure Settings&lt;/a&gt;&amp;nbsp;has to be installed in a non standard location.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://tasker.dinglisch.net/&quot; target=&quot;_blank&quot;&gt;Tasker&lt;/a&gt;&amp;nbsp;installed&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.intangibleobject.securesettings.plugin&quot; target=&quot;_blank&quot;&gt;Secure Settings&lt;/a&gt; installed&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
When creating a task in Tasker you can now once again select what radios to disable when aeroplane mode is activated. Here is how to do it.&lt;/div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li&gt;Open Tasker&lt;/li&gt;
&lt;li&gt;Go to the task tab&lt;/li&gt;
&lt;li&gt;Create a new task&lt;/li&gt;
&lt;li&gt;Click the&amp;nbsp;+ sign to add a new action to the task&lt;/li&gt;
&lt;li&gt;Click the plugin option&lt;/li&gt;
&lt;li&gt;Click Secure Settings&lt;/li&gt;
&lt;li&gt;Click edit button next to the label &quot;Configuration&quot;&lt;/li&gt;
&lt;li&gt;Scroll down to the helper functions&lt;/li&gt;
&lt;li&gt;Select Airplane Mode Radios&lt;/li&gt;
&lt;li&gt;Tick the radios you want to disable when aeroplane mode is activated&lt;/li&gt;
&lt;li&gt;Click the save button in the lower left corner(it looks like a floppy drive)&lt;/li&gt;
&lt;li&gt;Repeat 4-8&lt;/li&gt;
&lt;li&gt;Click Airplane mode&lt;/li&gt;
&lt;li&gt;Tick the radio button for &quot;on&quot;&lt;/li&gt;
&lt;li&gt;Click the save button&lt;/li&gt;
&lt;li&gt;Now test the action by clicking the play button in the lower right corner&lt;/li&gt;
&lt;li&gt;Watch the aeroplane mode icon showing up and the WiFi still staying active(if fyou selected to only turn off the radio in step 10)&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
Now you can use this task in any profile.&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I hope this will help somebody trying to find out how to change these settings from Tasker.&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/4683449988548851011/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/12/control-aeroplane-mode-with-tasker-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4683449988548851011'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4683449988548851011'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/12/control-aeroplane-mode-with-tasker-on.html' title='Control Aeroplane Mode with Tasker on Android 4.2.x'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-1562696769358228153</id><published>2012-12-26T12:50:00.001+00:00</published><updated>2012-12-26T12:50:11.935+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="astrill"/><category scheme="http://www.blogger.com/atom/ns#" term="block"/><category scheme="http://www.blogger.com/atom/ns#" term="clockworkmod"/><category scheme="http://www.blogger.com/atom/ns#" term="tethering"/><category scheme="http://www.blogger.com/atom/ns#" term="vpn"/><title type='text'>How to Tether an Android VPN Connection a.k.a How to Bypass Operator Tethering Block</title><content type='html'>&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;float: right; margin-left: 1em; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc4xyx3u7qDshOcLuCGDTMW0Y1whG_s2r4gtVX1iraCDTg7hbfedkqSV8K6pI1gL-h1VoqGrGsTDF9wuP657h4cPiDW09Dbef0yt3ceH1Ts2UhKrI0_3QGvQr2fZ0aYn8ukST7/s1600/Screenshot_2012-12-26-12-18-07.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;ClockworkMod Tether Application&quot; border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc4xyx3u7qDshOcLuCGDTMW0Y1whG_s2r4gtVX1iraCDTg7hbfedkqSV8K6pI1gL-h1VoqGrGsTDF9wuP657h4cPiDW09Dbef0yt3ceH1Ts2UhKrI0_3QGvQr2fZ0aYn8ukST7/s320/Screenshot_2012-12-26-12-18-07.png&quot; title=&quot;ClockworkMod Tether Application&quot; width=&quot;180&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;ClockworkMod Tether Application&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;The problems this solves&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;I cannot tether my VPN connection on my Android Phone to my laptop/PC&lt;/li&gt;
&lt;li&gt;My mobile phone network detects and prevents &amp;nbsp;me from tethering&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;b&gt;Limitations/Drawbacks&lt;/b&gt;&lt;br /&gt;
Before you even start reading this you should know about the limitations of this solution.&lt;br /&gt;
Note: I have only tested this solution for a few hours. I will post an update later with my thoughts on how well the solution works.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;This will only work for Mac, Windows and Linux computers&lt;/li&gt;
&lt;li&gt;You are connected via USB not WiFi, that is no wireless tethering!&lt;/li&gt;
&lt;li&gt;It requires you to use an encrypted VPN connection&lt;/li&gt;
&lt;li&gt;The full version of Clockworkmod Tether costs 5$ (still way cheaper than getting a full blown tethering plan with your mobile phone operator)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Background&lt;/b&gt;&lt;br /&gt;
When I am out and about I want to to be able to connect to the internet via a VPN and tether my 3G connection to my laptop. This doesn&#39;t work on Android phones by default for some reason. As soon as you activate the VPN the tethered device refuses to get an internet connection. I am not sure why and I think it should be sorted in Android (solving that would render this blog post meaningless and that would actually be a good thing).&lt;br /&gt;
&lt;br /&gt;
As soon as I turn off the VPN on my phone I can tether without any problems. Wired and via WiFi. This means that I lose the security benefit of the VPN and even worse my mobile phone operator cuts me off within minutes because they detect that I am tethering and want to charge me a huge amount of money for me using this function a few times per month.&lt;br /&gt;
&lt;br /&gt;
This really&amp;nbsp;frustrated me and I just had to find a&amp;nbsp;solution.&lt;br /&gt;
After trying loads of tethering apps and settings I came up with the working solution below.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Solution&lt;/b&gt;&lt;br /&gt;
The solution is based on an encrypted VPN connection. I am using&amp;nbsp;&lt;a href=&quot;http://www.astrill.com/&quot; target=&quot;_blank&quot;&gt;www.astrill.com&lt;/a&gt;&amp;nbsp;as the VPN. To tether the connection to my Windows laptop I am using&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.koushikdutta.tether&quot; target=&quot;_blank&quot;&gt;ClockworkMod Tether (no root)&lt;/a&gt;. This seems to be the only&amp;nbsp;tethering&amp;nbsp;solution that is stable and offers what it promises. What is great with&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.koushikdutta.tether&quot; target=&quot;_blank&quot;&gt;ClockworkMod Tether (no root)&lt;/a&gt;&amp;nbsp;is that it basically just&amp;nbsp;tunnels any connection active on the phone straight to the computer. This means that it works with a WiFi, 3G or any other internet connection the phone has. The VPN secures and encrypts the connection and one benefit with this is that your mobile phone operator cannot packet sniff the data to check for browser agents and similar things. To the operator the connection looks like any other encrypted VPN traffic and&amp;nbsp;therefore it allows it through instead of blocking the traffic.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Setup&lt;/b&gt;&lt;br /&gt;
1. Download and install&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.koushikdutta.tether&quot; target=&quot;_blank&quot;&gt;ClockworkMod Tether (no root)&lt;/a&gt;&amp;nbsp;on your phone. Follow the instructions for how to install the Windows/Mac/Linux software on your laptop. Just follow the instructions and you should be fine.&lt;br /&gt;
&lt;br /&gt;
2. Sign up for a VPN connection with&amp;nbsp;&lt;a href=&quot;http://www.astrill.com/&quot; target=&quot;_blank&quot;&gt;www.astrill.com&lt;/a&gt;(I am sure it works fine with other VPN suppliers but since I am running Astrill I will give you the instructions only for that VPN). They have a free trial if you ask in their chat support. Follow these &lt;a href=&quot;https://www.astrill.com/knowledge-base/81/PPTP---How-to-configure-PPTP-on-Android-ICS.html&quot; target=&quot;_blank&quot;&gt;instructions&lt;/a&gt; for setting the VPN connection up on your phone. The instructions are for ICS but it is basically the same on Jelly Bean. Now activate the the VPN connection on your phone.&lt;br /&gt;
&lt;br /&gt;
3. If your phone is not already connected to your computer with a USB cable please connect it now.&lt;br /&gt;
&lt;br /&gt;
4. Start the application called Tether that you now have installed on your Android phone. Activate it by tapping the USB symbol on screen.&lt;br /&gt;
&lt;br /&gt;
5. Start the program &lt;a href=&quot;https://play.google.com/store/apps/details?id=com.koushikdutta.tether&quot; target=&quot;_blank&quot;&gt;c&lt;/a&gt;alled Tether&amp;nbsp;on your PC(you can find it in the start menu under Clockworkmod on Windows).&lt;br /&gt;
&lt;br /&gt;
6. Now click the start button in the application on the computer. You should see log entries starting to appear.If everything works fine the USB symbol should turn green and the text should say &quot;USB tether is running&quot;&lt;br /&gt;
&lt;br /&gt;
7. Now try to access a web page on your computer. You should be able to do so without getting blocked for tethering. You are now using a secure tethered connection on your computer.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.koushikdutta.tether&quot; target=&quot;_blank&quot;&gt;ClockworkMod Tether (no root)&lt;/a&gt;&amp;nbsp;is free for 14 days and then it costs 5$ to buy.&lt;br /&gt;
&lt;br /&gt;
This solution is great if you are using tethering occasionally. If you are using it all the time you should really buy a proper tethering contract with your operator.&lt;br /&gt;
&lt;br /&gt;
If you have a better solution for how to get something like this working please let me know :-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/1562696769358228153/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/12/how-to-tether-android-vpn-connection.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/1562696769358228153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/1562696769358228153'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/12/how-to-tether-android-vpn-connection.html' title='How to Tether an Android VPN Connection a.k.a How to Bypass Operator Tethering Block'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhc4xyx3u7qDshOcLuCGDTMW0Y1whG_s2r4gtVX1iraCDTg7hbfedkqSV8K6pI1gL-h1VoqGrGsTDF9wuP657h4cPiDW09Dbef0yt3ceH1Ts2UhKrI0_3QGvQr2fZ0aYn8ukST7/s72-c/Screenshot_2012-12-26-12-18-07.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-502490294106426208</id><published>2012-12-16T15:42:00.001+00:00</published><updated>2012-12-16T15:42:54.056+00:00</updated><title type='text'>Use your Gaming Headset with your Mobile Phone</title><content type='html'>A while ago I bought this gaming headset &lt;a href=&quot;http://www.amazon.co.uk/gp/product/B005G4XBW4/ref=as_li_tf_tl?ie=UTF8&amp;amp;camp=1634&amp;amp;creative=6738&amp;amp;creativeASIN=B005G4XBW4&amp;amp;linkCode=as2&amp;amp;tag=br0skblogspot-21&quot;&gt;Asus R.O.G Vulcan ANC Noise Cancelling Gaming Headset&lt;/a&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://www.assoc-amazon.co.uk/e/ir?t=br0skblogspot-21&amp;amp;l=as2&amp;amp;o=2&amp;amp;a=B005G4XBW4&quot; style=&quot;border: none !important; margin: 0px !important;&quot; width=&quot;1&quot; /&gt;&amp;nbsp;and it has been&amp;nbsp;fantastic&amp;nbsp;for the price. To get even more value out of them I decided to try to get them to fully work with my Samsung S3. The headset can be used with the S3 straight out of the box and the phone has enough power to drive the speakers. Since the headset has two separate connectors for the speakers and the microphone you will not be able to use the headset for Skype calls or Google Hangouts. This can easily be fixed. Just get this little adapter:&lt;br /&gt;
This will make it possible to use your headset with your phone without any problems. sometimes the headset &amp;nbsp;microphone is not powerful enough to work with hand held devices. This is not the case with the Asus headset. It works flawlessly. I have also tried it with this phone without any problems
&lt;br /&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B004SP0WAQ&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;
I am sure the adapter will work with most headsets, not only the one I have.&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/502490294106426208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/12/use-your-gaming-headset-with-your.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/502490294106426208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/502490294106426208'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/12/use-your-gaming-headset-with-your.html' title='Use your Gaming Headset with your Mobile Phone'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-8670405924417232741</id><published>2012-11-22T18:21:00.000+00:00</published><updated>2012-11-22T19:41:59.667+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="asgari"/><category scheme="http://www.blogger.com/atom/ns#" term="monitoring"/><category scheme="http://www.blogger.com/atom/ns#" term="motion detection"/><category scheme="http://www.blogger.com/atom/ns#" term="record"/><category scheme="http://www.blogger.com/atom/ns#" term="supervision"/><category scheme="http://www.blogger.com/atom/ns#" term="webcam"/><title type='text'>Webcam Remote Recording with Vitamin D and Asgari UIR</title><content type='html'>&lt;h2&gt;
Do you want to record video from your&amp;nbsp;&lt;a href=&quot;http://www.asgariofsweden.se/index.php?p=7&amp;amp;s=2&quot; target=&quot;_blank&quot;&gt;Asgari UIR&lt;/a&gt;&amp;nbsp;on a Windows machine?&lt;/h2&gt;
&lt;h3&gt;
Background&lt;/h3&gt;
&lt;div&gt;
You have bought an&amp;nbsp;&lt;a href=&quot;http://www.asgariofsweden.se/index.php?p=7&amp;amp;s=2&quot; target=&quot;_blank&quot;&gt;Asgari UIR&lt;/a&gt;&amp;nbsp;webcam and you have set it up and you can log in via the web interface to view the camera live. This is all good and works perfectly fine. Now you decide that you want to record the stream and make sure that you want to be notified every time there is movement in the video. The web interface doesn&#39;t have this capability but Asgari have a solution on the support section of their webpage an the solution is to use the &amp;nbsp;program &lt;a href=&quot;http://www.vitamindinc.com/&quot; target=&quot;_blank&quot;&gt;Vitamin D&lt;/a&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I couldn&#39;t find any instructions for how to properly set it up so I decided to make this blog post to be the missing manual.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3&gt;
How to set it all up&lt;/h3&gt;
&lt;b&gt;1. Download the software.&lt;/b&gt;&lt;br /&gt;
Asgari supplies this &lt;a href=&quot;http://www.asgariofsweden.se/dl/vitamind.exe&quot; target=&quot;_blank&quot;&gt;link&lt;/a&gt; to the Vitamin D software on their support page. This guide is based on that version(1.4.2) of Vitamin D.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;2. Install the software&lt;/b&gt;&lt;br /&gt;
Run the downloaded vitamind.exe and pick all the default options.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;3. Set &amp;nbsp;up the Camera&lt;/b&gt;&lt;br /&gt;
Start the Vitamin D and click the &quot;Add Camera...&quot; option in the Tools menu.&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnlg3EV1uMtu47LP3cbi4zlhlEBq9THtKt4i_z7CquZP1ob7V9WwJEIKL4TbUEywy6UP-cBoiAop8GeR8WWAaltsxZ8KCYTYBuJNPXu1_G47KLDQoI-fIcBeSrZWySFr9qwJDy/s1600/wizard-camera-type.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;347&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnlg3EV1uMtu47LP3cbi4zlhlEBq9THtKt4i_z7CquZP1ob7V9WwJEIKL4TbUEywy6UP-cBoiAop8GeR8WWAaltsxZ8KCYTYBuJNPXu1_G47KLDQoI-fIcBeSrZWySFr9qwJDy/s400/wizard-camera-type.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Make sure the setting are like above and click next.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfJZmBEton9eTiCJL89CjtJ1jbFpfizp_ELFv6dogafCV0rKSemwFbWuVcwvFVn_ys1R2EP9KBJka80rbmtTkq4MPoM0QrlKsH5_sp5x2vgR98uf-DOdlJy5Yky3au28U5HRS1/s1600/wizard-select-camera.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;346&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfJZmBEton9eTiCJL89CjtJ1jbFpfizp_ELFv6dogafCV0rKSemwFbWuVcwvFVn_ys1R2EP9KBJka80rbmtTkq4MPoM0QrlKsH5_sp5x2vgR98uf-DOdlJy5Yky3au28U5HRS1/s400/wizard-select-camera.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Chose the third option since the camera will not show up since it is not on your local network.&lt;br /&gt;
Click next.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxpTOE3O6vXeCTMeBGIFVKQxFNpGI81ig14t2n-bxSkH3hFbfZqdo9TP29UsrlUSsqMJVxanHTnpKAX0fPyTIb_XkW20dxkwVa8M4lR1CPAvbXvBIBIRwi2r72WeLCVfKp468g/s1600/wizard-ip-settings.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;348&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxpTOE3O6vXeCTMeBGIFVKQxFNpGI81ig14t2n-bxSkH3hFbfZqdo9TP29UsrlUSsqMJVxanHTnpKAX0fPyTIb_XkW20dxkwVa8M4lR1CPAvbXvBIBIRwi2r72WeLCVfKp468g/s400/wizard-ip-settings.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Put the public IP of &amp;nbsp;the camera in.&lt;br /&gt;
Pick the port you selected in the web interface settings.&lt;br /&gt;
Here is the &amp;nbsp;&lt;b&gt;important part&lt;/b&gt;&amp;nbsp;set the Stream path to videostream.cgi.&lt;br /&gt;
If you have set up authentication for your camera &amp;nbsp;you need to put in the username and password.&lt;br /&gt;
Click next&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKnGQsFeyOEa3nUeMPXZ5ykvven3FZJfBhVqChaKZcOaYk5hc8sg8Ve3mLIliDkuHtgRMMm06S_LmdJyY-hsIViS08AqKMiwxAY3QE0ztbzlqoCTdBb0MOgymLW_S69rSQ8xTh/s1600/wizard-test-connection.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;350&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKnGQsFeyOEa3nUeMPXZ5ykvven3FZJfBhVqChaKZcOaYk5hc8sg8Ve3mLIliDkuHtgRMMm06S_LmdJyY-hsIViS08AqKMiwxAY3QE0ztbzlqoCTdBb0MOgymLW_S69rSQ8xTh/s400/wizard-test-connection.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Wait a little while and the camera picture should show up.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;
&lt;br /&gt;
That&#39;s it! Now you can record the camera and set up rules for the motion detection. That is outside the scope of this blog post. Details about how to use Vitamin D can be found on their &lt;a href=&quot;http://www.vitamindinc.com/support/ref_guide_home.html&quot; target=&quot;_blank&quot;&gt;support webpage&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
I have found this solution to be pretty stable even over a 3g connection. It is a great solution if you want to record and later on scan through the times when there was any motion in the picture.&lt;br /&gt;
&lt;br /&gt;
Have fun!&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/8670405924417232741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/11/webcam-remote-recoding-with-vitamin-d.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/8670405924417232741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/8670405924417232741'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/11/webcam-remote-recoding-with-vitamin-d.html' title='Webcam Remote Recording with Vitamin D and Asgari UIR'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnlg3EV1uMtu47LP3cbi4zlhlEBq9THtKt4i_z7CquZP1ob7V9WwJEIKL4TbUEywy6UP-cBoiAop8GeR8WWAaltsxZ8KCYTYBuJNPXu1_G47KLDQoI-fIcBeSrZWySFr9qwJDy/s72-c/wizard-camera-type.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-8906095225130239041</id><published>2012-09-13T23:45:00.001+01:00</published><updated>2012-09-13T23:45:43.617+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="home cinema"/><category scheme="http://www.blogger.com/atom/ns#" term="HTPC"/><category scheme="http://www.blogger.com/atom/ns#" term="Plex"/><category scheme="http://www.blogger.com/atom/ns#" term="unifiedremote"/><title type='text'>Best price/performance HTPC on a budget 2012</title><content type='html'>&lt;br /&gt;
&lt;br /&gt;
Recently my old Dell Dimension 9200 died and it needed to be replaced with something new. It was 10 years ago I built my last HTPC so I was a bit out of the game. I went on the hunt for some good information about what components to get the to&amp;nbsp;fulfil&amp;nbsp;my requirements. I couldn&#39;t find much good up to date information out there. I came across  &lt;a href=&quot;http://mymediaexperience.com/&quot;&gt;www.mymediaexperience.com&lt;/a&gt;  site and it got some great guides and tips. They offer a great guide to building your own HTPC. It is in PDF format and they claim that they update it so that it stays current with regards to the hardware. Just sign upp to their new letter and the PDF will be available for you. I took most of the ideas and inspiration from the &lt;a href=&quot;http://mymediaexperience.com/htpc-builds/value-htpc/&quot;&gt;budget alternative&lt;/a&gt; they offer. I changed a few things to make it fit my needs.&lt;br /&gt;
&lt;h3&gt;
My Requirements&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Keep the cost below £600&lt;/li&gt;
&lt;li&gt;Low energy consumption(somewhere around 25 Watts in idle mode)&lt;/li&gt;
&lt;li&gt;Low noise&lt;/li&gt;
&lt;li&gt;Ability to show HD video in full HD resolution&lt;/li&gt;
&lt;li&gt;Run Windows 7&lt;/li&gt;
&lt;li&gt;Act as a Plex server for at least 4 devices at once&lt;/li&gt;
&lt;li&gt;Run a Plex client&lt;/li&gt;
&lt;li&gt;Run Windows Media Centre using Freeview HD signal&lt;/li&gt;
&lt;li&gt;Possibility to control the PC using Unified Remote for Android&lt;/li&gt;
&lt;li&gt;Possibility to use laptops as mouse and keyboard using Input Director&lt;/li&gt;
&lt;li&gt;Possibility to login remotely using Windows Remote Desktop Connection without kicking the current user out.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
The Result&lt;/h3&gt;
&lt;div&gt;
I have now been running the setup for a week and I am thoroughly impressed with what this&amp;nbsp;relatively&amp;nbsp;cheap machine can do.&lt;/div&gt;
&lt;div&gt;
The price at the time of purchase ended up at &lt;b&gt;£529.68&lt;/b&gt;&amp;nbsp;and was as you can see under budget. You can find links to a the components below. I haven&#39;t measured the energy consumption but if I put it like this the room where the HTPC is running is not half as warm as it was with the old Dell 9200. The machine is very quiet. You can barely hear the fans from a few meters distance. HD video runs smooth and the built in graphics card doesn&#39;t have any problems showing the Freeview HD channels. The plex server runs without any problems. I have been streaming from 3 PC&#39;s and a Samsung Galaxy S3 at the same time without any problems. At the same time I was running the Plex client on a 42&quot; full HD TV from the new machine. The processor easily copes with this load. Freeview is running just fine in MCE. As I mention further down it is important to have a good strength signal to get it to work perfectly. No problem with Unified remote. It is much more responsive on this new server, especially when it comes to synching the remotes. Input director is running just fine and we can control the HTPC from any laptop this way. I have implemented this&amp;nbsp;&lt;a href=&quot;http://br0sk.blogspot.com/2011/12/concurrent-remote-desktop-htpc-setup.html&quot;&gt;http://br0sk.blogspot.com/2011/12/concurrent-remote-desktop-htpc-setup.html&lt;/a&gt;&amp;nbsp;on the new PC and it works perfectly fine.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Overall I am extremely happy with the build and wouldn&#39;t have wanted to do it in any other way. I would suggest this setup to anybody with similar requirement to mine. Below follows a link of all the components needed to build this HTPC/media server.&lt;/div&gt;
&lt;h3&gt;
The Components&lt;/h3&gt;
Here is my selection of components and a motivation to why I selected the components.&lt;br /&gt;
&lt;h4&gt;
The case - Fractal Design Define Mini Series Micro ATX Case - Black Pearl&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?lt1=_blank&amp;amp;bc1=FFFFFF&amp;amp;IS2=1&amp;amp;nou=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;ref=tf_til&amp;amp;asins=B004ZH18VE&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;

This is an excellent Swedish designed case. It is built to be quiet. It comes with padded inside and blocked case fan holes. It has two quiet case fans that can be controlled by the bundled fan controller. Since we are not going to use a dedicated graphics card we will not need to mount any more fans or open up the two spare fan holes. Since my HTPC will be hidden away in a small room separate from the living room I went for a bigger, cooler and more quiet case. If I would have had the computer on display in the living room I would probably have selected a more Hi-Fi like case. I am very happy with the case choice it beats my old Antec Sonata Piano II hands down when it comes to build quality and sound levels.&lt;/div&gt;
&lt;h4&gt;
Gigabyte SKT-1155 Z68MA-D2H-B3 Motherboard&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B0050AQAPE&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;This motherboard was selected since it can take the new Intel I3 processors. It has a built in Intel graphics card that is capable of rendering full HD movies as TV broadcasts and Blu-Ray. It also has optical sound out that I need for the connection to the 5.1 amplifier. It is also in the Micro ATX format that fits nicely in the selected case. It has a good price to performance ratio. One thing to note is that you should download the latest drivers from the manufacturers homepage. I had a problem with distorted sound over HDMI before I did so. The HDMI outlet is HDCP compatible, this means that it allows playback of Blu-ray/HD DVD and other protected media content.&lt;/div&gt;
&lt;h4&gt;
Intel Core i3 2125 3.3 GHz Processor with Socket 1155, L3 3Mb, Sandy Bridge, 32nm&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B005JBPRVW&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;
We are going for an Intel I3 processor because of the price, energy efficiency, power and ability to process HD content. I am&amp;nbsp;choosing&amp;nbsp;the 2125 since it has the Intel HD 3000 technology built in.&amp;nbsp;This is important since we are going for a system that is not going to make use of a dedicated graphics card.&amp;nbsp;You could go for the 2105 but it is slightly slower and at the time of purchase the 2125 was cheaper. You need an I3 processor ending with a model number ending in 5, the other ones have the HD 2000 which is not as powerful and probably demands a dedicated Graphics card to play HD movies.&lt;/div&gt;
&lt;h4&gt;
OCZ AGT3-25SAT3-120G Agility 3 120GB SATA III 2.5 inch SSD&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B004Z0S6SO&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;

To make sure that the HTPC is quick at launching programs and that it runs quietly we select an SSD drive for the Windows&amp;nbsp;installation. It is totally worth the extra money. I am only using this disk to install Windows and the essential programs like Plex. All the media goes on the 2 gig HDD. This SSD is great for the price and works just fine together with the I3 processor above.&lt;br /&gt;
This is probably the component in our build that will have the highest Windows performance score.&lt;/div&gt;
&lt;h4&gt;
Corsair CMPSU-430CXV2UK Builder Series CX430V2 - 80 Plus Certified Power Supply&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B0057GTW56&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;Since our build is not as demanding as a high end gaming machine we can go for a cheaper PSU. One of our requirements is to keep the HTPC quiet, this Corsair is an excellent choice if you need a silent PC. I have been running it for a week now and the machine is rock solid. It seems to be able to power the components I picked without any problems. If you are planning to power 4 raided disks and a high power graphics card &amp;nbsp;you should pick another more powerful PSU. For my purposes this is an excellent choice.&amp;nbsp;&lt;a href=&quot;http://mymediaexperience.com/&quot;&gt;www.mymediaexperience.com&lt;/a&gt;&amp;nbsp;are suggesting an Antec PSU, I am sure that is just fine but I have had three Antec PSU&#39;s &amp;nbsp;in my life and eventually they have all failed with a bang so I am going for Corsair this time.&lt;/div&gt;
&lt;h4&gt;
G-Skill Ripjaws DDR3 PC10666 1333MHz 4GB Kit
&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B003BJ6U2E&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;Since we are going to run Windows 7 64 bit on the machine we need at least 4 gigs of RAM. We want RAM &amp;nbsp;that will stay cool and stable. We are not overclocking or anything like that so we should be fine with relatively cheap memory. I am going for this pair because they have built in cooling plates and a good price. You could argue for getting 8 gigs straight away but 4 is just fine for our purposes. The motherboard allows for another identical pair to be put in if needed.&lt;/div&gt;
&lt;h4&gt;
PCTV Systems DVB-T2 290e nanoStick HD TV Tuner - Watch, Pause &amp;amp; Record Digital Freeview Hi Definition and Standard Definition TV on your PC. Stream LIVE TV to your iPad, iPhone, PC or MAC.
&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B004C1176E&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;
One of the features of this HTPC is for us to be able to watch and record UK Freeview. To do this you need a TV tuner. I needed one that could handle both the SD and HD channels. At the point of buying the components for this build this was about the only card that would properly receive the terrestrial Freeview HD channels. It needs a good strength signal to work but when it has that it works flawlessly. Installation is super simple plug and play to get it working in Windows Media Center. Scanning is slow but after that it just works. If you want to be able to record and watch you will need two of these.&lt;/div&gt;
&lt;h4&gt;
Seagate Barracuda 3.5 inch 2TB 7200 RPM 64MB 6GB/S Internal SATA Drive
&lt;/h4&gt;
&lt;div style=&quot;height: 260px;&quot;&gt;
&lt;iframe align=&quot;left&quot; frameborder=&quot;0&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; scrolling=&quot;no&quot; src=&quot;http://rcm-uk.amazon.co.uk/e/cm?t=br0skblogspot-21&amp;amp;o=2&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B006H32Q3S&amp;amp;nou=1&amp;amp;ref=tf_til&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&quot; style=&quot;height: 240px; width: 120px;&quot;&gt;&lt;/iframe&gt;

Since the build is a combined HTPC and media server installation we need a proper disk to house our media. Especially since we decided to go for an SSD as the Windows disk.&lt;br /&gt;
I am choosing this Seagate since that is a brand I have never had any crashes with. The drive is also extremely quite when it comes to reading and writing. It is barely noticeable when it reindexes the whole music meta data using the Plex media server. I am not running a RAID configuration to protect the media. Instead I am backing up the whole media computer using &lt;a href=&quot;http://www.backblaze.com/&quot;&gt;www.backblaze.com&lt;/a&gt;. You can back up an unlimited amount of data for $3.96 / month. This is only an option if you have a&amp;nbsp;connection&amp;nbsp;with decent upload speed.&lt;/div&gt;
&lt;h4&gt;
Pictures from the build
&lt;/h4&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkR7IFVLEsFCVGic1hMM1jGSao58A_raX6raCFSAlgpzteI2VtOwzCBXrtWl1-5J-ob9sZqYckWYSb5dxou8bN63z9tzYCSNcan5OKRkc6n_3noXWqC7KiBElrpjdPFHmvfrXU/s1600/20120905_174904.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkR7IFVLEsFCVGic1hMM1jGSao58A_raX6raCFSAlgpzteI2VtOwzCBXrtWl1-5J-ob9sZqYckWYSb5dxou8bN63z9tzYCSNcan5OKRkc6n_3noXWqC7KiBElrpjdPFHmvfrXU/s320/20120905_174904.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Case fan at the back&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_ys3JhVv7StuNaag9SwkUOY-StAvOA1Kj1GziJeiMmKXFgHvqha3CFF_Tfk0O0ug22E066ry_vOms5x61AX25Z4R5yKFEKca9MXEQxFrPjJk5msQ5AeAWctJRP3uDGD4RgqXF/s1600/20120907_095637.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_ys3JhVv7StuNaag9SwkUOY-StAvOA1Kj1GziJeiMmKXFgHvqha3CFF_Tfk0O0ug22E066ry_vOms5x61AX25Z4R5yKFEKca9MXEQxFrPjJk5msQ5AeAWctJRP3uDGD4RgqXF/s320/20120907_095637.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Notice how the PSU is at the bottom of the case&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2pLOaFharIuYEgSi1nbj4Ie1lSooyeCdwa9ZXnc6tMlz7lvAT6dC1eX7HGszciWjcqn2EuAxXCWarJTkyG2DLmD6PpMWTbgtko2arif2WAbVM2EBQBkd_CIwC5ZNRDTVBG-az/s1600/20120907_095713.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2pLOaFharIuYEgSi1nbj4Ie1lSooyeCdwa9ZXnc6tMlz7lvAT6dC1eX7HGszciWjcqn2EuAxXCWarJTkyG2DLmD6PpMWTbgtko2arif2WAbVM2EBQBkd_CIwC5ZNRDTVBG-az/s320/20120907_095713.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;View from the back&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrJ0rJmHmyzh_m7U_thw7Sw6fMaeoQtuytsYxa1ZUJ3WSv0Xaif9Dcm8mwUvbORGJmk5-tZ7057LbsaNdmhd_OfYKWhyphenhyphenBDPxf6Majh5Q909FIuwXz1sJrEXny3uR4MhSxRc22l/s1600/20120907_101147.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrJ0rJmHmyzh_m7U_thw7Sw6fMaeoQtuytsYxa1ZUJ3WSv0Xaif9Dcm8mwUvbORGJmk5-tZ7057LbsaNdmhd_OfYKWhyphenhyphenBDPxf6Majh5Q909FIuwXz1sJrEXny3uR4MhSxRc22l/s320/20120907_101147.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The SSD&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihCgRHlriaU33kC9ibAriue6lgd1FAMPZX5N2tEeA5xVxMfpQT4TQpaN0ElJb_bLeGpVSatv3FlRBKBvQG2SjYuBKYsG3FQYyKsJbOicIue42rwNJzkvfQWxHqwqg7kYoxcdhB/s1600/20120907_101655.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihCgRHlriaU33kC9ibAriue6lgd1FAMPZX5N2tEeA5xVxMfpQT4TQpaN0ElJb_bLeGpVSatv3FlRBKBvQG2SjYuBKYsG3FQYyKsJbOicIue42rwNJzkvfQWxHqwqg7kYoxcdhB/s320/20120907_101655.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The HDD compartments have holes for 2.5 SSD drives.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDVdUQ25g3fqLBnamhf7EZhrFJsGqBfVUcLeIlbNI7Z1-5zECHJpl-wqoTCD3PHsPiGu5XdWUBbUrYJI9VWvt2HGVs0_EtdPrF3GurUXNQnJ3jwr1mRoT4zwYj45QyiSgy8cBo/s1600/20120907_101710.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDVdUQ25g3fqLBnamhf7EZhrFJsGqBfVUcLeIlbNI7Z1-5zECHJpl-wqoTCD3PHsPiGu5XdWUBbUrYJI9VWvt2HGVs0_EtdPrF3GurUXNQnJ3jwr1mRoT4zwYj45QyiSgy8cBo/s320/20120907_101710.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Side view without the motherboard installed&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhpgI2sRlSTFWUlUCMs1EImIgcIaZewx_i99TDbFVjMItzrSE2xXjDwW4KfzdH3LztvuCGqxBsjF8GYaAOMaBbJ6Ms663gL6LDsz9U_lL6j4227ONzYZyrA4ksq8kt6xNxMuyw/s1600/20120907_135244.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhpgI2sRlSTFWUlUCMs1EImIgcIaZewx_i99TDbFVjMItzrSE2xXjDwW4KfzdH3LztvuCGqxBsjF8GYaAOMaBbJ6Ms663gL6LDsz9U_lL6j4227ONzYZyrA4ksq8kt6xNxMuyw/s320/20120907_135244.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The Intel I3 2125&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjDsDgUQ3St8ZLv9KKrJ9YT_Kz6-9OdOlMuEvz9qpa0VAYt6jArVN1tsfLt7un6r6jGY7AeWhQshTOcyMv2CIHy6-OaEufSoBRcH21LAi3F7JJQY9YpY11U0SAYay6BBGFxE6b/s1600/20120907_140231.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjDsDgUQ3St8ZLv9KKrJ9YT_Kz6-9OdOlMuEvz9qpa0VAYt6jArVN1tsfLt7un6r6jGY7AeWhQshTOcyMv2CIHy6-OaEufSoBRcH21LAi3F7JJQY9YpY11U0SAYay6BBGFxE6b/s320/20120907_140231.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;THe motherboard, notice the damping material on the case side&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZr6D5pto_boJRSiK83hTVePHP1x2z1KlkK8R3H5ZhH0eWPHq2dP5SfXtTamP7eXSLvh65TUq5b36xpjHOJA2X2DfuIIC097SwpFZ3Ycq2WiD3FwCEGHIvqtXE67GXzgLVroUE/s1600/20120907_141412.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZr6D5pto_boJRSiK83hTVePHP1x2z1KlkK8R3H5ZhH0eWPHq2dP5SfXtTamP7eXSLvh65TUq5b36xpjHOJA2X2DfuIIC097SwpFZ3Ycq2WiD3FwCEGHIvqtXE67GXzgLVroUE/s320/20120907_141412.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Side view with the motherboard installed&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOSJyaUmVuORtUt3HbZwA6C9Hg3nljWWQHQCXnt_-_2f9C5uv2Pk4zjAp050JjNAAWfoNIdl0UtvvSgFRrFevsrVkq2VKiQ5mg3co_uQ-WBcu3zorl4BJYY42GnZpo-X680RWE/s1600/20120907_142808.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOSJyaUmVuORtUt3HbZwA6C9Hg3nljWWQHQCXnt_-_2f9C5uv2Pk4zjAp050JjNAAWfoNIdl0UtvvSgFRrFevsrVkq2VKiQ5mg3co_uQ-WBcu3zorl4BJYY42GnZpo-X680RWE/s320/20120907_142808.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The RAM&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;h4&gt;
Questions?&lt;/h4&gt;
&lt;/div&gt;
&lt;div&gt;
If you have any questions about this build add a comment to this blog post or on my G+ page.&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/8906095225130239041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/09/best-priceperformance-htpc-on-budget.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/8906095225130239041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/8906095225130239041'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/09/best-priceperformance-htpc-on-budget.html' title='Best price/performance HTPC on a budget 2012'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkR7IFVLEsFCVGic1hMM1jGSao58A_raX6raCFSAlgpzteI2VtOwzCBXrtWl1-5J-ob9sZqYckWYSb5dxou8bN63z9tzYCSNcan5OKRkc6n_3noXWqC7KiBElrpjdPFHmvfrXU/s72-c/20120905_174904.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-7108611437483924752</id><published>2012-08-29T13:34:00.002+01:00</published><updated>2012-08-29T13:44:28.139+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="home cinema"/><category scheme="http://www.blogger.com/atom/ns#" term="HTPC"/><category scheme="http://www.blogger.com/atom/ns#" term="Plex"/><category scheme="http://www.blogger.com/atom/ns#" term="unifiedremote"/><title type='text'>Advanced Custom Plex Unified Remote</title><content type='html'>&lt;b&gt;Background:&lt;/b&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
A while ago I wrote a custom Unified Remote for Plex here is a &lt;a href=&quot;http://br0sk.blogspot.co.uk/2011/12/custom-plex-remote-for-unified-remote.html&quot; target=&quot;_blank&quot;&gt;blog post&lt;/a&gt; about that . It works great but lacks a few things that I really need. Since Unified Remote changed their Layout in one of the later releases the UI became much more compact and you can fit more buttons on one screen. This makes it possible for me to add in a few more functions.&lt;br /&gt;
&lt;br /&gt;
The basic remote looks like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh4g1Bh_eJUX2b8WXW_0MzKfrn5BJsEXCGurDmj2erZcsgujdEN39zgRupdQ79-7DWMeL3NGMaMaJmn1iFWhLSTryQOfY_KrLp5WlduvsRrT05Ep4L0hHc_8Ntu94tIQXZG4j2/s1600/Screenshot_simple_plex.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;The simple Plex Remote&quot; border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh4g1Bh_eJUX2b8WXW_0MzKfrn5BJsEXCGurDmj2erZcsgujdEN39zgRupdQ79-7DWMeL3NGMaMaJmn1iFWhLSTryQOfY_KrLp5WlduvsRrT05Ep4L0hHc_8Ntu94tIQXZG4j2/s320/Screenshot_simple_plex.png&quot; title=&quot;The simple Plex Remote&quot; width=&quot;180&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
The advanced one looks like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXnKRB-paX-J5-TG44u_dclzmNawCFyZScFg0Ap4O0LHrJFG6C2enFpyCuJx6sXWWdEfQVLvVb2u-O7lCF6nmBUymiZw1zUwOMbT1YWRy8oOHYXtp_JCnWZR-LEvsaULivTD-a/s1600/Screenshot_advanced_plex.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;The Advanced Plex Remote&quot; border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXnKRB-paX-J5-TG44u_dclzmNawCFyZScFg0Ap4O0LHrJFG6C2enFpyCuJx6sXWWdEfQVLvVb2u-O7lCF6nmBUymiZw1zUwOMbT1YWRy8oOHYXtp_JCnWZR-LEvsaULivTD-a/s320/Screenshot_advanced_plex.png&quot; title=&quot;The Advanced Plex Remote&quot; width=&quot;180&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
As you can see the advanced remote now makes use of the full screen. I run it on a Samsung galaxy S3 and the buttons are big enough to press. It might be a different story on a device with a smaller screen.&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: right;&quot;&gt;
&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;Here is the Button Config:&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
1.1 Rewind&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
1.2&amp;nbsp;Full screen/Windowed&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXnKRB-paX-J5-TG44u_dclzmNawCFyZScFg0Ap4O0LHrJFG6C2enFpyCuJx6sXWWdEfQVLvVb2u-O7lCF6nmBUymiZw1zUwOMbT1YWRy8oOHYXtp_JCnWZR-LEvsaULivTD-a/s1600/Screenshot_advanced_plex.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em; text-align: center;&quot;&gt;&lt;img alt=&quot;The Advanced Plex Remote&quot; border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXnKRB-paX-J5-TG44u_dclzmNawCFyZScFg0Ap4O0LHrJFG6C2enFpyCuJx6sXWWdEfQVLvVb2u-O7lCF6nmBUymiZw1zUwOMbT1YWRy8oOHYXtp_JCnWZR-LEvsaULivTD-a/s320/Screenshot_advanced_plex.png&quot; title=&quot;The Advanced Plex Remote&quot; width=&quot;180&quot; /&gt;&lt;/a&gt;1.3 Fast Forward&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
2.1 Decrease Plex Sound&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
2.2 Increase Plex Sound&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
3.1 Stop&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
3.2 Navigate Up&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
3.3&amp;nbsp;Play/Pause - Works globally not only when movie or music mode are &amp;nbsp;active&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
4.1 Navigate Left&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
4.2 Select&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
4.3 Navigate Right&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
5.1&amp;nbsp;Flip between full screen video or music and menu system&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
5.2 Navigate Down&lt;/div&gt;
&lt;div&gt;
5.3 Go Back&lt;br /&gt;
6.1&amp;nbsp;Brings up OSD when video or music is playing&lt;br /&gt;
6.2 Brings up the contextual popup menu if it is available.&lt;br /&gt;
7.1 Just a divider no function&lt;br /&gt;
8.1 Minimize all open windows, start Plex and switch the screen to the bedroom TV.&lt;br /&gt;
8.2 Update the Plex library. It will index and pull down meta data for all files that have been added &amp;nbsp;to your media folders.&lt;br /&gt;
8.3 Turns off Plex and moves the screen back to the dual monitor configuration in the study.&lt;br /&gt;
9.1 Decrease the main Windows sound&lt;br /&gt;
9.2 Mute all Windows sounds&lt;br /&gt;
9.3 Increase the main Windows sound&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;New functionality in the Advanced Plex Remote&lt;/b&gt;&lt;br /&gt;
The simple Plex remote works great but I found my self having to flip between different remotes just to start watching something.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This is why I added the new functionality to the advanced remote.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
1. The popup menu. Sometime you want to use functionality in the browse lists. Before this option was available I had to switch to the mouse remote and right click. Here is an example:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy5_cRVP-PvKItnr20joBpMOBrAY55ts-OEZwetb4lAPgiqq798sZSn4-f9VGklaLj-4Iq2XGbrUUM9EvRIxRsO3rnUspMHV7HcWrwf1J9bp1-QTZ0t5CzX-o49hMt8MEuNuIf/s1600/plex_popup.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Plex Popup&quot; border=&quot;0&quot; height=&quot;136&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy5_cRVP-PvKItnr20joBpMOBrAY55ts-OEZwetb4lAPgiqq798sZSn4-f9VGklaLj-4Iq2XGbrUUM9EvRIxRsO3rnUspMHV7HcWrwf1J9bp1-QTZ0t5CzX-o49hMt8MEuNuIf/s320/plex_popup.jpg&quot; title=&quot;Plex Popup&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
2. One click TV setup for Plex&lt;br /&gt;
This button(called bedroom) switches screen from the dual screen setup in the study to the HDMI setup in the bedroom. It also minimises all the open windows on screen. And finally launches Plex. With one click the beroom TV is ready for some Plex action.&lt;br /&gt;
&lt;br /&gt;
3. &amp;nbsp;One click tear down of Plex&lt;br /&gt;
This button(called study) kills Plex and switches the screen back to the study. Before I had to move in to another custom remote I made to do this.&lt;br /&gt;
&lt;br /&gt;
4. You can now force your media libraries to be updated directly from the remote. Let&#39;s say you have added &amp;nbsp;a movie to one of your media olders and you are about to watch it. For some reason Plex has not updated your database with the new file. Now you don&#39;t even have to go up to the computer to fix this. You can do it with one press of a button. Very handy!&lt;br /&gt;
&lt;br /&gt;
5. Change and mute the main windows volume&lt;br /&gt;
Now you can control the main volume on the computer as well as the volume in Plex. This can be extremly useful if someone changed the Windows volume. this way You don&#39;t have to leave the Plex remote to fix this problem.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;b&gt;How to install it:&lt;/b&gt;&lt;/div&gt;
&lt;ol&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;First of all you need an Android phone running the paid version of Unified Remote&amp;nbsp;&lt;a href=&quot;https://market.android.com/details?id=com.Relmtech.RemotePaid&amp;amp;hl=en&quot;&gt;https://market.android.com/details?id=com.Relmtech.RemotePaid&amp;amp;hl=en&lt;/a&gt;. It has to be the paid versions since the free version doesn&#39;t support custom remotes.&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;Then you need the latest version of the Unified Remote server&amp;nbsp;&lt;a href=&quot;http://www.unifiedremote.com/&quot;&gt;http://www.unifiedremote.com/&lt;/a&gt;&amp;nbsp;&amp;nbsp;installed on your PC .&amp;nbsp;&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;Now download this file&amp;nbsp;&lt;a href=&quot;https://github.com/br0sk/Custom-Unified-Remotes/zipball/master&quot;&gt;https://github.com/br0sk/Custom-Unified-Remotes/zipball/master&lt;/a&gt;. It contains the custom remotes I have implemented.&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;Extract the file and copy the files plex.png PlexAdvanced.xml and Plex.xml to the unified remote custom remote directory. You can find that here directory here&amp;nbsp;C:\Program Files\Unified Remote\Remotes\Custom on a 32bit Windows or here C:\Program Files (x86)\Unified Remote\Remotes\Custom on Windows 7 64 bit.&amp;nbsp;&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;The Plex.xml file is written for 64 bit Windows. You have to change the path to the app in the XML file if you are running it on a 32 bit Windows version. You can easily do so in notepad.&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;Stop the Unified Remote server by right clicking the task bar icon and selecting quit.&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;Start the Unified Remote server again.&lt;/li&gt;
&lt;li style=&quot;text-align: left;&quot;&gt;Now launch Unified Remote on your phone and there should be a new Plex remote available.&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/7108611437483924752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/08/advanced-custom-plex-unified-remote.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/7108611437483924752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/7108611437483924752'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/08/advanced-custom-plex-unified-remote.html' title='Advanced Custom Plex Unified Remote'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh4g1Bh_eJUX2b8WXW_0MzKfrn5BJsEXCGurDmj2erZcsgujdEN39zgRupdQ79-7DWMeL3NGMaMaJmn1iFWhLSTryQOfY_KrLp5WlduvsRrT05Ep4L0hHc_8Ntu94tIQXZG4j2/s72-c/Screenshot_simple_plex.png" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-808630670729320100</id><published>2012-08-26T20:09:00.000+01:00</published><updated>2012-08-26T20:11:25.240+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="lucene"/><category scheme="http://www.blogger.com/atom/ns#" term="search"/><category scheme="http://www.blogger.com/atom/ns#" term="solr"/><category scheme="http://www.blogger.com/atom/ns#" term="webdev"/><title type='text'>How to split long concatenated words in a Solr index</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrsKAm-RjyN_miEj74N6d1GDFMCUjCRjwdTD__8cQNwQVXqojZvk-XzEi40a7EGVM8oRDDE3OjbRQHphfB7Eu8pZraQPaTVolp2S9TRmUpiqartqteHyLUa_VaAD6hfgqEid41/s1600/solr.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;176&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrsKAm-RjyN_miEj74N6d1GDFMCUjCRjwdTD__8cQNwQVXqojZvk-XzEi40a7EGVM8oRDDE3OjbRQHphfB7Eu8pZraQPaTVolp2S9TRmUpiqartqteHyLUa_VaAD6hfgqEid41/s320/solr.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;b&gt;The problem:&lt;/b&gt;&lt;br /&gt;
Finding records by using individual words of concatenated words. Let&#39;s make up an example. We have a record that includes the word flagpole. A user searches for &lt;i&gt;flag pole&lt;/i&gt; and finds nothing. The problem here is that there is no way for Solr to know how to split the word flagpole up in two words(at least not that I know of).&lt;br /&gt;
&lt;br /&gt;
How can we solve this problem in Solr?&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The solution:&lt;/b&gt;&lt;br /&gt;
The solution is not perfect and is pretty manual. You can use a list of words that will be extracted from concatenated words and indexed for the record. To do so you use a filter called DictionaryCompoundWordTokenFilterFactory. This filter let&#39;s you do exactly that. You set this up at index time.&lt;br /&gt;
&lt;br /&gt;
First add the directive to the fields in your schema file(most likely to the standard text field). You need to add tihs in the index section of the field:&lt;br /&gt;
&lt;b&gt;&amp;lt;filter class=&quot;solr.DictionaryCompoundWordTokenFilterFactory&quot; dictionary=&quot;english-compound-words.txt&quot; minWordSize=&quot;5&quot; minSubwordSize=&quot;2&quot; maxSubwordSize=&quot;15&quot; onlyLongestMatch=&quot;true&quot;/&amp;gt;&lt;/b&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
When that is done you can define a list of the words to be found and extracted from the concatenated words. The file takes one word per line.&lt;/div&gt;
&lt;div&gt;
Our file would look like this for flag pole:&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;flag&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;pole&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
After reindexing our Solr database we would be able to find the record by searching for flagpole or flag pole. The slight drawback with this approach is that you would find the record just by searching for the word flag or pole. This means that the result coming back is less restrictive and should be fine as long as you relevancy is set up in decent way. The other drawback is of course that this list has to be handled manually. Sure you can write some scripts to find the words to use for this filter but it is still a manual job. Solr doesn&#39;t magically do it for you. A good thing is that you have full control over what you add to the file.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
What about if it was the other way around. Someone added the record putting the two words apart like &lt;i&gt;flag pole&lt;/i&gt;. Now we wouldn&#39;t find the record by searching for flagpole.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
The answer is to combine the compound index with synonyms and we have it working both ways.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Add synonyms to the query part of the text field:&lt;/div&gt;
&lt;div&gt;
&lt;b&gt;&amp;lt;filter class=&quot;solr.SynonymFilterFactory&quot; synonyms=&quot;synonyms.txt&quot; ignoreCase=&quot;true&quot; expand=&quot;true&quot;/&amp;gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
In the synonyms file we add this.&lt;/div&gt;
&lt;div&gt;
flagpole=&amp;gt;flag pole&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Restart Solr and you should find the record by typing in the word flagpole. It will still work with combinations like&lt;i&gt; flag pole&lt;/i&gt;, &lt;i&gt;flag &lt;/i&gt;or just &lt;i&gt;pole&lt;/i&gt;.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
If someone has a better way of solving this problem please reply in the comments.&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/808630670729320100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/08/how-to-split-long-concatenated-words-in.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/808630670729320100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/808630670729320100'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/08/how-to-split-long-concatenated-words-in.html' title='How to split long concatenated words in a Solr index'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrsKAm-RjyN_miEj74N6d1GDFMCUjCRjwdTD__8cQNwQVXqojZvk-XzEi40a7EGVM8oRDDE3OjbRQHphfB7Eu8pZraQPaTVolp2S9TRmUpiqartqteHyLUa_VaAD6hfgqEid41/s72-c/solr.png" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-4073336462387415535</id><published>2012-03-16T22:40:00.000+00:00</published><updated>2012-03-27T20:27:06.531+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="amazon"/><category scheme="http://www.blogger.com/atom/ns#" term="aws"/><category scheme="http://www.blogger.com/atom/ns#" term="email"/><category scheme="http://www.blogger.com/atom/ns#" term="postfix"/><category scheme="http://www.blogger.com/atom/ns#" term="ses"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>DKIM email delivery using Amazon SES using Ubuntu 11.10</title><content type='html'>This blog post will show you how to add DKIM signatures to your outgoing emails.&lt;br /&gt;
&lt;br /&gt;
You will need:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;An Ubuntu installation(I have tested this on 11.10 but I am sure it works for older versions too)&lt;/li&gt;
&lt;li&gt;An AWS account(There is a free tier version you can use for test more info about how to set it up here&amp;nbsp;
&lt;a href=&quot;http://br0sk.blogspot.com/2012/02/how-to-get-ubuntu-1110-server-up-and.html&quot;&gt;http://br0sk.blogspot.com/2012/02/how-to-get-ubuntu-1110-server-up-and.html&lt;/a&gt;&amp;nbsp;).&lt;/li&gt;
&lt;li&gt;You need access to your DNS setting for your domain and the interface you use has to support TXT records.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;You need a registered domain name like mydomain.com.&lt;/li&gt;
&lt;/ul&gt;
When you run any kind of web application you always want to be able to rely on that the emails the application generates are actually reaching the recipient. You also want it to look like it comes a legit source. Things you want to avoid is that Gmail shows your address like this:&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhih7BsgNo-vsdt7eE1nc8cKYgD-g8oPviwrAM6Kdr7hcH8SC375LiVVftKOT0Ub5cwwVsY9IZaIfhE8EjCgsrC_06Pfo4fyGiTCobQ0bwFn6KNXprElPLoAFBuTN_MZcf4yZAb/s1600/mail_1311182a_long_header_en.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;30&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhih7BsgNo-vsdt7eE1nc8cKYgD-g8oPviwrAM6Kdr7hcH8SC375LiVVftKOT0Ub5cwwVsY9IZaIfhE8EjCgsrC_06Pfo4fyGiTCobQ0bwFn6KNXprElPLoAFBuTN_MZcf4yZAb/s640/mail_1311182a_long_header_en.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;This image is taken from the Gmail help system&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Gmail shows the via link if the email has not been properly signed. If we set up &lt;a href=&quot;http://aws.amazon.com/ses/&quot; target=&quot;_blank&quot;&gt;AWS SES&lt;/a&gt; (Amazons Simple email Service) we will get rid of the word via showing up and next to it an amazon address of some kind.&lt;br /&gt;
&lt;br /&gt;
In order for me to get this running I had to gather information in a few different places. Amazon has a few good help articles but they will not take you all the way. Here is how I got it running.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Setting up the SES account&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
1.&amp;nbsp;I assume you already have signed up for AWS and can log in to your account. Now go to the SES tab. &amp;nbsp;&amp;nbsp;In order for you to be able to actually send an email through SES you need to verify the email address for the user you are going to send the emails from. If you are using a standard Ubuntu AMI image that would probably be the user ubuntu@mydomain.com.&amp;nbsp;Now verify that email address according to&amp;nbsp;&lt;a href=&quot;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/InitialSetup.EmailVerification.html&quot;&gt;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/InitialSetup.EmailVerification.html&lt;/a&gt;. While you are at it you can request production&amp;nbsp;access for your SES account so that you can send emails from and to anybody&amp;nbsp;&lt;a href=&quot;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/InitialSetup.Customer.html&quot;&gt;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/InitialSetup.Customer.html&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
2. You will get an email coming in to the email address you are trying to verify. Just click the link in the email to acknowledge that you really want this address to be verified.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
3. Create your SMTP credentials like this&amp;nbsp;&lt;a href=&quot;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SMTP.Credentials.html&quot;&gt;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SMTP.Credentials.html&lt;/a&gt;.&lt;/div&gt;
Save the credentials in a safe password system. If you lose them you will have to recreate them.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Setup Linux to send email via SES using postfix&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
4. Install postfix in sattelite mode. It doesn&#39;t really matter what settings you chose during the installation we will overwrite the config file soon.&lt;br /&gt;
&lt;br /&gt;
Run;&lt;br /&gt;
&lt;i&gt;sudo apt-get install postfix&lt;/i&gt;&lt;br /&gt;
Follow the instructions.&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
6.  Now follow these instructions &lt;a href=&quot;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SMTP.MTAs.Postfix.html&quot;&gt;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SMTP.MTAs.Postfix.html&lt;/a&gt; to setup Postfix. Use the STARTTLS  based alternative. This is the new way of connecting to SES. The old way demands that you set up a secure tunnel using stunnel. It can still be used but adds an extra layer of complexity.&lt;/div&gt;
&lt;br /&gt;
I had to add this at the end of the main.cf file to get it working properly. If this is not done it will look like you are trying to send an email from your Amazon assigned DNS name and if you haven&#39;t verified that address it will not work.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;myhostname=mydomain.com&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
Make sure to add this line as well. It forces emails to your own domain to be delivered through SES. If this is not added Postfix will try to deliver the emails locally bypassing SES(thanks to Ratzai Yaghoub for pointing this out).&lt;br /&gt;
This row basically tells Postfix that there are no domains available for local delivery.&lt;br /&gt;
&lt;br /&gt;&lt;i&gt;mydestination =&lt;/i&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;div&gt;
Setting up the DNS changes&lt;br /&gt;&lt;div style=&quot;text-align: left;&quot;&gt;
8. Now we need add the proper TXT records to our DNS. Let&#39;s start with SPF. Follow this description:&amp;nbsp;&lt;a href=&quot;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SPF.html&quot;&gt;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SPF.html&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
9. Now the same thing but for sender ID:&amp;nbsp;&lt;a href=&quot;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SenderID.html&quot;&gt;http://docs.amazonwebservices.com/ses/latest/DeveloperGuide/SenderID.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Setting up DKIM&lt;/b&gt;&lt;br /&gt;
10. And now the most important one DKIM. This is the entry that will remove the &quot;via&quot; message in Gmail.&lt;br /&gt;
This is the guide to follow for that:&amp;nbsp;&lt;a href=&quot;http://www.pmabox.com/blog/47-sign-emails-with-opendkim-postfix-in-ubuntu-1004-64x&quot;&gt;http://www.pmabox.com/blog/47-sign-emails-with-opendkim-postfix-in-ubuntu-1004-64x&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
11. When all is done add this to the end of the file &lt;i&gt;/etc/opendkim.conf&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;OmitHeaders      &quot;.&quot;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;SignHeaders      &quot;.&quot;&lt;/i&gt;Here&#39;s why&amp;nbsp;&lt;a href=&quot;https://forums.aws.amazon.com/thread.jspa?threadID=66252&quot;&gt;https://forums.aws.amazon.com/thread.jspa?threadID=66252&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
12. Restart Postfix and you should be ready to go if your DNS changes for DKIM has come through. Do also make sure you restart OpenDKIM afeter making the changes.&lt;br /&gt;
&lt;i&gt;sudo /etc/init.d/opendkim restart&lt;br /&gt;sudo /etc/init.d/postfix restart&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;Final Thoughts&lt;/b&gt;&lt;br /&gt;
I don&#39;t know about you but I don&#39;t really think that SES(Simple Email Service) deserves to use the word simple just yet. It would be great if it came with a way of easily get the DKIM signing straight from the service.&lt;br /&gt;
&lt;br /&gt;
Still perfoming the steps above should give you maximum email delivery rates. You can check that in the AWS control panel&amp;nbsp;&lt;a href=&quot;https://console.aws.amazon.com/ses/home&quot;&gt;https://console.aws.amazon.com/ses/home&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Thanks goes out to the people who wrote the articles referenced in the blog post.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/4073336462387415535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/03/dkim-email-delivery-using-amazon-ses.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4073336462387415535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4073336462387415535'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/03/dkim-email-delivery-using-amazon-ses.html' title='DKIM email delivery using Amazon SES using Ubuntu 11.10'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhih7BsgNo-vsdt7eE1nc8cKYgD-g8oPviwrAM6Kdr7hcH8SC375LiVVftKOT0Ub5cwwVsY9IZaIfhE8EjCgsrC_06Pfo4fyGiTCobQ0bwFn6KNXprElPLoAFBuTN_MZcf4yZAb/s72-c/mail_1311182a_long_header_en.png" height="72" width="72"/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-873693939361984170</id><published>2012-02-23T21:25:00.001+00:00</published><updated>2012-02-23T21:25:11.439+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="chat"/><category scheme="http://www.blogger.com/atom/ns#" term="Chrome"/><category scheme="http://www.blogger.com/atom/ns#" term="gmail"/><category scheme="http://www.blogger.com/atom/ns#" term="google"/><category scheme="http://www.blogger.com/atom/ns#" term="IM"/><title type='text'>First impressions of Google Chat Chrome Extension</title><content type='html'>Google just released an official chat extension for Chrome. You can find it here&amp;nbsp;
&lt;a href=&quot;https://chrome.google.com/webstore/detail/nckgahadagoaajjgafhacjanaoiihapd&quot;&gt;https://chrome.google.com/webstore/detail/nckgahadagoaajjgafhacjanaoiihapd&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
This extension hijacks the chat windows in Gmail and G+. It installs it self so that it runs all the time even if Chrome is not running. It shows up in the lower right hand corner of your screen. It can give you notifications for both emails and chat messages.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Killer features:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;You don&#39;t need to have a browser running for it to work&lt;/li&gt;
&lt;li&gt;It is no longer locked in to Gmail and G+&lt;/li&gt;
&lt;li&gt;The email notifications no longer pop up on top of the chat area covering the text area while you are writing.&lt;/li&gt;
&lt;li&gt;You can control where the email notification popup appears.&lt;/li&gt;
&lt;/ol&gt;
&lt;br /&gt;
Here is how to control where the email notification pops up:&lt;br /&gt;
1. Right click the blue Google speech bubble notification in the notification area and choose options.&lt;br /&gt;
2. Untick the checkbox for &quot;Disable Email notificaions&quot; to activate email notifications.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDbW3p3C_qseb6zRTJb-ZkSTTm2uc0etOBql-2bE7hjprlt-pZi5TNXI3JkqRahCxdQz3Fn8EtUpWZUXjt3d1KCGsgJIou6GmjetGPFpNgnHY6GaP1Fmc5X_cqKfWBZkWwEBi/s1600/untick+disable+email+notifications.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;316&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDbW3p3C_qseb6zRTJb-ZkSTTm2uc0etOBql-2bE7hjprlt-pZi5TNXI3JkqRahCxdQz3Fn8EtUpWZUXjt3d1KCGsgJIou6GmjetGPFpNgnHY6GaP1Fmc5X_cqKfWBZkWwEBi/s640/untick+disable+email+notifications.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
3. The next time an email notification comes in you should click the little wrench in the top right corner of the notification window.&lt;br /&gt;
4. Now choose the option where you want the email notifications to appear. I like to have it pop up in the lower left corner so it doesn&#39;t get stacked on top of the chat application in the lower right corner.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguNZZqJKpyBMbQl4R7G0p4iGltNkldnvchkfcmGA6t0oIJGTKYhBbVARFCO7pyeqpQOXTgx4vqQ4KK-8sJ-VklPzpeucyZjORl7a-YYGDIpwQ5CoSucWJWIpq3FJ_VQACQBJUi/s1600/lower+left+popup.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;208&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguNZZqJKpyBMbQl4R7G0p4iGltNkldnvchkfcmGA6t0oIJGTKYhBbVARFCO7pyeqpQOXTgx4vqQ4KK-8sJ-VklPzpeucyZjORl7a-YYGDIpwQ5CoSucWJWIpq3FJ_VQACQBJUi/s640/lower+left+popup.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
So far everything works great. There are only a few things that annoys me so far.&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;The notifications sounds for chat and emails cannot be set independently.&lt;/li&gt;
&lt;li&gt;The notification sound for emails is way to loud and extremely annoying. Almost scary actually...&lt;/li&gt;
&lt;/ol&gt;
&lt;div&gt;
I have got a feeling that this will become me favourite way to use IM from now on.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I wonder how long it will take until we have one of the multi IM network clients running like this in Chrome.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/873693939361984170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/02/first-impressions-of-google-chat-chrome.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/873693939361984170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/873693939361984170'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/02/first-impressions-of-google-chat-chrome.html' title='First impressions of Google Chat Chrome Extension'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUDbW3p3C_qseb6zRTJb-ZkSTTm2uc0etOBql-2bE7hjprlt-pZi5TNXI3JkqRahCxdQz3Fn8EtUpWZUXjt3d1KCGsgJIou6GmjetGPFpNgnHY6GaP1Fmc5X_cqKfWBZkWwEBi/s72-c/untick+disable+email+notifications.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-5578195174197044369</id><published>2012-02-10T12:50:00.001+00:00</published><updated>2012-02-10T12:50:11.726+00:00</updated><title type='text'>How to get Ubuntu 11.10 Server up and running on a free Amazon EC2 Micro instance</title><content type='html'>I couldn&#39;t really find any good one page guide for this so I had to chase around for bits and pieces.&lt;br /&gt;
&lt;br /&gt;
Here is my try to make this easy. I have gathered all the information I needed in order to get this set up.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Sign up up for AWS&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Go here&amp;nbsp;&lt;a href=&quot;http://aws.amazon.com/free/&quot;&gt;http://aws.amazon.com/free/&lt;/a&gt;&amp;nbsp;and click the signup button. You will get one year for free if you chose a micro server EC2 instance(There is a limit on usage but as a development or test server it should be easy not to go over the limits).&lt;/li&gt;
&lt;li&gt;Log in with your normal Amazon account or create a new one.&lt;/li&gt;
&lt;li&gt;Go through the credit card step. You will not be charged but they will allocate $1 on your card to check that it is valid.&lt;/li&gt;
&lt;li&gt;Go through the rest of the steps including the call back. This is where Amazon prompts you with a code &amp;nbsp;and asks you to enter your phone number. Just follow the instructions and you will get a phone call. Just say the numbers one by one and you will be signed up.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Now you have your AWS account created and we can begin to do the real work. We now need to get a server up and running.&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;Spin your free server up&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
At the top of the screen Hover above &quot;My Account/Console&quot;. Click the link below:
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhepBA1sWeLdboRny0CeealAtP1ExACg3kzgdtDQf_xrZcgk18KlqADfLg94Hcj5P3gbtHYaoSvQx2-5oKdSnJno32NURJ6iBK0iKkRB1Hlrxaih_Vh5K-kEIKzAok2cgIDAUiG/s1600/go+to+aws+console.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;194&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhepBA1sWeLdboRny0CeealAtP1ExACg3kzgdtDQf_xrZcgk18KlqADfLg94Hcj5P3gbtHYaoSvQx2-5oKdSnJno32NURJ6iBK0iKkRB1Hlrxaih_Vh5K-kEIKzAok2cgIDAUiG/s320/go+to+aws+console.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Now click the EC2 link&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzQnOsGDZN69-uBXPtH30rFyfxqnKAEvtGEYyJof66Sy6AqM7CT1fmOy9j_-DlZGDAyujJB1fWRp5defs7GRyrtpahhGAQV6AmApwzKDrYxfyWbgGm9dF9TUvIugbFAKLFujBP/s1600/click+ec2+link.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;109&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzQnOsGDZN69-uBXPtH30rFyfxqnKAEvtGEYyJof66Sy6AqM7CT1fmOy9j_-DlZGDAyujJB1fWRp5defs7GRyrtpahhGAQV6AmApwzKDrYxfyWbgGm9dF9TUvIugbFAKLFujBP/s320/click+ec2+link.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now find out which data center your server will be deployed in. Below the &quot;Launch instance&quot; button you will see something like this.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhyphenhyphen5VCkdE_4jsz9Db6Q2mkMxJISa7Mz-YXnQ6w9e4skfUhSK2lR3UAd5e-qDoV7di7p4oulHucMVqyXguZiKdI7A_m0sZHixrTOERPH8Mjs66YeTRkMc_bhBFCdU9jAM8dIJUh/s1600/service+where.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhyphenhyphen5VCkdE_4jsz9Db6Q2mkMxJISa7Mz-YXnQ6w9e4skfUhSK2lR3UAd5e-qDoV7di7p4oulHucMVqyXguZiKdI7A_m0sZHixrTOERPH8Mjs66YeTRkMc_bhBFCdU9jAM8dIJUh/s400/service+where.PNG&quot; width=&quot;288&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Use the code pointed out by the blue arrow above to find out what &lt;a href=&quot;http://en.wikipedia.org/wiki/Amazon_Machine_Image&quot; target=&quot;_blank&quot;&gt;AMI &lt;/a&gt;to use on this page&amp;nbsp;&lt;a href=&quot;http://cloud-images.ubuntu.com/releases/11.10/release/&quot;&gt;http://cloud-images.ubuntu.com/releases/11.10/release/&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDQCBYdnV9VIfvtPaDO-e88jRRq6edpvYGxpNsijjTvjjPLZo8zxzVvuu_jxxpwnXG93oabrz48DcMzieLcqcezCWGzgJ-WJWvVXC4hE5045FAqbVS1REzA4E4wAV50A-4FA23/s1600/ebs+64+micro+instance.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;190&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDQCBYdnV9VIfvtPaDO-e88jRRq6edpvYGxpNsijjTvjjPLZo8zxzVvuu_jxxpwnXG93oabrz48DcMzieLcqcezCWGzgJ-WJWvVXC4hE5045FAqbVS1REzA4E4wAV50A-4FA23/s640/ebs+64+micro+instance.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Pick the EBS type for your data center. Make sure you get the version aimed at the micro servers.&lt;br /&gt;
Now copy the AMI string(the blue link) from the right row.&lt;br /&gt;
&lt;br /&gt;
Now click launch instance&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIBedtbyB9OE1zZanXj00kXy7WDxMn9aw1mqeS89qB_jkyN2KVIATyFQEkq1_2m_RVzJZff1EMftNPiP4JpX3MDsMOz_LjaMvGZrZau6tbRwsBNioLm-ylRQ6O9CFzide-8mKR/s1600/launch+instance.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;223&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIBedtbyB9OE1zZanXj00kXy7WDxMn9aw1mqeS89qB_jkyN2KVIATyFQEkq1_2m_RVzJZff1EMftNPiP4JpX3MDsMOz_LjaMvGZrZau6tbRwsBNioLm-ylRQ6O9CFzide-8mKR/s320/launch+instance.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Since we want to install Ubuntu we need to select the classic wizard since Ubuntu is not a default choice supported by Amazon.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiZf5nCOnzHJVJwqYmDpYCoB1F-Zn1nsGhZ23Q5lEAMX3WNWwr6dfvkCF5kg-HM4RI5zssDEqbiU_dS3YS-vjdEjwOy_321lNx4b_UFBpHGq6DR9KKqlclEJQXO4fuchbQDbdv/s1600/classic+wizard.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;292&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiZf5nCOnzHJVJwqYmDpYCoB1F-Zn1nsGhZ23Q5lEAMX3WNWwr6dfvkCF5kg-HM4RI5zssDEqbiU_dS3YS-vjdEjwOy_321lNx4b_UFBpHGq6DR9KKqlclEJQXO4fuchbQDbdv/s640/classic+wizard.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
In the next step we select the community AMIs tab and paste in the ami string in to the search field. If everything is right we are presented with only one server option.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNrWPW3AkfX8kyl6ARKioDsNmt2SAoTSLnvnVdIPMcSSZT-mITYQOhmdz4Z2NmjjmKnZH80LBP_-qLONk0qwrBm7jhjOAVyBmykhhzgbZaeXFDksSFRWzZ72hBmOtYRMgBEydD/s1600/select+the+right+AMI.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;198&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNrWPW3AkfX8kyl6ARKioDsNmt2SAoTSLnvnVdIPMcSSZT-mITYQOhmdz4Z2NmjjmKnZH80LBP_-qLONk0qwrBm7jhjOAVyBmykhhzgbZaeXFDksSFRWzZ72hBmOtYRMgBEydD/s640/select+the+right+AMI.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now click select.&lt;br /&gt;
&lt;br /&gt;
On the next page keep the default settings and click continue.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI0ooKcf1If-yuIJcu_IXiRQBFxhE3iKnY4QKIvcfa0IzKVigpKkQYsGmk7w0vhFQf8QaLBKSkyp-4xzRZF20siKU1DN64MH53J00a3w0Dggo4sitw9aG3sYgeVId5inOkeTle/s1600/keep+default+click+next.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;438&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI0ooKcf1If-yuIJcu_IXiRQBFxhE3iKnY4QKIvcfa0IzKVigpKkQYsGmk7w0vhFQf8QaLBKSkyp-4xzRZF20siKU1DN64MH53J00a3w0Dggo4sitw9aG3sYgeVId5inOkeTle/s640/keep+default+click+next.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Just click continue on the next step.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEja5VdZsxDx8WBOv8VHe0n3UyBBAsnSNrJHyO82VYp8dA_XptsPuR9BtlNq_koqji0jOBMl0vdxdjPE7QJ9qF1cE4z7BLbOypsSsJGBagt2dkmyxQvlQRx9fOmtIj980V39XIw0/s1600/keep+default+click+continue.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;434&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEja5VdZsxDx8WBOv8VHe0n3UyBBAsnSNrJHyO82VYp8dA_XptsPuR9BtlNq_koqji0jOBMl0vdxdjPE7QJ9qF1cE4z7BLbOypsSsJGBagt2dkmyxQvlQRx9fOmtIj980V39XIw0/s640/keep+default+click+continue.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
On the next step you can add name value pairs to make it more easy for you to find your servers. Since we only are going to use one free server you can add a value like below.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVkkP06lFC-A-igDGizqreYeeisKSMLtbjtmSX2gM8pjcFI0obkAvKpDcjZ23SbjnMwinXlfG0d_kZ_b5vzglWqolmrzOV3EdiQcSsiFGDnk8zNunZD7TbcPnvCFyioxBFC2i2/s1600/add+optional+values+click+continue.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;434&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVkkP06lFC-A-igDGizqreYeeisKSMLtbjtmSX2gM8pjcFI0obkAvKpDcjZ23SbjnMwinXlfG0d_kZ_b5vzglWqolmrzOV3EdiQcSsiFGDnk8zNunZD7TbcPnvCFyioxBFC2i2/s640/add+optional+values+click+continue.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Now we are going to set up the Key Pair we need to be able to access our server via SSH from PuTTY in Windows.&lt;br /&gt;
Make up a key name and put it in the text field like below.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe0KTq0pgVAAaGpMUmtX4U5QqqG3J_rFiPgTsIaSI_XOKl9SyRa6Yqh5V3D_Zv49rh5W3O22SH7rwe3EHSguZvwOWVxf1s1mpVHNBQ98UQWMr9le0czEmsuu3sGcpwXqaHzeR/s1600/create+key+pair.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;436&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe0KTq0pgVAAaGpMUmtX4U5QqqG3J_rFiPgTsIaSI_XOKl9SyRa6Yqh5V3D_Zv49rh5W3O22SH7rwe3EHSguZvwOWVxf1s1mpVHNBQ98UQWMr9le0czEmsuu3sGcpwXqaHzeR/s640/create+key+pair.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Now click the button to create and download the key pair. Make sure to keep the downloaded .pem file in a safe place. When &amp;nbsp;downloaded click continue.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSt0Eu_1WkX8dWMzWbb1575vxa89Wfmu7UDjunelGayq5uwC2zrrAtcPsofO8p3zK36O6mUVFXYiExIBelkrX2X-Cc2EQWw6pXI55qRaL_wVJOd6b_FGIn70zWv0Hvi0M_tcif/s1600/keep+the+default+security+group.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;440&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSt0Eu_1WkX8dWMzWbb1575vxa89Wfmu7UDjunelGayq5uwC2zrrAtcPsofO8p3zK36O6mUVFXYiExIBelkrX2X-Cc2EQWw6pXI55qRaL_wVJOd6b_FGIn70zWv0Hvi0M_tcif/s640/keep+the+default+security+group.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Keep the security group as it is and click continue.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgG7Scu_59XIKYhS7sdHxUYlCaPhhnmYLUx3DZpTTt0IBFr7533lwOYUgJWd5T8Y9jKEnBp3Ymq9F3TxQTbOtWsvmy-tONZxZSHtn3EtZ4wKqgLUcGBST6popt9kkBzLb_fizF0/s1600/last+step+launch.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;436&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgG7Scu_59XIKYhS7sdHxUYlCaPhhnmYLUx3DZpTTt0IBFr7533lwOYUgJWd5T8Y9jKEnBp3Ymq9F3TxQTbOtWsvmy-tONZxZSHtn3EtZ4wKqgLUcGBST6popt9kkBzLb_fizF0/s640/last+step+launch.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
The new server is launching and you can click close when prompted like below.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4pG5Tux7tF_CYqxwkd8olzNcXmOKEkkxhxGOf-c2GFi_U-v6zuXIgzTFS1j3LBA8TPUxbJznNb5chu-VKTSBsWkYYwHiYrVpoftS3ofteY0gYR-CDIAPRSffmqyM5bkkF3oP7/s1600/close+the+wizard.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;350&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4pG5Tux7tF_CYqxwkd8olzNcXmOKEkkxhxGOf-c2GFi_U-v6zuXIgzTFS1j3LBA8TPUxbJznNb5chu-VKTSBsWkYYwHiYrVpoftS3ofteY0gYR-CDIAPRSffmqyM5bkkF3oP7/s640/close+the+wizard.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Now back in the EC2 control panel click the instances link in the left menu.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXeW-0c3ZuW3hoKYl3G9EkEQ5CE9DzqGnW8dCM_PEdDPTKevWLiybeoSX0ESh7RF1kI_RNjzkbFBdz-MtxENnwwEBWUsZv-aflOZeo4Bd_2dEUjHQY7paO32qymu7pogofoPjl/s1600/click+instances.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXeW-0c3ZuW3hoKYl3G9EkEQ5CE9DzqGnW8dCM_PEdDPTKevWLiybeoSX0ESh7RF1kI_RNjzkbFBdz-MtxENnwwEBWUsZv-aflOZeo4Bd_2dEUjHQY7paO32qymu7pogofoPjl/s320/click+instances.PNG&quot; width=&quot;169&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
On the next page you will see a row for your newly deployed server. When the state is &quot;running&quot; we can proceed to try to connect to it via SSH.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2pajwhaxvLyoOpI0-5wGsRfrG7cwxQjx8HZDrglCunO-t4Vjy4sN6FTPkuW4wuzptNYsuuQvfSzk855b4dHr69kEywXBi8ocx9-cd2Q-ueLYxysplUmWRCwKV8V6m8Tpxz-Fl/s1600/state+running.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;52&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2pajwhaxvLyoOpI0-5wGsRfrG7cwxQjx8HZDrglCunO-t4Vjy4sN6FTPkuW4wuzptNYsuuQvfSzk855b4dHr69kEywXBi8ocx9-cd2Q-ueLYxysplUmWRCwKV8V6m8Tpxz-Fl/s320/state+running.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Connect via PuTTY SSH&lt;/b&gt;&lt;br /&gt;
To be able start configuring your new server you need an SSH connection so you can run the necessary Linux commands to get the server to actually do something.&lt;br /&gt;
&lt;br /&gt;
Now right click the green state icon saying running. It will pop up a menu. Select &quot;connect&quot;.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKezmNFi0DYwtvguNudY4tUv7l4tqeltBRdCDPl7lAoQQzcbSg0bco4D_ERomV1-554lqXDCXSBx_tt6lzNs3rkczif5WdfPLIgbjUQkhXSYxS37TAfWpCwCm_83luZrmLqMFm/s1600/connect+screen.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;373&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjKezmNFi0DYwtvguNudY4tUv7l4tqeltBRdCDPl7lAoQQzcbSg0bco4D_ERomV1-554lqXDCXSBx_tt6lzNs3rkczif5WdfPLIgbjUQkhXSYxS37TAfWpCwCm_83luZrmLqMFm/s400/connect+screen.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
What you see in bullet number 4 above is the DNS name for your new server. That is what we are going to use to connect to the server via PuTTY. Copy the server name now(the square brackets are not part of the server name). The command line example in the picture is for Linux and will not work on Windows of course.&lt;br /&gt;
&lt;br /&gt;
The first thing we need to do is open port 22 so that we have a way in for PuTTY.&lt;br /&gt;
Now click the &quot;Security Group&quot; option in the left menu.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiltF9sP5_7wrSI-djyggKFQGLBNg3URGf27jSZ6M7vC3IjVBw6bm2sOAhhTeY2y-xAX6IEl7R1THSZoqcd8ZEZYKwUlX96Li7OE3mfqHaYLoqt1pZZN8UTF7U0t8-xmtOHZ1By/s1600/click+security+groups.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;284&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiltF9sP5_7wrSI-djyggKFQGLBNg3URGf27jSZ6M7vC3IjVBw6bm2sOAhhTeY2y-xAX6IEl7R1THSZoqcd8ZEZYKwUlX96Li7OE3mfqHaYLoqt1pZZN8UTF7U0t8-xmtOHZ1By/s640/click+security+groups.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Tick the box next to the default security group. Select the inbound tab.&lt;br /&gt;
Select SSH from the &quot;Create a new rule&quot; list box.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAGFwXcrBPRbmsKUYliiu2JZ3myOCifCs6BebvGnSzqXRFX0sJMhp2v-1p3t6hq7R8xN0x9HYAohcT0HEBznKymfZI9YDpFdgAKyPrnfqIPOGbDyNhCO8-Eiwb8AfLW5336sDY/s1600/select+ssh.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;322&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAGFwXcrBPRbmsKUYliiu2JZ3myOCifCs6BebvGnSzqXRFX0sJMhp2v-1p3t6hq7R8xN0x9HYAohcT0HEBznKymfZI9YDpFdgAKyPrnfqIPOGbDyNhCO8-Eiwb8AfLW5336sDY/s640/select+ssh.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&amp;nbsp;Click the &quot;Add Rule&quot; button with the green cross.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtZMJBQ6bb0xxXAP4WyKLO91EJs0woY4CEY5Hxd3AafGjDIGCQAvi8ED-mhHXGCvy24tovTcADcvD5EWKumbEAzFYlbRQzgKH_mcR54vA9TVUUTjwdlViRrFEvAjH2rhyphenhyphenpP_pi/s1600/add+rule+button+inbound.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;379&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtZMJBQ6bb0xxXAP4WyKLO91EJs0woY4CEY5Hxd3AafGjDIGCQAvi8ED-mhHXGCvy24tovTcADcvD5EWKumbEAzFYlbRQzgKH_mcR54vA9TVUUTjwdlViRrFEvAjH2rhyphenhyphenpP_pi/s640/add+rule+button+inbound.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
When you have done that &lt;b&gt;don&#39;t&lt;/b&gt;&amp;nbsp;forget to click the &quot;Apply Rule Changes&quot; button.&lt;br /&gt;
We have now opened the firewall for inbound access from any ip-address on the Internet to all servers belonging to this security group. For us that means the server we just created.&lt;br /&gt;
&lt;br /&gt;
Now we need to install PuTTY.&lt;br /&gt;
Download PuTTY from here:&amp;nbsp;&lt;a href=&quot;http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html&quot;&gt;http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBBsyriOiQZkG8lBCuc_zGxbNn0ecj5zuOo6bITOUuILMCmmEmVpDbBjVvQFZiWLqOlSsBDavgugn6iJAdt5FDZ2m8_vgp_d0WGITulPGpMTkybbyLohOqkKA-TgGd0J0iXCAI/s1600/download+putty.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;228&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBBsyriOiQZkG8lBCuc_zGxbNn0ecj5zuOo6bITOUuILMCmmEmVpDbBjVvQFZiWLqOlSsBDavgugn6iJAdt5FDZ2m8_vgp_d0WGITulPGpMTkybbyLohOqkKA-TgGd0J0iXCAI/s640/download+putty.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
PuTTY is just an executable file so to run it just put it in a folder of choice and double click it. It will bring up a screen like this. There is no installer just a plain .exe file.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsR734maM1KN-TCWJg7HF3p7R0N9_vle1ubYVBgCukzsDiKLqNQ5LptpNPGCqExf5IVadtsv74e-0mNRBFg4Z60LhmVgu-4vS8TdfzFJL7rhidwH-_6mvL_Bwj3DWSKb2iIz2i/s1600/start+putty+screen.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsR734maM1KN-TCWJg7HF3p7R0N9_vle1ubYVBgCukzsDiKLqNQ5LptpNPGCqExf5IVadtsv74e-0mNRBFg4Z60LhmVgu-4vS8TdfzFJL7rhidwH-_6mvL_Bwj3DWSKb2iIz2i/s400/start+putty+screen.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Remember the DNS name we copied from the AWS control panel? Now it is time to paste that in to the host name field in PuTTY.&lt;br /&gt;
Do also name your configuration in the field saved Sessions.&lt;br /&gt;
Click the save button. PuTTY should now look something like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVjZWiW7kgskY7ho5tlX1c7JuhySMAxybUmOK9ws7jrKrq2U695j9wsq7RFXbZ0uelWbPSk4BuDpsGXE6iZFQtCgR3oBSDfnkpEpT0cudPCd5ISEcXo4_YtM5Q0xFW5ztDGAZa/s1600/enter+and+save.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVjZWiW7kgskY7ho5tlX1c7JuhySMAxybUmOK9ws7jrKrq2U695j9wsq7RFXbZ0uelWbPSk4BuDpsGXE6iZFQtCgR3oBSDfnkpEpT0cudPCd5ISEcXo4_YtM5Q0xFW5ztDGAZa/s400/enter+and+save.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now set up the auto login name by navigating to Session-&amp;gt;Connection-&amp;gt;Data.&lt;br /&gt;
ubuntu is the default user name in the AMI we are using so let&#39;s put that user name in.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh512_yNigKe-d7CFhvezjdJ0Jnu_bb-5bAaBgfU2KYPDVyTz8ibG8aCiKb0qPRrrA62pS3fvddi72P9InFAydz_xJ5Toyjl2gRF_FwzfJlMeDMmPpQjeLpzahveU-A8wtl35gG/s1600/select+auto+login+name.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;383&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh512_yNigKe-d7CFhvezjdJ0Jnu_bb-5bAaBgfU2KYPDVyTz8ibG8aCiKb0qPRrrA62pS3fvddi72P9InFAydz_xJ5Toyjl2gRF_FwzfJlMeDMmPpQjeLpzahveU-A8wtl35gG/s400/select+auto+login+name.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now we need the the private key to be able to get PuTTY to login using it.&lt;br /&gt;
&lt;br /&gt;
In order to get the private key we need the .pem file you downloaded before. Make sure you know where it is. The .pem key cannot be used directly in PuTTY so we need to run it through a tool that generates the private key.&lt;br /&gt;
You can find this tool here:&amp;nbsp;&lt;a href=&quot;http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html&quot;&gt;http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html&lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjr0bi6gfhYXLw2uHmc7RPhNGqbsPl6w5nwRwrPMV0PH9zZ9d9PTqi4oDCOFZLmvdG3reIcuCiDdy1c0fU6bUiBbH6pREZd5EZbM7zipq0Ow0In32mGEBof5u5VByt4Lr6a4EP5/s1600/download+putty+gen.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;224&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjr0bi6gfhYXLw2uHmc7RPhNGqbsPl6w5nwRwrPMV0PH9zZ9d9PTqi4oDCOFZLmvdG3reIcuCiDdy1c0fU6bUiBbH6pREZd5EZbM7zipq0Ow0In32mGEBof5u5VByt4Lr6a4EP5/s640/download+putty+gen.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Start PuTTygen up just like you did with PuTTY.&lt;br /&gt;
Now click the load button and navigate to your .pem file.&lt;br /&gt;
When you are in the folder where you put the .pem file you will notice that it is not there in the file browser.&lt;br /&gt;
&lt;b&gt;Important: &lt;/b&gt;Click the option &quot;all files (*.*) in the select box in the lower right corner of the file browser.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjT3wo8s98rxyIDqaNQ2HvCfLHDfdeQzOOcG6DH1XZ1v91WFvuJ1V3LCnCXo86BrNN1nnIcGJr4xUnrc9YHD_UjMfGqZbLoBRVOHK5W4IOTF_-AQMrqrwd0uVVSipF_OTBlIXuP/s1600/all+file+puttygen.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjT3wo8s98rxyIDqaNQ2HvCfLHDfdeQzOOcG6DH1XZ1v91WFvuJ1V3LCnCXo86BrNN1nnIcGJr4xUnrc9YHD_UjMfGqZbLoBRVOHK5W4IOTF_-AQMrqrwd0uVVSipF_OTBlIXuP/s1600/all+file+puttygen.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Now you will be able to see the .pem file. Select it and click open.&lt;br /&gt;
&lt;br /&gt;
You should be prompted with something like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijQeWw2LBJf6_oQtCC3GqVOsDmZTRb-tiomYDTCNFbF-b_8akBxN3Gyfw1o_UM5cFvT9sHsTbMWtJP4swgTmzuN1gIcwlp7zrqJI0-QcYA4GVZjBMOYABC3M6-UHdExHv2wyHA/s1600/puttygen+notice.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijQeWw2LBJf6_oQtCC3GqVOsDmZTRb-tiomYDTCNFbF-b_8akBxN3Gyfw1o_UM5cFvT9sHsTbMWtJP4swgTmzuN1gIcwlp7zrqJI0-QcYA4GVZjBMOYABC3M6-UHdExHv2wyHA/s1600/puttygen+notice.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Just click OK.&lt;br /&gt;
&lt;br /&gt;
Now we are back in PuTTYgen and it should look something like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8jckiOtzXBpSCi8dr4xGk4xzqeMbeLhboTwdytu1OWEDLPqAQR0QJtq5xUAP-0LJ-kBoBW1e2L3ewlb-gPIiOvKovu91lxJBRc8GR8SZMg8zMH6_Ls-3rUpChpQO8r_szQbIH/s1600/puttygen+save+private+key.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;296&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8jckiOtzXBpSCi8dr4xGk4xzqeMbeLhboTwdytu1OWEDLPqAQR0QJtq5xUAP-0LJ-kBoBW1e2L3ewlb-gPIiOvKovu91lxJBRc8GR8SZMg8zMH6_Ls-3rUpChpQO8r_szQbIH/s320/puttygen+save+private+key.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
No click the button &quot;Save private key&quot;. It will prompt you with this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh94-qDSc2aMXbW2WN6wbY88pmqARTbyXR3an9tV5zM7qHrn9Sc6nCI06KglOHF_FaSepgqJPAvQxtP3eSNWTNU4w8JKGO2cgM0-vrpAIHvh74TMog5xpxy0z14yT4oKtRRu-IL/s1600/save+without+passphrase.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh94-qDSc2aMXbW2WN6wbY88pmqARTbyXR3an9tV5zM7qHrn9Sc6nCI06KglOHF_FaSepgqJPAvQxtP3eSNWTNU4w8JKGO2cgM0-vrpAIHvh74TMog5xpxy0z14yT4oKtRRu-IL/s1600/save+without+passphrase.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Click Yes and save the private key in a safe place.&lt;br /&gt;
We can now go back in to PuTTY.&lt;br /&gt;
Navigate to Session-&amp;gt;Connection-&amp;gt;SSH-&amp;gt;Auth.&lt;br /&gt;
Click browse and navigate to your generated private key.&lt;br /&gt;
&lt;b&gt;Important:&lt;/b&gt;&amp;nbsp;Don&#39;t click the open button now!&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW-FfnnVGi-yiPYWzt2zs2ljNPZ86fH-d2ltXsViUHBQMATnVsFHr96VblqqDR2q8e2ELqhGSaq_uR5AcW0HHNvSSXnkgxzda8DlZX4voTyR_OQGwwN6BN5s7oHT3sAA3JtW_b/s1600/add+private+key+to+putty.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;386&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW-FfnnVGi-yiPYWzt2zs2ljNPZ86fH-d2ltXsViUHBQMATnVsFHr96VblqqDR2q8e2ELqhGSaq_uR5AcW0HHNvSSXnkgxzda8DlZX4voTyR_OQGwwN6BN5s7oHT3sAA3JtW_b/s400/add+private+key+to+putty.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Now go back to the top level &quot;Session&quot; in PuTTY.&lt;br /&gt;
Click save to save this configuration so the changes made are&amp;nbsp;persistent&amp;nbsp;and we can use this saved session &amp;nbsp;the next time we need to connect to our new server.&lt;br /&gt;
&lt;br /&gt;
Now click open.&lt;br /&gt;
&lt;br /&gt;
This should open a new PuTTY window and log you in without you having to enter a password.&lt;br /&gt;
&lt;br /&gt;
Wow that was a lot of screenshots :-)&lt;br /&gt;
&lt;br /&gt;
This is by no means an instruction that is meant to be used in a production environment it is merely an effort to share my experiences with setting up an Amazon EC2 server for test purposes.&lt;br /&gt;
&lt;br /&gt;
I hope this shaves a few hours off the installation time for your first Amazon Ubuntu server.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/5578195174197044369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/02/how-to-get-ubuntu-1110-server-up-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5578195174197044369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/5578195174197044369'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/02/how-to-get-ubuntu-1110-server-up-and.html' title='How to get Ubuntu 11.10 Server up and running on a free Amazon EC2 Micro instance'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhepBA1sWeLdboRny0CeealAtP1ExACg3kzgdtDQf_xrZcgk18KlqADfLg94Hcj5P3gbtHYaoSvQx2-5oKdSnJno32NURJ6iBK0iKkRB1Hlrxaih_Vh5K-kEIKzAok2cgIDAUiG/s72-c/go+to+aws+console.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-4649776604379864617</id><published>2012-02-04T16:37:00.000+00:00</published><updated>2012-02-04T16:37:06.093+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="analysis"/><category scheme="http://www.blogger.com/atom/ns#" term="BI"/><category scheme="http://www.blogger.com/atom/ns#" term="Qlikview"/><title type='text'>How to map child data to the main record in qlikview</title><content type='html'>&lt;b&gt;The problem:&lt;/b&gt;&lt;br /&gt;
You have a main record, let&#39;s say a sales order and you want to know if a welcome pack has been included on this order. A welcome pack is a sales order line item just like any other product on the order. There is no way on the main order line to know if a welcome pack has been included with this order. The only way to find that out is to go through every sales order line item and find out if any of the line items are in fact a welcome pack.&lt;br /&gt;
&lt;br /&gt;
The loaded data comes from three different files:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;MainOrderLines.csv&lt;/li&gt;
&lt;li&gt;OrderLineItems.csv&lt;/li&gt;
&lt;li&gt;Customers.csv&lt;/li&gt;
&lt;/ul&gt;
The model in Qlikview model looks like this:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKF1nhlTc4R2gemXdv3qwiZIcBgNpTlFAIwk56mpBDYCLTVUyOhq-OcChrPLBfHxZFJt-t05OdN7TVZ4ysrgBcxnfyrU2ccwIL_QO1tJNBH2B9sb0UCmLZEKd8Ya_nCl99Eyz1/s1600/QlikviewMarketingModel+(1).png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKF1nhlTc4R2gemXdv3qwiZIcBgNpTlFAIwk56mpBDYCLTVUyOhq-OcChrPLBfHxZFJt-t05OdN7TVZ4ysrgBcxnfyrU2ccwIL_QO1tJNBH2B9sb0UCmLZEKd8Ya_nCl99Eyz1/s640/QlikviewMarketingModel+(1).png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The Qlikview model. You can see the salesOrderId is connecting the line items to the main order line and the customer id &amp;nbsp;connects the customer to the order. That is a customer can have many order and an order can have many line items.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
The welcome packs are special line items on the orders and they can be identified by their name, it always starts with &quot;Welcome Pack&quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;The Solution:&lt;/b&gt;&lt;br /&gt;
Build a map in Qlikview and load it as a column on the main line of the order record. This column can be called sales_order_welcome_pack for instance. It shall contain either the name of the Welcome pack e.g &quot;Welcome Pack A&quot;. If there is no welcome pack it shall say &quot;No Welcome Pack&quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;How to implement this:&lt;/b&gt;&lt;br /&gt;
Load the line item CSV file in to a Map filtering out only the welcome packs. Index the map on a&amp;nbsp;unique&amp;nbsp;order number.&lt;br /&gt;
&lt;br /&gt;
It will look something like this:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;OrderWelcomePackMap:&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;MAPPING LOAD &amp;nbsp;DISTINCT&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space: pre;&quot;&gt; &lt;/span&gt;sales_order_internal_id, item_display_name&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;FROM&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;C:\Users\johne\results*.csv&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;(txt, utf8, embedded labels, delimiter is &#39;,&#39;, msq) WHERE item_bkfno LIKE &#39;Welcome Pack *&#39;;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
This way the map contains data like this:&lt;br /&gt;
id, name&lt;br /&gt;
123, Welcome Pack A&lt;br /&gt;
124, Welcome Pack B&lt;br /&gt;
&lt;br /&gt;
We have identified all the welcome packs and identified the order main line that shall be populated with the data.&lt;br /&gt;
&lt;br /&gt;
Now it is time to use the map to look up the data at load time of the main order data.&lt;br /&gt;
&lt;br /&gt;
This piece of code in the load script will tag all the sales order main lines with the correct welcome pack. It will tag orders without welcome pack as &quot;No Welcome Pack&quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;ApplyMap(&#39;OrderWelcomePackMap&#39;, sales_order_internal_id, &#39;No welcome Pack&#39;) as sales_order_welcome_pack&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;
Now we can create a Welcome pack picker in the Qlikview UI and still have all the items on the orders with the specific welcome pack in the selection.&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyMb1TlLi0CKISl6nb9ktg2qPhdhn-rmC6jmSbXQuKiKupj0ru-yK98yWoPrWl8qRQKp19jd0Ulw2msMmfoNg60MvdQowW00XrBq88-Yr7jJliuyFH_4DRYfji2xTkURvW6sPd/s1600/welcome+pack+picker.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyMb1TlLi0CKISl6nb9ktg2qPhdhn-rmC6jmSbXQuKiKupj0ru-yK98yWoPrWl8qRQKp19jd0Ulw2msMmfoNg60MvdQowW00XrBq88-Yr7jJliuyFH_4DRYfji2xTkURvW6sPd/s1600/welcome+pack+picker.JPG&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;An example of what the welcome pack selector could look like.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;
This type of&amp;nbsp;implementation&amp;nbsp;pattern is very useful for aggregating data hidden on the line items up to the main record.&lt;br /&gt;
&lt;br /&gt;
Another example could be to create a map with only orders with an item of a certain category. Only tag orders that have a line item above a certain value. I could go on but you get the message...&lt;br /&gt;
&lt;br /&gt;
Please leave a comment if you know a better way of implementing this.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/4649776604379864617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/02/how-to-map-child-data-to-main-record-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4649776604379864617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/4649776604379864617'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/02/how-to-map-child-data-to-main-record-in.html' title='How to map child data to the main record in qlikview'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKF1nhlTc4R2gemXdv3qwiZIcBgNpTlFAIwk56mpBDYCLTVUyOhq-OcChrPLBfHxZFJt-t05OdN7TVZ4ysrgBcxnfyrU2ccwIL_QO1tJNBH2B9sb0UCmLZEKd8Ya_nCl99Eyz1/s72-c/QlikviewMarketingModel+(1).png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-16406849.post-2572228982393680528</id><published>2012-01-31T21:22:00.000+00:00</published><updated>2012-01-31T21:44:08.798+00:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Code"/><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/><category scheme="http://www.blogger.com/atom/ns#" term="Editor"/><category scheme="http://www.blogger.com/atom/ns#" term="Mardown"/><title type='text'>What Markdown Editor is Best to Use?</title><content type='html'>I was recently editing a Readme file over at &lt;a href=&quot;http://www.github.com/&quot;&gt;www.github.com&lt;/a&gt; and that made go on a hunt for the best Markdown editor out there.&lt;br /&gt;
&lt;br /&gt;
I posted a question over at Google+ &lt;a href=&quot;https://plus.google.com/u/0/105779856699545910371/posts/SJdaxSi9w6N&quot;&gt;https://plus.google.com/u/0/105779856699545910371/posts/SJdaxSi9w6N&lt;/a&gt;&amp;nbsp;to see if I could get any suggestions. I turns out that a few people found the questions and they gave me some great suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;For Windows:&lt;/b&gt;&lt;br /&gt;
&lt;a href=&quot;http://markdownpad.com/&quot; target=&quot;_blank&quot;&gt;MarkdownPad&lt;/a&gt;&amp;nbsp;is from my point of view the best editor for Mardown editing. It has brilliant real-time preview and a lovely distraction free mode if you press F10.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiv7YFSl4TZfJuUaYcSG4AVPltbJLe8JTrIPjKiObMCMKjKdHkRyMJXCChGearBB9QjCI2eVFej56s46GHlLiFA4uqsFA2mxRT2G9aK_xDjZcRRsDYI2kkg5z72bDhifFBeY3_/s1600/mardown-pad.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;468&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiv7YFSl4TZfJuUaYcSG4AVPltbJLe8JTrIPjKiObMCMKjKdHkRyMJXCChGearBB9QjCI2eVFej56s46GHlLiFA4uqsFA2mxRT2G9aK_xDjZcRRsDYI2kkg5z72bDhifFBeY3_/s640/mardown-pad.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;For Linux:&lt;/b&gt;&lt;br /&gt;
&lt;a href=&quot;http://sourceforge.net/p/retext/home/ReText/&quot; target=&quot;_blank&quot;&gt;ReText&lt;/a&gt;&amp;nbsp;is the choice for Linux. It is built with Python and QT and is very similar to MardowPad for Windows.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimOwXvwmx5htGI2-kotWGTqAaWgRYfKco5FlDeW22LFPjo9evz6ch32pZfNL0ICI2OKR6igGk65dhJ7X0hTfB6KVXvwBr6ROE3p2PvBDh0SPQwIbtzgOZdhDZ2GmUvds-DDD_g/s1600/retext.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;404&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimOwXvwmx5htGI2-kotWGTqAaWgRYfKco5FlDeW22LFPjo9evz6ch32pZfNL0ICI2OKR6igGk65dhJ7X0hTfB6KVXvwBr6ROE3p2PvBDh0SPQwIbtzgOZdhDZ2GmUvds-DDD_g/s640/retext.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;For Multi-Platform and Web:&lt;/b&gt;&lt;br /&gt;
&lt;a href=&quot;http://joncom.be/experiments/markdown-editor/edit/&quot;&gt;http://joncom.be/experiments/markdown-editor/edit/&lt;/a&gt;&amp;nbsp;is a very lightweight real-time preview web based tool for editing Mardown files. It is quick and very easy to use. A good option if you only edit the occasional Mardown file or if you need access to an editor on a computer where you can&#39;t install software.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZSRrvok2BcnbpjsQy1wx83XmJr_lqlIpJuWhIBow0TrEgHXUe6fXvxVJDbrNoizEObtE2zF02efBJKFmxFgYnzRqZXgjrsbbT4k2Z2ADg_Bk-GYK62uUCO06jLqvQogZeA5MY/s1600/markdown-web.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;402&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZSRrvok2BcnbpjsQy1wx83XmJr_lqlIpJuWhIBow0TrEgHXUe6fXvxVJDbrNoizEObtE2zF02efBJKFmxFgYnzRqZXgjrsbbT4k2Z2ADg_Bk-GYK62uUCO06jLqvQogZeA5MY/s640/markdown-web.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;For Eclipse:&lt;/b&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.winterwell.com/software/markdown-editor.php&quot;&gt;http://www.winterwell.com/software/markdown-editor.php&lt;/a&gt;&amp;nbsp;is a great little plugin for Eclipse. It does have a preview pane but it only updates if you click in the actual preview pane. Still a great option if you don&#39;t like to leave your beloved Eclipse jut to edit an exotic file.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk6cnbPhuTPacxNlFOmNF3gTFUlmJa5oTYT0SLEYy63g92zuz7YKl0d9zZrBAF6csqjOVUQycIPzvPVBkGhMTO-xKjXKXnxJWwiWzi6ZciupLx1Fr62URl5sUpurTSApbUa1Kz/s1600/markdown-eclipse.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;630&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk6cnbPhuTPacxNlFOmNF3gTFUlmJa5oTYT0SLEYy63g92zuz7YKl0d9zZrBAF6csqjOVUQycIPzvPVBkGhMTO-xKjXKXnxJWwiWzi6ZciupLx1Fr62URl5sUpurTSApbUa1Kz/s640/markdown-eclipse.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Thanks goes out to&amp;nbsp;&lt;a href=&quot;https://plus.google.com/u/0/115565984194277967328/posts&quot; target=&quot;_blank&quot;&gt;Morten Juhl-Johansen Zőlde-Fejér&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href=&quot;https://plus.google.com/u/0/114552218818278176536/posts&quot; target=&quot;_blank&quot;&gt;Jodi Jae&lt;/a&gt;&amp;nbsp;for the tips on Google+.&lt;br /&gt;
&lt;br /&gt;
If you know about other Markdown editors that you think beat the ones above hands down, please add them in the comments or in the subject over at Google+&amp;nbsp;&lt;a href=&quot;https://plus.google.com/u/0/105779856699545910371/posts/SJdaxSi9w6N&quot;&gt;https://plus.google.com/u/0/105779856699545910371/posts/SJdaxSi9w6N&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;&lt;img src=&quot;http://www.feedburner.com/fb/images/pub/feed-icon16x16.png&quot; alt=&quot;&quot; style=&quot;vertical-align:middle;border:0&quot;/&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;http://feeds.feedburner.com/br0sk&quot; rel=&quot;alternate&quot; type=&quot;application/rss+xml&quot;&gt;Subscribe in a reader&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://br0sk.blogspot.com/feeds/2572228982393680528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://br0sk.blogspot.com/2012/01/what-markdown-editor-is-best-to-use.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/2572228982393680528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/16406849/posts/default/2572228982393680528'/><link rel='alternate' type='text/html' href='http://br0sk.blogspot.com/2012/01/what-markdown-editor-is-best-to-use.html' title='What Markdown Editor is Best to Use?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/14726920867300724913</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiv7YFSl4TZfJuUaYcSG4AVPltbJLe8JTrIPjKiObMCMKjKdHkRyMJXCChGearBB9QjCI2eVFej56s46GHlLiFA4uqsFA2mxRT2G9aK_xDjZcRRsDYI2kkg5z72bDhifFBeY3_/s72-c/mardown-pad.PNG" height="72" width="72"/><thr:total>0</thr:total></entry></feed>