Geo localisation is identical to all the other parameters that you can enter in JMS and in particular the list of domains.
The geo-localisation and browser feature are additional criteria to the domain list to consider a slave site as OK to be displayed.
Here you don't need any PHP knowledge.
You just have to create a matrix with your criteria and decide in which condition you want to display a website.
For example.
If you want that a user located in canada using a browser in english display a website domain.com instead of the domain.ca then
COUNTRY = canada
Browser language = en*
domain.com, domain.ca
Set redirection to first domain in the list (here domain.com)
So when a user enter domain.ca and that its geo-localisation is canada and browser language is ENglish then you redirecto to domain.com
In general, it is helpful that you create an excel sheet with all your criteria and condition in which you want to display a website
The tips is to use the "redirect to first domain" when you have several condition for a same domain.
Also use the "order" field present in JMS to define in which order you want that JMS analyse the conditions.
In your case, you mentioned the Alberta city but you didn't mentioned the URL entered by this person. I will assume that this person will enter
www.domains.com
COUNTRY= CA
CITY = alberta
domain = alberta.domain.com,
www.domain.com
Redirect to first domain
If you want that somebody that is located in Reddeer that enter alberta.domain.com is redirected to the reddeer.domains.com then
Country = CA
City = reddeer
Domain = reddeer.domain.com, alberta.domain.com
Redirect to first domain
With the ordering, you can put a latest rule that is not geo-localised that display "offcancada.com"
domain = offcanada.com,
www.domain.com, alberta.domain.com, reddeer.domain.com, ....
redirect to first domain.