Faxing the lost art

Despite Faxes slowly going the way of the Dodo, there are still some circumstances that require a fax machine.
We need to collect meter reading son a monthly basis form many of our customers.
Although we have tried to move all of our customers to email or automated recovery systems, there remain a few hundred that we still have to fax once a month.
For this, we use a Crystal report with an embedded fax number, using a special font, which the fax printer driver recognises.
However the software that we use for this is antediluvian, and we were running a Win2K VM to support it.
Now that we are moving to windows 2008 and a new domain structure, this will no longer be viable.
There are several windows solutions that could replace this, but we decided to try Hylafax, running on our backup server, which is idle much of the day.
The server is running Ubuntu server 10.04, and the process was quite simple, even though there were a few bumps on the road.

1. Install Hylafax.
sudo apt-get install hylafax-server


which asks various questions (area codes, etc), and then runs


which tests and sets up the modem device, in our case on ttys0.

sudo /etc/init.d/hylafax restart, and everything should be up and running.
The /var/spool/hylafax/etc/hosts.hfaxd file needs to be edited it manually, I found a default one on the web. The format is:
client:uid:passwd:adminwd (passwords should be encrypted)


# Hylafax Faxing Users

# Hylafax Faxing Hosts

First hiccup.
On testing it with a hylafax client, I got blank faxes

a swift Google later,I added the line

use2D: no

So now I could send faxes.
I was using Winprint Hylafax reloaded, but I could only send individual faxes or batches of identical ones.
Our customer faxes contain the customer’s name, account number, machines on site and a space next to each machine for the meter readings, so I needed a way of splitting the job into single pages, and extracting the fax number for each one.

Next step was to look for a simple way to do this.

I found a script called salsafax (an earlier version is called sambafax), by Mark Bennett, which is a perl script to allow Samba printing to Hylafax.

I installed CUPS, perl and psutils

sudo apt-get install perl
sudo apt-get install cups
sudo apt-get install psutils

I also needed the perl modules
perl module Getopt-Long-2.32
(.deb libgetopt-long-descriptive-perl)
perl module Mail-Sendmail-0.78
(.deb libmail-sendmail-perl)

I copied salsafax to the /usr/lib/cups/backend directory, and changed the permissions
sudo chmod 755 salsafax.pl

I added the line:

Filedevices Yes

to /etc/cups/cupsd.conf near the top of the file.
(it is recommended to remove this after creating the printer configuration, as it is a security risk).

Then I created a printer

sudo lpadmin -p SalsaFax -E -v salsafax.pl:

and restarted cups.
now I could print a file to hylafax, but it was still a single fax

I then installed another perl script called pipe by Jiri Srain of Suse ( I tried a later, bash script by Johannes Meixner, but it failed for some reason that I could not fathom)  this pipes print input to a command.

I added it to the cups/backend directory, and

chmod 755 pipe

I then wrote a script, I called pssplitter, which uses psselect to split the print file into pages, then prints them to Salsafax, which in turn sends them via Hylafax.

and added another printer

sudo lpadmin -p Piper -E -v pipe:/usr/lib/cups/backend/pssplitter.sh

After a few false starts, pssplitter worked fine, except it seemed the maximum number of jobs it could send was 50.

This was cured by editing the /etc/cups/cupsd.conf file line

MaxJobs 50  to read
MaxJobs 400

I now print the Crystal report to a postscript printer on the local PC, and it is split into single pages and then faxed.
Other notes:
In a complex page, Salsafax can fail to detect the fax number (formatted as  Fax-Nr. : ), so it is a good idea to place the fax number at the top of the page. If you don’t want it to be visible on the fax, set the font colour to white, it will still be detected.

psselect may not  be the best solution, as it has to parse the file repeatedly, but it works.

We use Webmin a lot, so I installed the Hylafax server Webmin Module to monitor the queues.
the perl modules were installed from the webmin

Final Hiccup, Hylafax has a “Killtime” of 3 hours.

corrected this by adding

KillTime: “now + 7 days” to /etc/hyla.conf

Many thanks to those in the forums that I extracted the relevant information from.


Remote control final post

Well, we did have some issues with NTR Pro struggling to connect 2 out of 3 times, (we had trialled the  Ultimate version, not Pro) but they turned out to be due to the Physical quality of our ADSL line.

We moved last week to an LLU connection, so now we go through a new Line, and third party switches at the exchange.

End of packet fragmentation issues!

NTR pro now works well, nice and responsive, and the authentication issues have disappeared.

Our VPN should work too, will try it out when I get back from holiday.

Remote control software decision

Well, we have signed up today with NTR for their pro package, got an “end of the month trying for sales target” price for our first year’s subscription.
Their package is good, and we got a good price. the software is simple to use, and optimises graphics for the speed of the link.
We did also get the free and excellent VNCSC working, but this solution is more flexible, we don’t need ports open in the firewall, we can use it from any location, we just need to use one username and password for all techs, and it is unlikely that we will need more than one operator logged in at a time.
This is fine for our situation, we do not need a full time support app, and we may only use this once or twice a week. (although the “stay connected” sessions may be useful for monitoring servers)

Remote control software part 3

Well, Bomgar turns out to need the purchase of a “Bomgar box” ( missed that, thought it was an option).
The various solutions out there have a bewildering array of pricing methods, by the minute, day, month or year, one-off purchase to run on your own server, and the prices vary wildly from $200 to $1300 per year, for example, while most of them settle around $50 per month per user.

Most of the pricing models are based on a per user price, although some do offer concurrent licenses.

But they all seem targeted at larger companies in general, while there are “free for personal use” offers.
It also quite difficult to discover the price of some of them.
Quite ironic really that the software industry is so bad at exploiting the web “click to buy” culture.

