Feb 15

Open source your Phone System

Posted on Tuesday, February 15, 2011 in Information

Business Phone Systems

If  you wanted to have a business phone system, one with multiple lines, the ability to transfer calls between them, allow users to call one another inside the company using extensions, and have basic conference call functionality, you used to have to spend quite a bit of money on a PBX system.

This is no longer the case, since there are many alternatives now available.  So if you currently have an existing PBX system that needs an upgrade, now might be the time to retire it.  And if you are struggling without a business telephone system, the good news is there are inexpensive ways to upgrade.

Existing PBX systems often leave a lot to be desired, for instance, they are very hard to expand, often costing a significant amount of money to add a line, if you have already maxed out the number of lines the system has.  They are also costly to upgrade, simply because you need specialized personnel to do the work.  You need someone who has an understanding of the PBX system, in order to configure it to work for your business.

Going virtual in this case however, does not mean eliminating all of the costs.   The phones that everyone has at their desk will cost you money, if you want a conference phone in the conference room (a speaker phone that offers multiple mics and noise canceling functionality) will cost you, and of course there is the connection to a phone company.  Almost all new phone systems will use VOIP as the last connection to the phone company, so you will need your phone system to be able to communicate with the phone system, and this is going to have a cost associated with it.

If you hunt around the internet you can find free alternatives to all of these expenses.  For instance, you can use a virtual phone (one that runs on your computer), to replace the costly phone that would reside on your desk.  But that means, your computer has to be on, not rebooting at the time the call comes in, and that you can see your screen, etc.  They are not ideal, and if your business can afford it, you should not choose these shortcuts.  For almost every business, having a way to communicate with the employees and customers is critical.

Replacing the phone system

There are two ways to replace or purchase a new virtual PBX system.  You can purchase it as a service from a company that will offer it as a cloud service, or you can host it yourself.

Normally I would only talk about the self hosted method, but I thought it would be good to have something to contrast it with.  Companies like Ring Central offer a very simple to get in to service, that is not that expensive, and offers most of the features that the self hosted method would, with the exception of being able to choose your phone provider.   Also, Asterisk is now offering a hosted version of their open source product.

To host it yourself, an Asterisk is an excellent choice.  Not only do they offer it as a hosted solution, but they allow you to get the same code they use in their hosted environment, to use with your own system.  Although it is possible to set this up with a single phone line, and connect it to Skype, its not a practical use of it.  This system is designed to create a virtual office phone system, virutal PBX, and is quite complex and costly to set up.  But in the end, you will have a configurable, easy to expand system, that allows you to control the costs by connecting it to various phone companies, and not being locked in to using only one provider.

For instance, this system could be created to route all local & long distance calls through one phone company, and all international calls through another.  You can even configure your phone, so that it can recognize users on Skype, and direct calls to them, using Skype at no cost using Skype for Asterisk.  That kind of flexibility can really save money for some organizations.

Since this is such a big system, I can not cover it all now.  In another post, I’ll talk about how to setup a server to host your own phone system using Asterisk on Linux.

Feb 10

Adding a Mailing List to your site

Posted on Thursday, February 10, 2011 in Information

Adding a newsletter to your site can be easy.  Managing the list, that is removing the email addresses that bounce, and allowing users to remove themselves, can be a lot of work.  Here are two methods to add a mailing list to your site.

Method #1

Add a join my mailing list form to your site, and have the submit entry saved to a text or database file.  This would be a basic server side script that can store whatever the user enters in to the box, with some Javascript verification to make sure that the email appears valid.  Then you need a method to download the list when you are ready to do a newsletter.

Managing the list can be as simple as removing names from the newsletter document on the server.  Adding an opt out box would also be a simple form, that would remove that email from the document/db on the server.

Managing bounces can be a little more difficult, you have to send the mail, then check your inbox for bounced emails, then go and manually unsubscribe those users from the list.

If your list is small, this is not very daunting, and is a simple way to manage a mailing list.

Method #2

