HomeCamera LogoDo you always keep worrying about your beloved pet while at office? Has the thought of someone breaking into your home started affecting you work? Wouldn’t it be lovely if you had a way of keeping a constant vigilance on your home and be at peace of mind every time you are away?

Now, if you are willing to utilise the technological edge there are plenty of solutions which can help you out in this. And HomeCamera – which is a recent entrant in this field – happens to do just that. It’s a simple, easy-to-setup service that offers you complete remote monitoring facilities for free. No extra (and fancy) equipment required other than a normal webcam. In fact, with this aptly titled home camera based solution you can hook up as many webcams as you like and monitor every square-inch on your house. On the move and don’t have a net connection at hand? No problem with that either. You can share you camera feeds with any of your trusted buddies and let them take over the monitoring task for a while. HomeCamera offers an archive section, in case you ever need to go back and check on any of the earlier feeds. All of this is accessible from any corner of the world using a standard browser. Here’s a screen-shot of their web-interface.

HomeCamera Web Interface Screenshot

Registration with this service is free and requires only a couple of steps. You need to have a valid email address for this. Once registered you’ll have to download their client software, install and enter your registration details in it and you’re good to go. The client auto-detects all the webcams you’ve got attached to your computer and lists them for your convenience. You can assign names & descriptions to each -which show up in the web-interface next time you login. There’s a pretty slick & accurate motion detection feature that automatically turns on the recording whenever there’s some moving object in the camera’s focal cone. That way you don’t waste valuable disk space or bandwidth by sending out a continuous video stream. You can even specify the length (duration) of each footage that is to be sent out to the HomeCamera server. Cool thing is that the recording isn’t limited to videos – it’s also possible to send out snapshots (pictures). Here’s a screen-shot that shows the motion detection in action. I tilted my head just a little bit and you can see the detection frame zeroing in on that region.

HomeCamera Client Interface Screenshot

The motion detection feature also sends out alerts to your email address and mobile phone (if you choose to) along with a link which directly takes you to the video footage. The mobile messaging part is possibly the only feature which doesn’t come for free. When you sign-up first, you start with 25 mobile credits but you’ll have to purchase additional credits once you exhaust these.

Alternatively, you can disable motion detection and specify an interval (say 10 minutes) at which the footages are sent out on a regular basis. This is called time-lapse recording.

Another big plus point is that HomeCamera virtually works with any given webcam. It also works most CCTV and wi-fi cameras.

As of now, HomeCamera is in it’s open public BETA stage and if you sign-up as a beta tester you automatically qualify for a free lifetime subscription to the HomeCamera Lite service. Moreover, all beta testers are eligible for special subscription rates for various HomeCamera services in future.

I’ve tested out this service thoroughly and as of now they seem to deliver every bit of their promise. This is a far more viable alternative to all the expensive hardware based monitoring systems available in the market. I highly recommend signing up for a beta trial. You can always take a tour of their site/services before you decide on signing up.

As a footnote I’d like to add that while this is a sponsored post, the views expressed here are entirely unbiased and based on personal experience of this service. In fact I’d been explicitly instructed by HomeCamera to express fair and impartial views.

Sep 11th by miCRoSCoPiC^eaRthLinG

IBackup LogoOnline storage has come to be synonymous with mobility these days and there are a horde of sites offering such solutions. However, when it comes to features, performance & security none come close to IBackup.

Though a paid storage solution, IBackup has a wide variety of pricing plans that can satisfy almost anyone. For example, in the Economy plan, 5GB storage is offered for as low as $9.95 per month. Data Storage OptionsThat may sound a bit pricey to some, but if you consider the features and services offered – it all begins to look good. IDrive – which is a small piece of code that maps your online drive right to your desktop is just one of them. IDrive gives you the ability to drag-n-drop, open, edit and save files using literally any application by making your online storage account behave like just another folder on your computer.

Now a major drawback in this regard is the latency of such online drives. However, the advanced compression algorithms silently working behind the IBackup’s desktop applications cause them to outperform the rest by a factor of at least 30-50% (in many cases). This could mean significant boost in productivity.

Apart from desktop based folder access, the Web-Manager mode enables to to access your files through a browser too. Offered in this mode are extensive file searching, sharing and collaboration utilities along with streaming tools which allow you to catch-up with your multimedia content from anywhere in the world. Sub-accounts are an integral part of the IBackup accounts, letting you create sub-sections within your main account with fine grained access control.

What more – IDrive is not just limited to Windows. It comes in Mac and Mobile Device (PocketPC, Blackberry, Treo etc.) flavours too.

In the enterprise category, they offer storage and backup solutions for a plethora of platforms (Windows / Linux, Oracle / MS-SQL / Exchange etc.).