Remote support software part 2

Well tried NTR, Bomgar, Crossloop, and UltraVNC so far.
NTR and Bomgar are very similar, nice interface, not too much lag, not seen the pricing on Bomgar yet.

Crossloop appears much faster, but involves both parties creating an account and downloading software, not really ideal.
UltraVNC with “SingleClick” seems like a nice free solution, but it is a little more complex to set up (port forwarding, configuring the MD5 key, etc) However, it produces a nice branded “one-shot” server, and deletes itself afterwards, which I found attractive.
We could also set it up in repeater mode, with a server in the DMZ, to avoid direct PFs through the firewall.

Found a package called “4remotesupport” which seems to use UVNCSC as the underlying structure, based in America, with an intermediate server. Better pricing.

Will try that after the weekend.

Remote support software step one

Well, started out with a free 14 day trial from NTR.
Looks nice, seems simple to use, will see how it works out.
BOMGAR is probably next.

There really do seem to be a lot of these apps out there!

One I found, (which is really more suited to home users) was Crossloop based on VNC protocols, both ends need a free Crossloop account, and link in at the same time, but it was really very fast.

Also found UltraVNC’s Singleclick addin, which needs a little preparation, but looks like a nice single shot solution.
Effectively, you get the end user to download a custom single use secure VNC server, which only connects back to your VNC viewer, and deletes itself after the session, will be trying that out tomorrow.

These solutions are Windows only for now, though, and ideally, we would like to be able to support Linux and Mac as well, with one app.

Which remote support software?

We are now considering implementing remote support for our customers.
As the Copier industry finally shakes the last of the Analogue dust from its shoes, software support is becoming a critical requirement.
Until now we have managed well with phone, email and on site visits, but it is becomng increasingly obvious that we need a remote support function.
Another deciding factor has been the apparent maturation of the remote support software market.
As we are not the largest of companies, the cost will be an important factor, and as we deal with a wide range of customers, cross platform support is another.
Ideally, we would like a browser based solution which allows interaction without installation on the remote PC, but ActiveX is not an option.

The Cabrio is back!

 Well, Megan is back, and the horrid little Ka is back in Plymouth, where it belongs.
Excellent end to the Polperro festival, The rolling Clones on big green on saturday, followed By the Gumbo Flyers on Sunday, then Tom Palmer outside the Crump.
Comfortable journey back on Monday.
Then Busy week, ended running cables to new office for “E-commerce” department.

This weekend went to eldest daughter’s, Grandson’s PC running Win7 trial, seems to work well enough.
It recognised and set up the microphone for the cheap PCWorld webcam, but no video.
Took a chance and tried installing the XP drivers.. they worked fine!
Maybe that says something about what’s really under the hood of Win7?

And so it goes

Friday, finished off what I could. New conundrum:
Customer has 40 fax lines. wants to reduce the lines, but each dept needs (wants, really) it’s own incoming fax number.
Suggested suffixing,  not an option.
So how?
Only suggestion I can come up (other than suffixing, or using incoming OCR to read the headers) with is fax forwarding to email address, but that means someone has to sort the faxes. Not going to be popular with whoever gets landed with that!
Lost my damned magic wand 😦

Spent 2 hours tryingto get one of 3 possible machines to produce a folded stapled a5 booklet with a card cover.
abandoned trying to print the colour cover at the same time then found that the interposer on one (brand new) machine didn’t work! Tried installing latest firmwares, no go. Booked hardware engineer callout, and turne dto the third machine which worked, thank goodness.

Drove down to Cornwall, late, hit debris from an RTA pile up entering Plymouth about 11.00, both offside tyres punctured, really lucky that no more severe damage to car. RAC Recovery truck and loan car got us to the house. Sleep about 4:30 dog tired.

Phoned up this AM, both offside wheels are damaged beyond repair, rims buckled where they hit whatever it was in the dark at 50MPH.
Amazing that the tyres didn’t blow out really, just lucky, I guess .

The week roars on

Well, Wednesday, and the day started with a software issue in Worcester, the recall to complete the install in Stratford (ended up using scan to email, which the customer actually preferred!- there is a packet fragmentation issue with SMB by the look of it), a Print audit in Rugby, a Print driver losing it’s preset Icons in Coventry, and finally back to the office and the dead FTP server.
Setting up a relay FTP server in the DMZ SHOULD be a trivial job, except – I didn’t build this one, and there is no documentation, thanks to the guy on holiday 😦
Faffed around trying to revive the old box, but no go.
Took a chance and swapped the hard drive into another old box with a Gigabyte chipset Mobo.
Result! -except the network card is now eth1 (hald), and I don’t know the admin password, so can’t change the IP address, tried all the usual suspects, but no go.
Out of time, going home.

This morning, reset the Ubuntu server administrator password, (note, NOT the root password) and logged in.
So easy to do when you have physical access to a Linux box!
Edited the  /etc/network/interfaces file
with VIM ( I hate that editor, and the Ubuntu version seems to have different settings for command modes etc, but couldn’t be bothered to install nano).
Restarted the Phantom process on the commonsense server, linked in- everything works.
Now to put the virtual users in place on the eeeBox, set up the file structure. AND DOCUMENT IT.
Tested out the Mythweb tool on my MythTV box at home, I had set everything up correctly, but forgot to tick “enabled” in the port forwarding on the router-Doh!
Cool, I can download or stream recordings or music across the internet. Will be great for next week, when we return to the daughter’s house (which is sans TV) to cat-sit while they are in France.
We may not need it, but if the weather turns bad, it would be nice to have our own taste in music available 🙂