Planet Claire

some say she's from Mars

Skype, don't make the same mistake I did

by Claire 12/7/2009 7:48:00 PM

If you're thinking of buying an online number from Skype so anyone can call you, then don't do it the way I did it.  Money & time wasted. 

We recently built an office next to our house (we work at home) and our ultimate hope was that Skype might be used for our business, together with mobile phones, eliminating the need for a landline in here.

Here's how not to get a Skype online number:

  1. Try out skype first to see if you like it.  We both signed up for a free account and started using skype.  I really like it!  Started getting contacts, having conversations (chat is great, it really frees up your email inbox).  Bought a headset, the phone call quality is excellent.
  2. Buy some credit in order to make calls to non skype numbers. Having successfully trialled skype to skype calls, we decided to buy some credit and start phoning non skype numbers.  That also worked great.  The cost compares well to the landline, so the next step was to get an online number so that anyone could phone us.
  3. Open a Business Control Panel & buy some online numbers.  At this point I discovered the business control panel.  As there are 2 of us, and this is a business expense, it seemed like the right thing to do.  So I started a business control panel and bought 2 online numbers, with the intention of allocating them to our 2 existing skype accounts.  This is where it started to go horribly wrong. As I now discovered, online numbers can only be assigned to accounts created within the business control panel.  So at this point we had 2 personal accounts with credit on them, and 2 online numbers that we had paid for, which could not be used on our 2 accounts.
  4. Create Skype accounts within the business control panel for the online numbers and forward the new accounts to the preferred accounts.  The solution to the mess created in No. 3 was to create 2 skype accounts from the business control panel and assign the online numbers to them.  We did not want to discard our personal accounts because we both had credit on them, and a list of contacts who knew us.  It is also not possible to transfer credit between accounts.  So we decided to forward the new skype accounts to our preferred skype accounts.  In this way anyone who phoned the online numbers would be transferred immediately to our personal skype accounts.  Great!  The next step was to set up call forwarding to our mobiles when we are not online.
  5. Set up call forwarding to mobiles when not online.  This is the last thing we needed to be able to use skype for business, and have it forward to mobile phones when not online, or not answering.  Without this it's not a great idea to give out the number to anyone.  So I set up call forwarding to my mobile on my personal account.  So at this point I had a business account with an online number which was being forwarded to my preferred personal account which has credit, which was then being forwarded to my mobile when unanswered. Note that you need to have credit on an account in order to forward calls to non skype phones.  

Unfortunately double forwarding just doesn't work

It seemed to work sometimes, but it turns out it only works if another skype caller calls you.  Twice I contacted skype support by email and received a canned response with links to the help pages on how to setup call forwarding.  Nowhere on Skype does it tell you that this arrangement won't work.  So we sadly decided it had all been a waste of time & money and investigated VOIP through our ISP.  We still had the online numbers which we had paid for which were pretty useless, as well as the skype credit, which fortunately we could use up by making outside calls with our skype ids.

VOIP turned out to be less than perfect (expensive, bad call quality, limited support for separate phone numbers).   So in desperation I decided to have one more crack at the Skype thing.  Looking for a telephone number for Skype support, I didn't find one, but did find chat support, so started a session and got someone straight away.  Half an hour later, the helpful agent and I together came to the realisation that what I was trying to do just wasn't going to work.

So after all of this time and energy spent, and with renewed confidence in Skype support after my positive chat session, once again I decided to cough up some more cash & bought credit for the business accounts so that I could set up forwarding to my mobile phone (instead of my personal skype account).  This works perfectly. Unfortunately it means that I'll have to discard my personal account, once I've used up the credit on it, & tell all my contacts that my skype id has changed.  Sadness, I liked the one I had. 

Well atleast we've got it working now, and hopefully after a trial period we can do away with bringing the cordless phone from the house in here!  In retrospect, it seems obvious that double forwarding might cause problems, but really the whole thing came about because of Skype's limitations with transferring credit & assigning online numbers.  And the lack of documentation that double forwarding won't work, together with an obvious lack of knowledge from skype support agents just caused us to lose confidence in skype altogether.  However when it works, it works great and it's probably worth persevering with.