Awards WonAs for security of your data, the servers on which IBackup’s accounts reside are continuously monitored for attempted network attacks on a 24×7 basis using sophisticated software tools. Moreover, industry leading NAS/SAN storage devices with multiple levels of redundancy safeguard your data in case of storage device failure.

IBackup has won numerous awards in the online storage category including PC Magazine Editors Choice (2003-2005), Webuser Gold Award (Webuser Magazine) and PCPro Lab’s Best Online Storage Solution.

Still not convinced? Experience it first hand by enrolling for a free trial.

Aug 29th by miCRoSCoPiC^eaRthLinG

In my earlier tutorial titled Creating OpenSearch Plugins for Firefox (adds to the QuickSearch bar) I taught you how to write a basic OpenSearch XML format plug-in that can be used with both Firefox 2.x and IE7. The demonstrated example consisted of creating a plug-in that searches through Invision Power Boards.

As an afterthought, I felt like coming up with another quick tutorial on creating the same for WordPress. I won’t spend any time on explaining the components of the plug-in and hence you’re advised to go through the tutorial first before continuing with this. This post is merely an example of how-to modify the code shown earlier on to perform searches on WordPress.

If you ever notice the URL in the address bar when you perform searches using the internal search engine of WordPress, you’ll find the the index.php page is being called along with a variable called “s“, which contains the keywords. Say for instance, you are searching for the term “Firefox” .. the syntax will be …


http://www.domain.com/index.php?s=Firefox

If you refer to the tutorial you’ll see that we can pass on variable-value combinations to a URL using the Param tags. That’s the only parameter you need to pass for WordPress searches. I’ll cite the XML code of my site’s plug-in as an example. It should be self-explanatory.


	ChaosLab
	Chaos Laboratory: Blog Search
	miCRoSCoPiC^eaRthLinG
	microscopic.earthling@gmail.com
	open
	false
	en-us
	UTF-8
UTF-8
	
	http://www.chaos-laboratory.com/favicon.ico
	

	
	http://www.chaos-laboratory.com/index.php

Notice, how I’m passing the keywords in the form of the dynamic variable {searchTerms}.

Any questions ??

Jan 07th by miCRoSCoPiC^eaRthLinG

A brief introduction

This tutorial will attempt to explain in a simple manner how to create an OpenSearch plug-in for Firefox. These plug-ins appear in a drop-down menu in the Firefox Quick-Search bar (located right of the URL/Address bar) and help you perform quick searches across various search engines without having to visit the search page first. Pretty neat, eh?

These search plug-ins were in existence (for Firefox) for a long time. But only with the introduction of Firefox 2.0, the OpenSearch standards have been adopted.

OpenSearch is a collection of simple formats for the sharing of search results.

The OpenSearch description document format can be used to describe a search engine so that it can be used by search client applications.

The OpenSearch response elements can be used to extend existing syndication formats, such as RSS and Atom, with the extra metadata needed to return search results.

The example I’m going to demonstrate searches Invision Power Board (Bulletin Board System). You can make this plug-in perform searches on virtually any other Blogs / Bulletin Board / Content Management System / Search Engine with just some minor modifications in the way the search URL (along with keywords) is sent to the search engine. Here’s a screen-shot of two such plug-ins I’ve created for Astahost & Trap17 forums powered by IPB (Invision Power Board).

OpenSearch Plug-ins Dropdown List

Advantages

There are quite a few advantages of shifting to the new OpenSearch format for these plug-ins, namely …

  • OpenSearch plug-ins are universally supported across many browsers & search clients. Specially worth a mention here are Firefox and IE7 !!
  • OpenSearch supports Autodiscovery of the plug-in, which means you don’t really have to instruct the user to click on a link on your site to install the plug-in. The search client can auto-discover the plug-in script based on a link provided between the HEAD tags of the page.If you wish to, the old-school click & install method can still be implemented.
  • A lot of recent Blogs / CMS / BBS etc. softwares have started supporting the OpenSearch API, which provides a flexible common standard for XML based searches. A list of such software can be found here.

Without further ado, lets get down to business …

The actual plug-in

The OpenSearch plug-ins consist of a single XML file called the OpenSearch Description File. It follows a very simple syntax as shown below:


	engineName
	engineDescription
inputEncoding
	outputEncoding
	
	


	
	searchFormURL

Most of the tags here need to be customised according to the Search Engine you’re going to use with the plug-in. Here’s what you need to modify here.

engineName

engineName enclosed within the ShortName tags specifies the name of the Search Engine as it’ll show up in the dropdown list. Replace this with the name of your Search Engine.

engineDescription

engineDescription enclosed within the Description tags shows up as a brief description of the Search Engine. Replace this with a suitable description.

inputEncoding

inputEncoding enclosed within the InputEncoding tags declares the encoding to use for search string / keywords you provide for a search. The search string is encoded in this format prior to sending to the Search Engine. Your best best is to use UTF-8 here to declare it as Unicoded text that’ll cover the whole Unicode Character Set.

