Home PBX thoughts

In researching my recent VoIP articles I have been playing around with a version of Asterisk designed specifically to run within a VMWare environment. I will expand on this is much more detail in part 3 of the Telephony article series, but I have been encountering what appears to be a common problem in this particular type of setup that seems difficult to resolve. Specifically, Asterisk in VMWare would appear to suffer from pretty bad audio playback problems to the point of making the audio almost unintelligible. Please note, though, that I am referring to pre-recorded audio such as the voicemail announcements, and not to any ‘live’ audio. Still very annoying and enough to cause someone to dump Asterisk.

However, there is a solution. Having tried all the usual angles that have been tried with varying degrees of success by many other people, such as amending grub.conf and setting the vmware process priority to high. I tried these and was not satisfied with the results, indeed found it difficult to discern a difference. I then remembered a problem I’d had with some older games on my shiny new (as it was then) dual-core AMD Athlon PC which had been resolved by setting the processor affinity. So I tried this hack with the relevant vmware-vmx.exe process (using Process Explorer from Sysinternals) and that seemed to do the trick.

However, I restart this PC on a regular basis as I don’t like to keep it running overnight, and the next time the PC was re-booted the audio problem returned. Of course, the processor affinity change doesn’t survive a reboot. However a little more exploring revealed that VMWare, in their wisdom, have included a means of excluding CPU’s from within the virtual machine’s configuration file - *.vmx  All you need to do is add the line

processorN.use = “FALSE”

where N is the number of the processor you wish to exclude that VM from using. I’m pretty sure you can have multiple line with different values for N, in case you have more than 2 virtual or physical CPUs. Having set this value, next time you fire up your PBX in a virtual machine it only uses the processor(s) you have not excluded. I would recommend only using a single processor, after all Asterisk is not a huge resource hog.

So if you are experiencing an audio judder issue with any of the Asterisk-based packages within a VMWare environment, and nothing else has worked, then give this a go. It might just do it. I’d love to hear if it has helped anyone.

Telephony pt.2 - VoIP

In telephony pt.1 I talked about the reasons why companies might consider installing their own PBX (Private Branch eXchange). Truth be told, this was typically a decision that was easily made when a company reached a particular size (where the cost of having one external line per internal phone was prohibitive). And usually a company would start with a pretty small, simple and, above all, cheap system that could support maybe 3 or 4 external lines and 8-10 internal extensions. For a budget of £1,000 to £2,000 you could be up and running, and if you chose wisely you could have some expansion capability too. For some companies this is still an easy and right decision to make.

However, the world of telephony is changing. The largest provider in the UK, BT, is committed to replacing it’s aging switched network with an IP-based setup. It has to, the competition is hotting up and BT is no longer allowed to restrict access to its exchanges in order to reinforce their near-monopoly. For the consumer of telephony services, this effectively means any phone point will have the potential to instantly become an internet-access point - no more waiting weeks or months for BT to DSL-enable your line.

The net effect of all this progress on your telephony options is that VoIP becomes the norm rather than an attractive alternative to PSTN. In fact, whilst PSTN will probably remain around for ages, it will effectively be a virtual system sitting on top of the IP network. In time all analogue equipment (phones, modems, PBX’s) will become obsolete. So it would seem sensible, at the very least, to keep an eye on VoIP and the potential cost savings it could offer you.

What are those potential cost savings? VoIP can usually undercut the rates you are receiving for national calls, although it’s very possible that, if you are very good at negotiating with BT or have an agreement with a third party that offers Least Cost Routing services, the saving is minimal. Where VoIP tends to shine, however, is in two particular areas. Firstly, if you have multiple offices and route calls between them over the PSTN, then utilising your internal IP network for those calls is a much more efficient and cost-effective option. Secondly, if you make a significant number of international calls then VoIP will almost certainly offer you considerable savings, because VoIP calls only break out from the internet at a point close to the destination, so you should only ever pay local call rates. Obviously you need to do the maths, but if either of these situations apply to you then it’s time well spent.

So what are your VoIP options? Effectively you have two:

  1. Many ISP’s offer hosted VoIP services (sometimes referred to as IP Centrex). For smaller businesses these can be a good route into VoIP as you done incur the cost of installing a new PBX (or adding VoIP capabilities to your existing PBX). The charging model tends to be pretty simple, you pay on a fixed charge per extension in addition to the cost of the calls you make. There are downsides, though. You will probably need to replace all your existing handsets; you will be placing your trust in the line(s) between you and your ISP (a single point of failure); even internal calls will be routed via your ISP, thus tying up bandwidth; and you pay for all extensions regardless of how much or little they are used. You can pay a bit extra for some hardware that removes the need to route internal calls via your ISP.
  2. The other option is to host your own PBX. This usually tends to have an higher initial cost, but you don’t have to carry on paying ‘rent’ for the use of your phones. It also affords the opportunity to mitigate the risk of downtime by utilising multiple ISP’s. After all, the general expectation of phones is that they work 100% of the time. If you using a DSL solution for internet access, as many small businesses do, there are usually no guarantees or SLA’s offered by ISP’s. If the line goes down then that’s hard luck! The downside of a hosted PBX solution is mainly the initial cost. There is the cost of the PBX itself, the cost of IP phones, the cost of improved internet access if needed, and the softer costs of training staff in the new functionality. There will be an ongoing need to administer and support the PBX, although being an IT system it may be more feasible for your internal IT staff to do this.  You may also wish to introduce or improve your CTI (Computer Telephony Integration) capabilities.

