Jump to content


< Back to Forum


 

Integration a PBX with Inband signaling


  • Please log in to reply

#1 SupportTeam 30 January 2003 - 01:12 PM

> My PBX manual says it uses Inband signaling to communicate with any voicemail system.
> What configuration do I need to do in voicemail to integrate both?

Do you know what information is sent from your PBX? You will need to find out this first so tht you can tell VoiceGuide how to read and interpret the incoming information.

Inband Signaling is supported in v4.8.40 onwards.
Below is from VoiceGuide Help file.

****************************************

VoiceGuide can be configured to read inband siganlling and make use of this information to for example route calls to the right voicemail box like in your case.

It's a bit complicated if you are doing this for the first time - and I can create a configuration file for you if you could forward your PBXs inband signalling specs to support@katalina.com.au

Blow is the excerpt from VG Help file which describes Inband signalling. You must use VG 4.8.40 or later to use inband signalling.

VoiceGuide can be configured to detect Inband Signaling sent by the PBX at the beginning of the call and make this information available to scripts as Result Variables.

To enable inband signaling an “Inband Signaling Definition File” needs to be created. This file defines what Inband Signaling we can expect to receive form the PBX and how it should be interpreted.

Creating an Inband Signaling definition files requires precise knowledge of what PBX will send in various circumstances. When creating or modifying any Inband Signaling definition files for your switch we’d recommend contacting support@katalina.co.au to verify correctness of the file.

An example file is quoted below. Comments within the file explain the purpose of the “Pattern” and “RV” entries.


; Inband Signaling definition file for:
; Siemens HiPath 3000 v1.2
;
; Each Inband Signal definition entry consists of two lines: Pattern and RV
;
; Pattern :
; Any string expression conforming to the pattern-matching conventions described in
; Visual Basic for Applications LIKE operator pattern definition.
; Used to match the incoming Inband Signalling data.
;
; RV :
; VoiceGuide Result Variables extracted from the matched Inband Signalling stream
; multiple RV's are specified using 3 fields per RV:
; 1. Name
; 2. Start Postion
; 3. Length
;
; Result Variables extracted
; List of Result Variables extracted using this definition file:
; Inband_TOC = Type of call (TOC)
; Inband_Calling = Calling party
; Inband_Called = Called party
; Inband_Info = Additional calling party information
;
;5 digit station numbers, forwarded call
Pattern=***???????????*[1-4]
RV=Inband_TOC,4,1,Inband_Calling,5,5,Inband_Called,10,5,Inband_Info,17,1
;
;5 digit station numbers, direct call
Pattern=***??????*[1-4]
RV=Inband_TOC,4,1,Inband_Calling,5,5,Inband_Called,10,0,Inband_Info,11,1



When using the file above the following Result Variables will be available to the script:

$RV[Inband_TOC]
4the character sent

$RV[Inband_Calling]
5 characters starting from position 5

$RV[Inband_Called]
In case of forwarded call the 5 characters starting from position 10, or an empty string case of a direct call

$RV[Inband_Info]
Last character of the data string.


The “Pattern” entries are defined according to the rules Visual Basic for Applications LIKE operator pattern definition, major part of which is quoted below:


Selecting “Inband Signaling Definition File”

To indicate that a particular “Inband Signaling Definition File” is to be used by the system the full path to the file must the specified in the VG.INI file, section [PBX], entry InbandSignalConfig. Eg:

[PBX]
;Inband signalling configuration file
InbandSignalConfig=InbandSignaling_SiemensHiPath3000_v1.2.txt



Inband Signaling Call Answering and Timings

If Inband Signaling is defined, VoiceGuide will answer the call immediately when the call arrives and will then wait for up to 5 seconds for DTMF tones to arrive. Maximum time between successive DTMF tones is 0.5 seconds. Once DTMF signaling stops VoiceGuide will perform the pattern matching and start running the script

If Inband Signaling does not arrive within 5 seconds of answering the call VoiceGuide will start running the script and the Result variables which would have been defined as a result of any pattern matches will be left undefined.

The 5 sec / 0.5 sec timeouts were found to be suitable for most systems, please contact support@katalina.com.au if other timeout lengths are needed.


Signal Patterns Definition

The pattern-matching features allow you to use wildcard characters, character lists, or character ranges, in any combination, to match strings. The following table shows the characters allowed in pattern and what they match:

Characters in pattern
Matches in string

?
Any single character.

*
Zero or more characters.

#
Any single digit (0–9).

[charlist]
Any single character in charlist.

[!charlist]
Any single character not in charlist.


A group of one or more characters (charlist) enclosed in brackets ([ ]) can be used to match any single character in string and can include almost any character code, including digits.