outputEncoding

outputEncoding, enclosed within the OutputEncoding tags acts similar to InputEncoding and declares the character set to be used for producing the search results output. Even here the best used option is UTF-8.

Image

Enclosed within the Image tags, this specifies the image / icon to be used for the Search Engine. This icon turns up next to the search engine name in the dropdown list and also shows up to the left of the quick-search bar. The image is usually in a 16 x 16 pixels format.

The image data can be provided in two formats:

  1. As a direct URL link to the location of the image file (gif/jpg/png etc.)
  2. As base64 encoded data which can be embedded in the plug-in directly. This I believe, is a more elegant way of doing it. However, I couldn’t make it work properly for me. The image simply refused to turn up and hence I’d to resort to method 1.There’s a very good tool at URI Kitchen that encodes any uploaded image in base64 format. The encoded data can then be directly embedded in the plug-in.

Url

Enclosed within the Url tags, this provides the actual location of the Search Engine page. The method attribute defines whether to use GET or POST for fetching the data, while the template attribute points to the location of the search query page. NOTE, that IE7 doesn’t support the POST method and hence to make your plug-in compatible with both IE7 and Firefox, you should ideally use GET here.

Param

Further nested within the Url tags lie a series of Param tags which have two attributes – a name and a value. These act as parameters which are passed to the search engine while performing a query. This too, isn’t supported in IE7. However, you can use a dynamic variable called {searchTerms} to pass on keywords.

Say for instance, I’m searching Invision Power Board based forums. The standard search string in IP takes the format,


http://www.domain.com/index.php?act=Search&CODE=show&searchid=xxx&search_in=posts&result_type=topics&highlite=keywords

If you study the URL carefully, you’ll notice that there are a couple of variables like act, CODE etc. which appear every time along with same values. You can use Param tags to define key-value pairs for these variables, which will then be passed onto the Search Engine during a query.

The actual search keywords (as mentioned before) are available through a variable called {searchTerms}. IPB supports a variable called keywords in the search string and hence you can define a key-value pair like…


… to pass the keywords. Here’s a full working example of the plug-in I created for Astahost forums…


	AstaHost
	AstaHost: Search the Forums
	miCRoSCoPiC^eaRthLinG
	microscopic.earthling@gmail.com
	open
	false
	en-us
	UTF-8

UTF-8

	http://plugins.astahost.com/splugins/astahost.gif
	






http://www.astahost.com/index.php

Here you’ll notice several other tags like Developer, Contact, SyndicationRight, AdultContent etc. which I haven’t discussed in this article. A detailed outline of all the OpenSearch tags can be found at: OpenSearch Description Elements.

Autodiscovery

If you recall I’d discussed a feature called Autodiscovery earlier on. This helps search clients automatically discover a plug-in embedded in your page. The process is quite simple. All you’ve to do is include a special LINK statement in the HEAD part of your page.

  

You simply need to modify the title and the href link to the actual plug-in file.When you visit a site with the plug-ins set to be auto-discovered, here’s how the drop-down menu in the quick-search box will look like…

OpenSearch Plug-in Autodiscovery Screenshot

Adding the plug-in Programmatically

You can also include the plug-in on your page in a click-and-install manner. The process has been simplified. All you need to do is provide a link to install the plug-in on your page and in the link, add the window.external.AddSearchProvider() JavaScript statement. Example is shown below.


	Link Text

Clicking on this link will cause Firefox to pop-up a dialog box asking the visitor for a confirmation of plug-in installation. Example of the dialog box …

OpenSearch Plug-in Click & Install Screenshot

Working examples can be found at the Astahost Plug-ins Page.

Any questions / confusions ?? Feel free to leave a comment and I’ll make sure to get back to you.

Jan 07th by miCRoSCoPiC^eaRthLinG

Regular surfers no doubt often come across sites which seem to defy the standard format for a web-address, i.e. www.some-site.com and take up forms like www1.some-site.com. It gets people wondering what actually is this www1 ! I’ve heard some really funny and odd explanations regarding this www1, www2 etc. and most of them border around the being the “second version of web/internet” :D

In this article I’ll try to explain the concept behind this whole domain naming scheme as lucidly as possible.

First and foremost, every computer that is somehow part of a network requires:

  • A unique IP address which establishes the identity of that computer on the network. No two computers on the same network may have the same IP address. Consider this similar to having a personal phone number. An example of an IP address is 202.212.121.100.
  • Secondly, every computer requires a unique NAME too, which again is another way identifying the computer on the network. Once again, no two computers can share the same name on a common network.

