From: Dave Leibold - view profile
Part of my work in the past the linking of a hotel PBX billing systems
to another system that bills the hotel guests. A hotel PBX can send
extension and called number data to a "call accounting system" which
determines costs of calls and which extensions get billed for these
calls. These costs can be billed to the guest manually, or
automatically to a "property management system" that maintains guest
billings and reservations.
In diagram form, a call accounting setup might look like this:
HOBIC data from carrier
|
|
v
+-----------+ SMDR +-----------------+ i/f +---------------+
| Hotel PBX | ------> | Call Accounting | <-----> | Hotel Billing |
+-----------+ +-----------------+ +---------------+
SMDR (Station Message Detail Recording?) data is sent from the PBX.
This is usually a typical RS-232 data line that sends extension and
calling data from the PBX (but usually doesn't receive data back).
HOBIC is a special hotel billing feature offered by the telephone
carrier to send data on calls placed from the hotel through the
carrier's long distance service. This data is normally sent regarding
operator-assisted calls, such as person-to-person, card, collect or
other special cases. This allows the hotel to bill for calls placed
through the operator where the charge is not apparent from the dialing
sequence (the operator call could be no charge to the hotel, as in the
case of a card or collect call, or it could be extremely expensive in
the case of a person-to-person call). Some call accounting systems
have a "HOBIC Merge" which combines both the HOBIC data and the SMDR
data so that all types of calls may be billed.
The call accounting unit will handle the rating of calls using data
supplied by rate diskettes or cartridges. If the hotel has a computer
system that bills guests, an optional interface (i/f) link will send
the data necessary to bill the extension, and thus the room and guest.
Such data is sent through a typical serial RS-232 connection.
SMDR data formats change from one type of PBX to another. The i/f
format can also vary, but one format common to most systems sends the
following from the call accounting unit:
001A XYZ 09/21 2345 13:45 0008 $002.45 905-034-2657 L
The 001A is a sequence number than increments with each new call report.
The XYZ is a site identifier that is common to the type of call
accounting system used, or set up according to the hotel name. It
remains constant within a hotel site.
09/21 is the date (21st September)
2345 represents the extension number that was dialed (not necessarily
the room number, as some hotels set up extensions so that rooms below
the 10th floor require a 7 plus the room number).
13:45 is the time of the call
0008 is the duration of the call (8 minutes in this case)
$002.45 is the cost of the call as calculated by the call accounting system
905-034-2657 is the dialed number, and the L following that is a flag
to indicate a local call (long distance usually doesn't have a flag,
except F to indicate an international call, perhaps).
The record is often sent down with a carriage return and/or line feed
ending the record, then the hotel system receiving a call record will
send an acknowledgement such as a control-F to indicate that the call
billing data was received at the other end; if there were errors in
the record data, a "negative acknowledgement" or "nak" is sent
(usually control-U) to order the call accounting system to send the
billing data again. A few systems will even add a checksum character
to improve data integrity. Some systems don't have the ack/nak at
all, meaning billing records could be lost if there are severe
transmission errors or if the property management system side is shut
down.
Systems that rate the calls at the hotel normally lack "answer
supervision" which indicates when the call is answered and billable
under regular long distance conditions. Thus, a hotel call accounting
system will usually take a "guess" as to when the call starts and
bill according to the guessed time on line. If the hook is off for a
few minutes, it's usually a good indication that a call is in
progress. Of course, if one rings a number and waits for 20 rings
without answering, there is a risk of a charge for getting no answer.
On the other hand, charges are missed if the system waits too long
before starting to charge. Offering hotels direct access to answer
supervision would eliminate such inaccuracies.
Dave Leibold