Tags: , , ,

Tech

Don't buy a puppy for Christmas, consider one of these beautiful homeless pooches!

by Claire 12/4/2009 10:43:00 AM



1. The Greyhound is typical of a greyhound and an adult with a lovely, gentle nature……

2. Jess (no photo yet)…..Labrador X Staffy (surrendered by a family with kids….just no longer want her)


3. Staffy X Ridgeback – advised by Ranger a lovely nature too


4. Small “purebred” brindle staffy (female I think) been impounded for almost 2 weeks and is just so sweet


5. Staffy X Large Tan – another with a friendly disposition – according to the Ranger when cleaning kennel he just comes over and sits by your side

Tags: ,

Cats & Dogs

Beautiful Miranda

by Claire 12/1/2009 4:13:00 PM

URGENT HOME NEEDED!

My name is Miranda, and I am approx. 4years old.    I’m a stray, I’ve been fed by a kind lady for 6 months but cannot stay any longer.  I’ve been sterilized, wormed and vet checked.    I will be vaccinated and microchipped at a discount for my new owner.

I’m very gentle, friendly, and love company - I just need to be loved and safe.  

If you would like to see me, please ring Margaret on 9291.7773.   I am living in Lesmurdie area and I urgently need a new home.

Tags: ,

Cats & Dogs

Foster homes needed for Adult cats

by Claire 11/16/2009 9:36:00 PM

Got this email today:

"This is a quick call out to ANYONE out there who can offer to take a cat into their home for a short period, usually no more than a few weeks (though can be longer in some circumstances) - here at Cat Haven we are absolutely full to bursting point with over 75 adult cats and 20 kittens currently in our care. We have so far had 15 adult cats handed in to us today and quite simply don't have anywhere to put them, so are looking for foster carers for them until more room becomes available in the kennels. Cat Haven supplies all food, litter etc for foster carers so all you need to provide is a loving home for the cat! If you think you or anyone you know is in a position to help us out, please contact the Cat Haven ASAP."

Tags: , ,

Cats & Dogs

Cropping swf to fit div of different ratio

by Claire 11/16/2009 1:44:00 PM

I found adobe's documentation very confusing here, a typo oft copied & pasted on the web just wasted over an hour of my time, grrr!!

Here's the story:  I've got a website where I'm tiling an .swf file.  As it happens the width of the div isn't an exact multiple of the width of the .swf so the last instance of the swf's got to be cropped.

The parameter of the object tag to use is "scale".  You need to set it to "noborder".  Not "noorder"!!

So, using swfobject, here's my code that crops the swf:

    <script type="text/javascript">
        var flashvars = {};
        var params = { wmode: "opaque", scale: "noborder" };
        var attributes = {};
        swfobject.embedSWF("/flash/grass.swf", "grass5", "145", "46", "9.0.0", "expressInstall.swf", flashvars, params, attributes);
    </script>

Note the width of the flash file is 197px and it's cropped to 145px.  That's all that's needed. 

Now if anyone can tell me how to tile an .swf across a div without having to embed the .swf on multiple tiled divs within the main div....?

Tags: ,

Tech

Gorgeous discarded kittens needing a home

by Claire 11/9/2009 2:01:00 PM

The  pregnant  mother of these five kittens was discarded by her previous owners. She was taken in by a foster carer and had five beautiful kittens on 24 September 2009.   One has found a home, but there are still 2 female white kittens, 1 male white and 1 male tabby looking for homes.   They are all very healthy and bright, sociable and friendly.

The kittens are not free, but new owners would pay towards a prepaid sterilization/microchipping/vaccination package which we will partly subsidise.  Once the kitten is old enough it will be sterilized with nothing more to pay by the owner as all costs are covered in the up-front payment.

If you would like to see the kittens please ring Margaret on 9291.7773

FRIENDS OF COMPANION ANIMALS SOCIETY INC.

Tags: ,

Cats & Dogs

Launching an umbraco website

by Claire 11/5/2009 5:59:00 AM

Here's a list of common tasks when launching a website, umbraco in particular, but a lot of these tasks are relevant to any asp.net website.