This brings us to the topic of domain names… the various domains like .com, .net, .org etc which you come by on the net are called Top Level Domains or TLDs. You can purchase (or rather lease, since domains aren’t really sold to you but leased for a certain period) such domains from internet naming authorities like ICANN. But a .com or .net alone isn’t sufficient to uniquely identify you on the net. Hence, along with the TLD you also purchase a secondary name which usually is related to your company or the product you’re selling or the overall theme of your website. You secondary name and the top level domain together give you your unique web identity. An example: Say I bought a .com domain and along with that a secondary name mycompany. So mycompany.com is what I will go by on the web.

ICANN maintains a network of DNS (Domain Name Services) Servers which is sort of an online telephone directory for computers. Usually ICANN’s servers or whoever maintains servers with similar authority are called root servers since they’re right at the top of the DNS pyramid. When a domain name of another computer is fed into your computer, it contacts these root servers in search of the target computer. The idea behind this is to query the DNS Servers and find out the IP address of the target, which can then be used to connect directly with it. The domain name alone is worthless as it can give no indication where the actual target computer resides.

If ICANN can provide the IP address of the target all’s well. If it is unable to – nothing to worry. Their DNS servers will always contains lists of other secondary DNS Servers maintained by other organizations and can redirect your query to these secondary servers. If the secondary ones cannot find your target, they handle the request down to yet a third level (tertiary) servers and so on. Think of the whole DNS chain like a pyramid, where the root servers sit right on top. Anyway, this cycle goes on till one of the DNS Servers finds the web-address you’re looking for in it’s own directory and then returns the result in the form on an IP address to your computer. This whole mechanism is absolutely transparent and occurs by the cartload every second.. with so many millions of pages being loaded worldwide.

As a base case, if your own company or hosting service maintains it’s own DNS Servers, this request might even reach up to those in search of the target address. This whole process of querying by domain names and getting the IP Address in turn is called Domain Name Resolution or simply Name Resolution.

The order of name resolution is right to left. For example, for the address www.mycompany.com the resolution will happen like:
.com >> .mycompany >> www

Now I’ve explained what the “com” and “mycompany” a short while back, but what is this www before your domain name? While being a acronym for World Wide Web, www also represents something known as the CNAME or Canonical Name for a domain. The CNAME is almost aways “www” as an adopted standard. You’ll notice that in 99% of the cases, both www.mycomany.com and simply mycompany.com will take you to the same site. In reality the DNS Servers list your IP address against this domain itself. The higher level DNS Servers don’t have anything to do with the www part. It is your own company’s/web-host’s DNS that deals with the www part.
A typical DNS Server conversation might look like this…

My Computer to Root DNS: “Hello, do you know www.mycompany.com?”

Root DNS: “Sorry, I know only about .com, .net and .org, and I can see the computer you’re trying to reach is a .com but I don’t have any further information on www.mycompany. However, I have a friend who might know about all the systems under .com domains. Here’s my friend’s address…(secondary DNS).”

My Computer to Secondary DNS: “Hello, do you know www.mycompany.com?”

Secondary DNS: “Yes, I do know mycompany.com but not aware of the www computer. I’ll refer you to the company’s DNS (Tertiary) who might be able to tell you further about the www”

My Computer to Company’s DNS: “Hello, do you know www.mycompany.com?”

Tertiary DNS: “Yes, you’ve reached the right place. Hold on a moment, I’ll direct you to the www computer.”

If you have your own DNS Servers running and your site draws good traffic, you might have setup 4-5 different computers in your company’s network to handle various kind of requests like web, ftp, email etc. individually so as to not put too much stress on a single machine.

It’s the www part that identifies the machine which is supposed to handle web (http) requests – but this happens internally on your network. DNS Servers outside your network do not need to know which machine is handling www and which one, ftp. Their job is simply to direct someone to your main IP. Your own DNS takes over from there. So www, ftp, mail, pop3 etc. actually represent various computers on your network handling those services.

As you can see, mycompany.com is good enough to reach your company’s site. The www part is pretty much unnecessary. As long as you have your own DNS server’s running, you can instruct it to resolve ANYTHING in the CNAME part. You can instruct your DNS to redirect all web requests to some computer called aaa and ftp to another one called bbb. In such a case your web-address could be http://aaa.mycompany.com and ftp address could be ftp://bbb.mycompany.com. It wouldn’t matter at all as long as your own DNS can resolve it. As I said earlier, since this is a world-wide adopted standard almost any and every web-site uses the www. But occasionally some sites use www1 or www2 or even www9 … whatever they feel like using.

There’s practically no limitation on what you can use as your Canonical Name. However, do not confuse this with sub-domains, which we’ll cover in another topic some other time.

Any questions / comments ?

Dec 15th by miCRoSCoPiC^eaRthLinG

Page 1 of 38

    The Social Me

    Topics

    open all | close all

    Links

    Elsewhere on the Web…