Note To match the special characters left bracket ([), question mark (?), number sign (#), and asterisk (*), enclose them in brackets. The right bracket (]) can't be used within a group to match itself, but it can be used outside a group as an individual character.

By using a hyphen (–) to separate the upper and lower bounds of the range, charlist can specify a range of characters. For example, [A-Z] results in a match if the corresponding character position in string contains any uppercase letters in the range A–Z. Multiple ranges are included within the brackets without delimiters.

The meaning of a specified range depends on the character ordering valid at run time (as determined by Option Compare and the locale setting of the system the code is running on). Using the Option Compare Binary example, the range [A–E] matches A, B and E. With Option Compare Text, [A–E] matches A, a, À, à, B, b, E, e. The range does not match Ê or ê because accented characters fall after unaccented characters in the sort order.

Other important rules for pattern matching include the following:

An exclamation point (!) at the beginning of charlist means that a match is made if any character except the characters in charlist is found in string. When used outside brackets, the exclamation point matches itself.
A hyphen (–) can appear either at the beginning (after an exclamation point if one is used) or at the end of charlist to match itself. In any other location, the hyphen is used to identify a range of characters.
When a range of characters is specified, they must appear in ascending sort order (from lowest to highest). [A-Z] is a valid pattern, but [Z-A] is not.
The character sequence [] is considered a zero-length string ("").
In some languages, there are special characters in the alphabet that represent two separate characters. For example, several languages use the character "æ" to represent the characters "a" and "e" when they appear together. The Like operator recognizes that the single special character and the two individual characters are equivalent.

When a language that uses a special character is specified in the system locale settings, an occurrence of the single special character in either pattern or string matches the equivalent 2-character sequence in the other string. Similarly, a single special character in pattern enclosed in brackets (by itself, in a list, or in a range) matches the equivalent 2-character sequence in string.

Signal Patterns Examples

In the example file shown above the pattern:

***???????????*[1-4]

specifies a string which has a total length of 16 characters, beginning with “***” followed by 11 characters, followed by another “*” and then followed by a digit between 1 and 4.

The pattern of:

***??????*[1-4]

specifies a string which has a total length of 11 characters, beginning with “***” followed by 6 characters, followed by another “*” and then followed by a digit between 1 and 4.

In the pattern definition we need to enclose “*” characters in square brackets, otherwise they would be interpreted as a special “Zero or more characters.” Indicator. The section Signal Patterns Definitions above has more information on how the various patterns can be defined.

Edited by SupportTeam, 12 February 2003 - 08:05 AM.


#2 Guest_cebsmando_* 05 February 2003 - 11:14 AM

Hi,

Could you explain a detail example base on a Nortel or Panasonic PBX?

thanks

#3 SupportTeam 05 February 2003 - 12:43 PM

Do you know what codes are sent by the PBXs that you would like to integrate with?

If you know them please post them here, or email them to support@katalinatech.com and will create the PBX Integration configuration file for you, which will allow you to use the Inband information sent by the PBX in your script...

#4 Guest_Carlos Jair_* 06 February 2003 - 01:37 AM

I´m evaluating your voiceguide software. I want it to recognize the extension number send for a basic panasonic PBX KT-308A which according to the manual only sends the extension number (101, 102, ...,117, etc) to the Voice Mail Port

what would be the pattern and RV in this case?

thanks.

#5 SupportTeam 12 February 2003 - 08:20 AM

Instructions for configuring VoiceGuide to read signals from Panasonic PBX KT-308A:


Step 1:

Create text file InbandSignaling_PanasonicKT308A_v1.0.txt in VoiceGuide's directory and copy the below into it:


; Inband Signaling definition file for:
; Panasonic PBX KT-308A
;
; Each Inband Signal definition entry consists of two lines: Pattern and RV
;
; Pattern :
; Any string expression conforming to the pattern-matching conventions described in
; Visual Basic for Applications LIKE operator pattern definition.
; Used to match the incoming Inband Signalling data.
;
; RV :
; VoiceGuide Result Variables extracted from the matched Inband Signalling stream
; multiple RV's are specified using 3 fields per RV:
; 1. Name
; 2. Start Postion
; 3. Length
;
; Result Variables extracted
; List of Result Variables extracted using this definition file:
; Inband_Extension = Extension number
;
;3 digit station numbers
Pattern=???
RV=Inband_Extension,1,3



Step 2:

Edit VG.INI's PBX/InbandSignalConfig section to read:

[PBX]
;Inband signalling configuration file
InbandSignalConfig=InbandSignaling_PanasonicKT308A_v1.0.txt



Thats it.

After restarting VoiceGuide the following Result Variables will be available to the script whenever VoiceGuide answers a call:

$RV[Inband_Extension]



Notes for developers:

Pattern=??? matches any 3 characters, and then RV=Inband_Extension,1,3 assigns the 3 characters starting at postion 1 to result variable $RV[Inband_Extension]

you are of course free to create your own text files for any new switches and set VG.INI to use them as described above. As this is one of the more complicatd parts of configuring VoiceGuide please post any questions you may have here and we will answer them for you.


NB:

Due to formating problems the orignal post in this thread from Jan 30 2003 did not display properly at first - the post was changed on Feb 12 2003 to display correctly.