Taking advantage of an open source product called PHPList (http://www.phplist.com/), you can easily add a mailing list to your site, provided you have PHP running on that server.  This is also fairly simple to implement, but may require you to know just a bit more about server side scripting to have it seem transparent on your website.

Managing the list, once set up, is a snap.  You do not have to do anything, users can remove themselves, and bounces are removed automatically.  It manages itself!

Conclusion

The first method may seem simple enough, the do it yourself method, but using the open source tool is a heck of a lot simpler to manage, and I highly recommend it.

Oct 25

So you want to host your own server

Posted on Sunday, October 25, 2009 in Information

I came across this link recently, it is an artical by Philip Greenspun, written in 2008, about hosting your own web server.  Although it is slightly out of date, it is only a year old and has a lot of valuable information about ‘your own’ web server.

I think he does a great job to help you understand some of the hidden costs of various different flavors of hosting. The rule today is still the same, the most expensive form of hosting, is your server, your location, and the least expensive is their server, their location.  Because of all the hidden costs of home servers.  But if you want control, nothing can be better then your own home.

Oct 22

Stay up to date by subscribing to a mailing list

Posted on Thursday, October 22, 2009 in Information

As a server manager, one of the most important tasks you need to undertake is keeping up with the operating system updates.  One of the best ways that you can keep up, and learn quite a bit about what is currently going on with your operating system, is to join a mailing list.  If you use one of the popular operating systems for web servers, finding a mailing list is simple, and joining is simple too.  Here are a few to get you started:

Aug 22

WordPress auto updates

Posted on Saturday, August 22, 2009 in HowTo

Background

If you host, or have friends who host wordpress sites, then you know that upades are frequent, and its time consuming to upgrade each site.  I wanted to find a way to automate the process using a command line script, but before I thought about writing one, I thought someone else must have done this before.  Turns out they did.

Aaron Toponce wrote a wonderful script to do the upgrade, and as many of the comments on the site point out it has some serious flaws, but for anyone with some understanding of scripts, its a great start, thanks!

The main issues I found with it,  was the security issue, specificly that the backups are all stored in the public folder, and that was easy to remedy, however someone already did that too.

Jerry Bell updated the script and he also made some other enhancements, but not the one that I felt was most important.  The issue is, that it does not disable, and re-enable plug-ins.  Now, as far as I was able to determine, its not the most important thing to disable them, but it seems to me if wordpress claims it must be done, it should be done.

A little more research, and I was able to determine that the reason the scripts do not disable the plug-ins, is because you have to do it in the database.  Jeff Star pointed out how to disable & enable the plug-ins using the database.

Putting it all together

Using these resources I built a script that will:

  1. Download the latest version of wordpress
  2. Backup all the databases
  3. Backup the files and folders
  4. Disable the plug-ins
  5. Upgrade the wordpres directories
  6. Restore the files and folders
  7. Enable the plug-ins
  8. Clean up

Here is the final script.

Aug 18

SSL Certification

Posted on Tuesday, August 18, 2009 in HowTo, Information

This comes up from time to time, people need ssl certificates for websites, but they do not want to pay for the SSL certificate until development is completed, or they have not yet found the best URL choice for the website.

To help out, self assigned SSL certificates can really go a long way.  Most of the time there is a charge from the ISP for installing the self assigned SSL certificate, but it may really be worth it, so that development of the site can continue.

Here is a great link to a site that shows how to make many different self assigned certificates for a variety of operating systems, if you have access to do so on your server, they can be helpful.

http://www.sslshopper.com/article-how-to-create-a-self-signed-certificate.html

Of course self assigned does have some problems, specifcly the dreaded invalid SSL certificate window.

You can still continue to test the site, by accepting the certificate, and that is the best part of Self assigned SSL certs, they let you use the site as if it were a valid site.  You may also have other warnings that may come form internet security software, but generally speaking, they all have a way to continue to use the site.

Aug 10

Installing Google Wave Server

Posted on Monday, August 10, 2009 in Uncategorized

Installing your own google wave server at this point does not offer a whole lot of purpose, unless you are a developer, or someone who wants to get a jump on understanding how this server is going to work.  For those of you who fall into either category, below is a link to a great screeen cast created by Luc Castera.

Here is a great screen cast that can help you to install your own Google Wave Server.

Jun 14

Web Stats Solutions

Posted on Sunday, June 14, 2009 in Information

Let me first say, that anonymous data collection is not a bad thing.  And if companies can provide services for free, based on anonymous data collection, then more power to them, I say.

This is about page tracking, and analysis.  Answer the question, ‘Who is visiting my site?’  You also get data helping you know what sort of things they do once they have arrived.  Years ago the best tools for this was webtrends, and for those who could not afford it, or who’s host did not have it pre-installed, there was the option of weblogsfrom the server.  If you could not get those, the last thing you could do was build your own tracking, by adding code to each page, and storing the results yourself.  Of course that required a lot of analysis to make it at all useful.

Here are the top free solutions:

  1. Google Analytics - The leader in statistics, mostly because of the tie in with AdWords.  But this free solution offers 5M impressions, much more then the rest, but the downside is that it does not offer real time statistics.
  2. W3Counter – Another free alternative.  I think this has the best graphics of any of the competitors.   Very easy to set up & configure.
  3. StatCounter – Free and accurate, with real time statistics.  This is an excellent tool.

Feel free to use more then on, I often do.

Jun 12

301 Reasons to Redirect

Posted on Friday, June 12, 2009 in HowTo, Information

One thing about being a web site developer that can begin to drive anyone crazy, is the demands that people make, based on some other website/developer who is hyping some technology/hack that they believe will make their site better/appear higher in page ranking.

An old SEO technique, that used to work, but is now dead in my book, is 301 Redirects.  The basic use of a URL redirect, is to allow web site owners to change a URL, and forward the old URL to the new URL.  The reason is to prevent 404 Errors, and to allow web site owners to make website changes, and still have the users bookmarks function.

What happened, was people realized, if the had a page that had a high ranking in a search engine, they could sell that location, using a redirect to another site.  Then the user with the other site, would essentially have a high ranking in a search engine immediately.  This worked, but not anymore.

Search engines had to get smarter, and now they check if the link that are returning in a search has a 301, and if so, to where, and if that new page is not similar enough, it looses ranking.  Now you might say, similar enough?  I would say I am not an expert on the subject, but the idea of purchasing some domain to redirect to your own to boost up your ranking is not the best method.

Anyway, if your clients, or you, are interested in it, here is how to setup the redirect on the original server.  By the way, this also works for legitimate changes, like URL shortening, and domain moving, just in case your here for that.  Some people might ask, what if I have an HTML only page, how can I redirect then?  The answer is, you have to use the actual web server to do the redirect, I did not cover how to do that here.

(Languages are alphabetical.)

ASP

Below is the only content that you can have on the page, if you have automatic headers or footers, or anything like that, it will not work, this should be the entire page.


<% @ Language = vbscript %>
<%
   Response.Status='301 Moved Permanently'
   Response.AddHeader='Location','http://www.yourdomain.com/yourpage'
%>

ASP .NET

Below is the only content that you can have on the page, if you have automatic headers or footers, or anything like that, it will not work, this should be the entire page.

<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
   Response.Status = "301 Moved Permanently";
   Response.AddHeader("Location","http://www.yourdomain.com/yourpage");
}
</script>