I've started this list for my own reference, it's not complete & not the last word either, but maybe it may help someone else.

1. Make sure you're in release mode

If you've got your relevant source files in a visual studio project then make sure that you build it in release mode. 

Also, ensure that debug="false" in the compilation element of web.config

The appsetting umbracoDebugMode is apparently allright to leave as "true" as it's not supposed to cause a performance hit.

2. Give the website full trust

Umbraco needs this in the web.config:


<system.web>
<trust level="Full" />
</system.web>

3. Configure a 404 page

Create a page in the website to handle 404 not found errors.  Add some navigation links to the home page, the search page or anywhere else that might be likely.  Add the node id of this page to the <errors404> element of /config/umbracoSettings.config

4. Configure a fallback error page

For any other unhandled exceptions that are not 404s you update the web.config like so:


<customErrors mode="On" defaultRedirect="~/error.aspx" />

5. Redirect the www subdomain to non-www or vice versa

Find out whether your client likes the wwws or not and then redirect accordingly, using the following syntax in /config/UrlRewriting.config.  Encourage your client to always use the preferred address in advertising and backlinks.


<add name="www" redirect="Domain" ignoreCase="true" rewriteUrlParameter="IncludeQueryStringForRewrite" virtualUrl="http://www.yourdomainname.com/(.*)" redirectMode="Permanent" destinationUrl="http://yourdomainname.com/$1" />

6. Redirect old pages.

If this is a site rewrite there are probably old pages to redirect.  It's important to issue 301 "permanent redirect" so that search engines will know the old pages have moved & not disappeared completely.  

Luckily umbraco makes this easy, it uses the urlrewriting.net project which can be used to make search engine friendly & people readable urls, but is also very useful for the important 301 redirects.  Simply add the relevant entries to /config/UrlRewriting.config file.  Here's an example:


<add name="about" virtualUrl="^~/index_files/Page344.htm" destinationUrl="~/about-us.aspx" redirectMode="Permanent" ignoreCase="true" />

Note that for the above example to work your site must either be running on IIS7 or you must map the .htm extension to ASP.NET under IIS6.  This is because the requested file is .htm which isn't handled by default under IIS6.  Ditto for image files & .pdfs.

Here's an example with a query string.  In this case the products had moved but google still had the old pages in it's index.  Also need to include rewriteOnlyVirtualUrls="false" to make this work as products.aspx is a real page.


  <urlrewritingnet xmlns="http://www.urlrewriting.net/schemas/config/2006/07" rewriteOnlyVirtualUrls="false" >
   
    <rewrites>
      <add name="resources" virtualUrl="^~/products.aspx\?idCategory=044c6017-34c3-4454-865f-d142c1776ab6" destinationUrl="~/products.aspx?idCategory=b02e9f0b-10f6-4ec8-b462-2a9d08410817" rewriteUrlParameter="IncludeQueryStringForRewrite" redirectMode="Permanent" ignoreCase="true"/>

If you don't have access to the old website you might not know which pages to redirect, so I often just google the domain name to find out which pages google's got in it's index & redirect those.

7. Add ELMAH error logging & notifications

