Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - chenhongjuan

Pages: [1]
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
+-----------+  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

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,ugg schuhe 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

Thanks for explame.
Starting with version 0.6 (released 30 Aug 2005), Asterisk-MySQL driver allows to be configured to take billable extension from various sources and determine call direction from channels used to make the call.

Common steps
To configure driver properties following steps are necessary:
- open Configuration/PBX Communication page
- activate Driver tab
- select Asterisk-MySQL in the PBX Driver field
- check that there is Version 0.6 in the driver comments (in case it's not please download and install the latest version of the driver from our support site)
- activate Properties tab to get access to the driver properties

Configuring billable extension source
- to configure source of the billable extension 'Take billable extension from' field is used
- this field has 4 options:
  • Call Source - driver uses 'src' and 'dst' fields to fill user extension for outgoing and incoming calls
  • Channel - driver parses 'channel' and 'dstchannel' fields to extract user extension from there
  • Account Code - driver uses 'accountcode' field to fill user extension
  • Account/Source - driver uses 'accountcode' field to fill user extension. In case the 'accountcode' field is empty driver uses 'src' and 'dst' fields for this purpose

Configuring call direction
Driver determines call direction by examining the 'channel' and 'dstchannel' fields (this requires to setup which channels are connected to the PSTN, otherwise known as COs or Trunks in other PBXs). Knowing of what channel is connected to PSTN the driver decides of what is the call direction depending of whether PSTN appears in 'channel' or 'dstchannel' field. Thus before using the driver you need to list all channels connected to PSTN.

Driver uses a partial match when searching the channel names, i.e. it compares all symbols of the defined channel name against captured string from the string first symbol to the defined name length and ignores rest of the captured string, thus Zap/1-  will match Zap/1-1, Zap/1-2 etc. Trailing dash in the channel name pattern is necessary to avoid situations like when Zap/1 will match both Zap/1-1 and Zap/11-1. Exact pattern for channel names depends on the way your Asterisk reports the channels.

There are 2 options (2 places) to list these channels:
- CO/Trunk lines lookup table
- Driver settings on the Properties tab
Both options are equal and it's question of convenience which one you will choose (e.g. if you already have CO/Trunk lookup table filled you may prefer the 1st option).

Using CO/Trunk lines lookup table
- use Settings/Line Numbers page to fill and manage list of channels connected to PSTN
- in the driver settings (Configuration/PBX Communication Properties tab) select 'CO/Trunk table' in the Take PSTNs from' field
- every time you change something on the Settings/Line Numbers page you will have to reload the driver by opening Configuration/PBX Communication page and clicking the Save button there

Using the driver settings
- use Configuration/PBX Communication Properties tab to manage list of channels connected to PSTN
- select 'Driver Settings' in the Take PSTNs from' field, this enables PSTNs section at the bottom of the tab
- enter channel name in the New PSTN field in the section and press '>>' button to add the channel to the list; alternatively you may use <Ctrl>+<Enter> keys to add the channel
- select group of channels in the list using mouse and <Ctrl> and <Shift> keys and press '<<' button to remove channel names from the list
- after editing the list press Save button on the page to save the settings***censored*** gŁnstig

How can i configure reports so that it give me the costing for a given extension for a given period of time?
Pages: [1]