Personally, I think having your own PBX is a preferable option, although using a hosted system may be a good way of ‘dipping your toes’ in the water. After all, once you’ve purchased IP phones then they can be used whether the PBX is local or not. It is certainly worth taking case over evaluating IP phones, though, as there appears to be great variation in quality and interaction with different PBX’s.

For an internal PBX, you can spend a lot of money on a system from one of the market leaders. I know of one 100-person company that was quoted in the region of £140K for a system, and that kind of cost is difficult to justify in terms of Return On Investment. However, there are alternatives, one of which is an open-source PBX called Asterisk, which will be the subject of part 3 of this series of articles. Don’t go away!

Who sets the standard?

I read an article by Davey Winder on the ITPro website today about the recent announcement by IBM that it’s Sametime server will support both the XMPP and SIP/SIMPLE instant messaging protocols, out of the box, allowing free access to interoperability with Yahoo, AIM and GoogleTalk users. This is, apparently, set to create the world’s largest business IM community.

However, the article bemoans the absence of Microsoft-based IM users

Not so great if you happen to be a user of MSN Messenger or Live Communication Server though, as IBM has not included Microsoft in its chat strategy.

Now anyone who has read this blog will know that I have a background in Lotus Domino consulting and have voiced criticism of Microsoft’s marketing strategies. That may be construed as bias, but I prefer to consider myself selective.

Anyway, I would like to point out one fact that seems to have been overlooked by Mr Winder. Microsoft are carrying out their usual strategy with open standards, in this case the SIP/SIMPLE standard adhered to by the other IM players mentioned above. That strategy can be summarised as embrace, extend and extinguish. There is an initial show of welcoming the standard with open arms, followed quickly by MS-specific extensions that are most definitely non-standard resulting in the creation of a closed and proprietary ’standard’ where Microsoft dictates what goes, and always to it’s own benefit.

Bearing that in mind, I believe IBM are perfectly right to open up Sametime to standards-compliant IM systems. If Microsoft wants to join in, then let it do exactly the same, and without charging it’s users as it does now. After all, why should IBM have to open it’s product up to a non-standard competitor ? In the short term it may be beneficial, but in the long term it most certainly isn’t.

PC Licencing?

The Ferris Research blog carries a story about a woman in Denver (Colorado) who had a visit from the local Sheriff’s office to forcibly remove her PC. Why? Because Ms Winkler’s PC had been infected and been used to make fradulent purchases online.

This got me thinking. Should we require people to have a licence to own a PC? After all, in the wrong hands it can be used to cause a lot of damage to businesses and reputations, and inflict a lot of inconvenience on the general public if used to distribute spam. Licencing puts PC’s in the same category as cars and guns (in those countries where you can still buy one) which may be overstating it’s capacity to cause actual physical harm, although I’m sure it would hurt a bit if dropped on your head! But requiring a licence may cause people to think twice about leaving it wide open for use as a spam relay or bot.

In reality it isn’t going to happen. For a start it would need to happen world-wide to be effective. But it was an interesting thought :)

IT - it’s all a blur

IT is changing.

“What’s new there?”, you say. “IT is always changing. It sometimes seems at though it deliberately changes every 6 months in order to extract more money from me to keep up to date.”

I sympathise. Really, I do. From my side of the fence it can be really frustrating to see something that has taken years to put together have a shelf-life measured in months. The sheer pace of innovation and change is breathtaking, and concerning. In what other arena would you try to create something so big and complicated and then rip it down so quickly afterwards. Some of the software that is put together these days rivals skyscrapers in the amount of man-days required to create, and yet in 5 years time it will be obsolete. Weird.

But there is a change taking place. Software is becoming more self-service. “You need a calendar, sir? No problem, here you go. And a portion of mapping on top of that? No problem.” A lot of this is happening on the web in the form of Web 2.0 applications, although there is quite a way to go in improving the inter-operability of these services. You may have heard of Service Oriented Architecture (SOA), which is a framework that, in time, should get us closer to the goal of seamless integration between the pieces of software that we decide best meet our requirements.

As this enviroment comes together, it is noticeable that there is a much greater opportunity for non-developers to put relatively complex systems together. In essence, the distinction between an IT person and an end-user or power-user is blurring. Anyone, in theory, can develop a system using tools available on the web without needing the technical expertise of a developer. I’m sure we’ll see a lot of people ‘dabbling’ as the tools develop.