ColdFusion

Below is the only content that you can have on the page, if you have automatic headers or footers, or anything like that, it will not work, this should be the entire page.


<cfheader statuscode="301" statustext="Moved permanently">
<cfheader name="Location" value="http://www.yourdomain.com/yourpage">

JSP (Java) Redirect


<%
  response.setStatus(301);
  response.setHeader( "Location", "http://www.yourdomain.com/yourpage" );
  response.setHeader( "Connection", "close" );
%>

PHP

Below is the only content that you can have on the page, if you have automatic headers or footers, or anything like that, it will not work, this should be the entire page.


<?php
  header('HTTP/1.1 301 Moved Permanently');
  header('Location:http://www.yourdomain.com/yourpage');
?>

Ruby on Rails

def old_action
headers["Status"] = "301 Moved Permanently"
redirect_to "http://www.yourdomain.com/yourpage"
end
Jun 11

Join the Mobile Web

Posted on Thursday, June 11, 2009 in Information

If your current site does not yet offer a mobile friendly view, now may be the time to create one.  More and more users are accessing the web using mobile tools, including phones & hand held electronics/PDAs.   Creating a custom view for mobile users will allow your site to appeal to an ever increasing audience.  You might visit your sites logs and review your hits by browser or user agent.  You may be surprised with what you find, recent statistics show that at least one in one-hundred people accessing the internet is doing so via a mobile device (PDF).

The first step to creating a custom user experience for mobile devices is to determine if you want the view to be automatic, or manual.   Manual methods including allowing the user to select to view your site as mobile, either with a link/button or with a different URL, for instance m.google.com.  The second method is to sniff the browsers user agent, and determine the type of browser that may be visiting your site, and alter the site accordingly.

The specifics of how to do the sniffing vary by server type, but there is plenty of simple methods for determining the browser, the next step is to determine how your going to change the website.

The first method is a whole new website, once the user selects mobile, they are transfered to a completly new website that is designed for the mobile user.  You may even decide to create multiple new websites designed for various different user agents.  Another method, is to use style sheets alone to change the look and feel of your site for mobile users.

The second option is, of course, a lot less work.  But it only works when your website has been created with this in mind, and does not often work well as an after thought.  Of course the type of website makes all the difference.

I hope more people build websites with mobile users in mind, or at least offer some portion of their website content in a mobile friendly manner.


SEO Powered by Platinum SEO from Techblissonline