You need this, really!  There are some good instructions on Lee Kelleher's site, my setup differs a little in that I choose to use the same SQL server database that umbraco lives in.  To do that, you need to run SQLServer.sql on your database.  My web.config entries are shown below.


  <configSections>
    <sectionGroup name="elmah">
      <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah"/>
      <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah"/>
      <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah"/>
      <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah"/>
    </sectionGroup>
  </configSections>
  <elmah>
    <security allowRemoteAccess="yes" />
    <errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ElmahDB" />
    <errorMail from="websiteEmailAddress" to="yourEmailAddress" />
    <errorFilter>
      <test>
        <jscript>
          <expression>
            <![CDATA[
                    // @assembly mscorlib
                    // @assembly System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
                    // @import System.IO
                    // @import System.Web

                    HttpStatusCode == 404
                    || BaseException instanceof FileNotFoundException
                    || BaseException instanceof HttpRequestValidationException
                    /* Using RegExp below (see http://msdn.microsoft.com/en-us/library/h6e2eb7w.aspx) */
                    || Context.Request.UserAgent.match(/crawler/i)                     
                    /*|| Context.Request.ServerVariables['REMOTE_ADDR'] == '127.0.0.1' // IPv4 only*/
                    ]]>
          </expression>
        </jscript>
      </test>
    </errorFilter>
  </elmah>
  <connectionStrings>
    <add name="ElmahDB" connectionString="server=servername;database=db;user id=userid;password=pwd" />
  </connectionStrings>
  <system.web>
    <httpModules>
      <!--
                Uncomment the entry below if you are using MS Ajax v1.0.x.x
                and want to capture errors during Partial Postbacks
                NB This is not required for the version of Ajax shipped with .Net Framework v3.5!
      <add name="MsAjaxDeltaErrorLog" type="Elmah.MsAjaxDeltaErrorLogModule, Elmah"/>
            -->
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
      <!--
        Uncomment the entries below if error mail reporting
        and filtering is desired.
        -->
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
      <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>
      <!--<add name="ErrorTweet" type="Elmah.ErrorTweetModule, Elmah"/>-->
    </httpModules>
    <httpHandlers>
      <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
    </httpHandlers>
    <authentication mode="Forms">
      <forms name="YourAuthCookie" loginUrl="umbraco/login.aspx" protection="All" path="/" />
    </authentication>
  <location path="elmah.axd">
    <system.web>
      <authorization>
        <deny users="?" />
      </authorization>
    </system.web>
  </location>

8. Give the login authorization cookie a unique name

In the web.config there's a section specifying what your login page is, if you're using forms authentication.  You should change the name of the cookie to something unique, otherwise you'll be sharing access with any other website which has the same cookie name. 

Incidentally you should also change the loginUrl to "umbraco/login.aspx" since that's the loginurl for umbraco.  Here's an example:


<forms name="AUTHWebsiteNameOrRandomString" loginUrl="umbraco/login.aspx" protection="All" path="/" />

You only need this section if you've got custom pages protected by forms authentication (such as elmah above).

9. Update the <mailSettings> element

Put some settings in here that are relevant to the production server, if indeed your website uses these settings, such as in a contact form.

10. Submit a sitemap to google

Not essential, but a good idea especially if it's a site rewrite.  Here are some suitable packages for umbraco, I use the Cultiv sitemap.

http://our.umbraco.org/projects/tag/sitemap#projectList

Submit the sitemap to google using google webmaster tools.

11. Google analytics. 

Add google analytics tracking code to the master template.  Set up an analytics user account for your client's email address.

12. Google maps

Don't forget to add your business to google maps, and embed the map on your website, if appropriate.

Tags:

Umbraco

1 year on

by Claire 11/5/2009 12:59:00 AM

Well it’s been over a year,that’s terrible!  But I’ve finally managed to find the time to resurrect my blog, even installed Windows Live Writer since everyone raves about it I thought I’d better try it.

Now after all that I have nothing more to say :-|

I did just write a long post about publishing umbraco websites though if you’re at all interested.

Tags:

Life

Beautiful Mixed Media Art

by Claire 3/13/2008 1:59:00 AM

This is my Mum's art.

http://dotmarshall.com

I remember as a child Mum used to draw quite a lot and my Uncle Alan used to paint sailing ships which I found endlessly fascinating.  Mum, like her brother is very talented artistically but bringing up a family & running a business came first for years, a familiar story!  She probably lacked confidence as well as time. 

Recently retired, she's started painting again.  She started out with acrylics, then took up watercolor, especially birds which she is very good at, and now has discovered a passion for the abstract.  She uses a lot of collage, mixed media, and really likes to experiment with pushing the boundaries.

I'm very proud of her - go check her out! 

Tags: , , ,

Life

More fun, this time with tracing

by Claire 1/22/2008 8:08:00 AM

Had a shot at tracing A's face in Illustrator, a la http://www.ndesign-studio.com/resources/tutorials/tracing-photo/

Not bad for a first attempt?  (She wanted purple hair!)

Tags: , ,

Life