However, I would argue that you should utilise the knowledge and expertise of an IT consultant if you want to create something sustainable. It’s probably not the done thing to refer to the same post in two successive blogs, but Joel Spolsky’s take on Lego Programming is a good lesson from someone who really knows his stuff. Returning to the skyscraper analogy, if you don’t design it right from the start, then it’s bound to come crashing down around your ears.

I’m sure there will be many people wondering if it’s a good thing to give application development capabilities to end users. However, that has been with us for many years. How many people do you know who have created, sometimes quite complex, systems using Excel or Access? In my particular area of experience, Lotus Notes, the ease at which a new application can be created from a template and then tweaked to a person’s requirements has allowed power-users to solve problems without having to go through the usually complex and time-consuming process of requesting a new solution from their IT department. And, truth be told, it’s a means of involving the user more closely in the IT decision-making process, a topic Kevin Pettitt blogs about today.

So IT is opening itself up more and more. Of course you’ll still have developers who create the wonderful tools everyone will be using to solve their problems, but in-house IT developers will be under pressure as end-users create their own solutions. The only answer is to join them, and use your skills to influence how the solutions are created. Better gloss up your consulting skills!

Share your data - part 2

Strange, isn’t it. One day you talk about sharing your data as the next ‘big thing’. The next day you come across a pretty mature web-based app that does it already and pretty much blows your mind away. I’m referring to Dabble DB, which allows you to set up pretty simple database apps in a Web 2.0 environment, and does it very well indeed.

A couple of thoughts occurred to me whilst watching the very impressive demo:

  • Whilst Dabble is extremely slick, the basic principles of what it is doing are very familiar to anyone who’s developed in Notes/Domino over the last 10+ years. Shows how good Ray Ozzie’s concept really was.
  • Web 2.0 is now bringing us many, many building blocks (databases, spreadsheets, etc.) in addition to a number of well-formed applications. However, a post by Joel Spolsky entitled Lego Programming is a very relevant reminder that the challenge with development is in the initial specification rather than the actual building of the thing. In other words, make sure you know exactly what you want before you dabble :)

Share your data?

People are sharing lots of things online these days. This blog is a prime example of me sharing my knowledge and expertise on IT (what little of it there is) with the wider community. Wiki’s, such as Wikipedia, are another great example of this. People also share photographs (see Flickr as a leading example) online too, sometimes photos that you would think are quite personal. But, would you, as a company, share your data?

Well, why not? OK, you’d probably want to hang on to some of it, your sales per customer, that sort of thing. But I’m sure there’s a load of data sitting in your network that you wouldn’t have a problem  sharing and that would be useful to someone else. And it’s that expectation that’s driving a new site called Swivel.

But why would you freely give up something that you’ve spent time and money acquiring? Well, like every single blogger, it’s really about publicity…telling everyone that you have a unique skill-set, and here’s an example of it. So if your company is know for producing widgets, then publicising how many widgets you’ve sold is a means of saying “Look how good our widgets are, lots of people buy them!”.

Vista is here

…and yet, there’s something different about this particular release of Microsoft’s latest and, supposedly, greatest. For a start, I only knew about the release on the day itself as I was trawling through my RSS feeds. Hardly the months of anticipation that greeted XP. And then there’s the reaction of the business community which could only be described as ambivalent at best. On launch day a number of companies stated they had noimmediate plans to move to Vista, and would only consider it when the desktop hardware comes up for renewal. Sounds business sense, of course, but I’m sure Microsoft were hoping for a few companies to state that they were migrating to Vista with all due haste.

I’m sure, in time, Vista will be a successful desktop OS, assuming you measure success purely in terms of number of seats. But don’t forget that many business PC’s will come preloaded with an OEM Vista install. For me, the big change in Vista appears to be the flashy, graphic-intensive Aero desktop, and that kind of sums up the whole thing….flashy and nice to look at, but underneath nothing much has changed.

As an aside, I wonder if the much-publicised issues with Vista over the last two or three years, including the scrapping of WinFS, are an indication that MS are coming up against a natural boundary in the size of a software project? Maybe the whole damn thing’s just too big to be feasible?

Posted in News. No Comments »

More than just a bit of software

The people who use Lotus Notes and Domino, or sell associated services, are not your typical bunch of software users. They are what I can only describe as a community, a global village. A village that I have lived in (or at least on the outskirts thereof) for many years now.

But every so often then togetherness of this village of people retains the capacity to surprise me, to demonstrate that, in common with real villages, it is made up of people who are not just associates, but rather very good friends. To illustrate this, have a look at a recent post on the widely read blog of vowe (Volker Weber). In a matter of hours, vowe was able to raise over £1,000 to buy a Macbook for the creator of DominoWiki, Ben Poole. This was as a sign of the gratitude of the community to someone who has poured heart and soul into a very impressive but, as it is open source, not commercially profitable piece of software. Ben’s a bit flabbergasted, which says volumes for his modesty !

Now just have a little think about what it would mean to have a member of such a passionate community providing services for your company. You’d know they care about the solution they provide you with, wouldn’t you!