Discussion:
DTMF detection with AVM B1 controller
(too old to reply)
chris
2005-04-20 09:59:37 UTC
Permalink
Hello!

I have a problem with the DTMF detection on my B1 controller from AVM.
I get a correct FACILITY_CONF for my FACILITY_REQ but then I dont get
the expected FACILITY_IND after pushing keys.

So am I wrong on expecting FACILITY_IND or do I have another problem?

Thanks for your help,
Chris



Here is the protocol:

CAPI_GET_PROFILE: 0x0000 01:34:41:28
Controller 1
Profile:
01 00 02 00 39 00 00 00 1F 00 00 40 1B 0B 00 00 3F 00 00 80 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 01
00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00


CONNECT_REQ ID=002 #0x0000 LEN=0045 01:34:41:28
Controller/PLCI/NCCI = 0x1
CIPValue = 0x1
CalledPartyNumber = <80>202
CallingPartyNumber = <00 80>306
CalledPartySubaddress = default
CallingPartySubaddress = default
BProtocol
B1protocol = 0x1
B2protocol = 0x1
B3protocol = 0x0
B1configuration = default
B2configuration = default
B3configuration = default
BC = default
LLC = default
HLC = default
AdditionalInfo
BChannelinformation = default
Keypadfacility = default
Useruserdata = default
Facilitydataarray = default

CONNECT_CONF ID=002 #0x0000 LEN=0014 01:34:41:29
Controller/PLCI/NCCI = 0x101
Info = 0x0

CONNECT_ACTIVE_IND ID=002 #0x00f8 LEN=0020 01:34:42:82
Controller/PLCI/NCCI = 0x101
ConnectedNumber = <00 80>202
ConnectedSubaddress = default
LLC = default

CONNECT_ACTIVE_RESP ID=002 #0x00f8 LEN=0012 01:34:42:82
Controller/PLCI/NCCI = 0x101

CONNECT_B3_REQ ID=002 #0x0000 LEN=0013 01:34:42:82
Controller/PLCI/NCCI = 0x101
NCPI = default

CONNECT_B3_CONF ID=002 #0x0000 LEN=0014 01:34:43:23
Controller/PLCI/NCCI = 0x10101
Info = 0x0

CONNECT_B3_ACTIVE_IND ID=002 #0x00f9 LEN=0013 01:34:43:23
Controller/PLCI/NCCI = 0x10101
NCPI = default

CONNECT_B3_ACTIVE_RESP ID=002 #0x00f9 LEN=0012 01:34:43:35
Controller/PLCI/NCCI = 0x10101

FACILITY_REQ ID=002 #0x00f9 LEN=0022 01:34:43:35
Controller/PLCI/NCCI = 0x10101
FacilitySelector = 0x1
FacilityRequestParameter = <01 00>F<00>F<00 00>

DATA_B3_IND ID=002 #0x00fa LEN=0022 01:34:43:46
Controller/PLCI/NCCI = 0x10101
Data = <ab ab ab aa aa aa aa aa aa aa>
DataLength = 0x800
DataHandle = 0x0
Flags = 0x0

DATA_B3_RESP ID=002 #0x00fa LEN=0014 01:34:43:46
Controller/PLCI/NCCI = 0x10101
DataHandle = 0x0

DATA_B3_IND ID=002 #0x00fb LEN=0022 01:34:43:60
Controller/PLCI/NCCI = 0x10101
Data = <aa aa aa aa aa aa ab aa ab ab>
DataLength = 0x800
DataHandle = 0x1
Flags = 0x0

DATA_B3_RESP ID=002 #0x00fb LEN=0014 01:34:43:60
Controller/PLCI/NCCI = 0x10101
DataHandle = 0x1

FACILITY_CONF ID=002 #0x00f9 LEN=0019 01:34:43:73
Controller/PLCI/NCCI = 0x10101
Info = 0x0
FacilitySelector = 0x1
FacilityConfirmationParameter = <00 00>

DATA_B3_IND ID=002 #0x00fc LEN=0022 01:34:43:73
Controller/PLCI/NCCI = 0x10101
Data = <ab ab ab ab aa aa aa aa aa ab>
DataLength = 0x800
DataHandle = 0x2
Flags = 0x0
Jochen Klein
2005-04-26 13:14:34 UTC
Permalink
Chris,
Post by chris
I have a problem with the DTMF detection on my B1 controller from AVM.
I get a correct FACILITY_CONF for my FACILITY_REQ but then I dont get
the expected FACILITY_IND after pushing keys.
So am I wrong on expecting FACILITY_IND or do I have another problem?
Well form what you wrote and according to the trace as far as I see DTMF
recogintion is switchen on and if DTMF is recogniced you schould get a
Facility_Ind(DTMF).
Are you sure the phone device youre testingwith is sendeing DTMF digit if
you press a key?
Have you listened to the B3 data? If DTMF is send by the phone device (but
just not recogniced by the controller/CAPI) you should be able to hear it at
least.

Regards,
Jochen Klein
www.servonic.com
chris
2005-05-02 14:02:14 UTC
Permalink
Post by Jochen Klein
Chris,
Post by chris
I have a problem with the DTMF detection on my B1 controller from AVM.
I get a correct FACILITY_CONF for my FACILITY_REQ but then I dont get
the expected FACILITY_IND after pushing keys.
So am I wrong on expecting FACILITY_IND or do I have another problem?
Well form what you wrote and according to the trace as far as I see DTMF
recogintion is switchen on and if DTMF is recogniced you schould get a
Facility_Ind(DTMF).
Are you sure the phone device youre testingwith is sendeing DTMF digit if
you press a key?
Have you listened to the B3 data? If DTMF is send by the phone device (but
just not recogniced by the controller/CAPI) you should be able to hear it at
least.
Regards,
Jochen Klein
www.servonic.com
Converting the b3 data to audio isn't implemented in the current program
state, but I'm sure that I would hear the tones.
After tracing a connection between the avm-application "FRITZ! fon" and
a telephone I noticed that the FACILITY_IND events were only send if the
telephone was the initiator of the call. Now it works the same way for
my application, but there are still no FACILITY_IND events when my
application is the initiator of the call.

Here is the trace with the telephone as initiator and sending "5":

Any suggestions what's wrong?



LISTEN_REQ ID=002 #0x0000 LEN=0026 05:51:43:56
Controller/PLCI/NCCI = 0x1
InfoMask = 0x0
CIPmask = 0x1fff03ff
CIPmask2 = 0x0
CallingPartyNumber = default
CallingPartySubaddress = default

LISTEN_CONF ID=002 #0x0000 LEN=0014 05:51:43:67
Controller/PLCI/NCCI = 0x1
Info = 0x0

CONNECT_IND ID=002 #0x041f LEN=0031 05:51:58:76
Controller/PLCI/NCCI = 0x101
CIPValue = 0x1
CalledPartyNumber = default
CallingPartyNumber = <00 80>202
CalledPartySubaddress = default
CallingPartySubaddress = default
BC = <80 90 a3>
LLC = default
HLC = default
AdditionalInfo = default

CONNECT_RESP ID=002 #0x041f LEN=0032 05:51:58:76
Controller/PLCI/NCCI = 0x101
Reject = 0x0
BProtocol
B1protocol = 0x1
B2protocol = 0x1
B3protocol = 0x0
B1configuration = default
B2configuration = default
B3configuration = default
ConnectedNumber = default
ConnectedSubaddress = default
LLC = default
AdditionalInfo
BChannelinformation = default
Keypadfacility = default
Useruserdata = default
Facilitydataarray = default

CONNECT_ACTIVE_IND ID=002 #0x0420 LEN=0015 05:51:58:98
Controller/PLCI/NCCI = 0x101
ConnectedNumber = default
ConnectedSubaddress = default
LLC = default

CONNECT_ACTIVE_RESP ID=002 #0x0420 LEN=0012 05:51:58:98
Controller/PLCI/NCCI = 0x101

.
.
.
.

FACILITY_REQ ID=002 #0x0422 LEN=0017 05:51:58:98
Controller/PLCI/NCCI = 0x101
FacilitySelector = 0x1
FacilityRequestParameter = <01 00>

FACILITY_CONF ID=002 #0x0422 LEN=0019 05:51:59:00
Controller/PLCI/NCCI = 0x101
Info = 0x0
FacilitySelector = 0x1
FacilityConfirmationParameter = <00 00>

.
.
.
.

FACILITY_IND ID=002 #0x0430 LEN=0016 05:52:04:71
Controller/PLCI/NCCI = 0x101
FacilitySelector = 0x1
FacilityIndicationParameter = 5

.
.
.
.

DISCONNECT_B3_IND ID=002 #0x0432 LEN=0015 05:52:04:71
Controller/PLCI/NCCI = 0x10101
Reason_B3 = 0x3301
NCPI = default

DISCONNECT_B3_RESP ID=002 #0x0432 LEN=0012 05:52:04:73
Controller/PLCI/NCCI = 0x10101

DISCONNECT_IND ID=002 #0x0433 LEN=0014 05:52:04:75
Controller/PLCI/NCCI = 0x101
Reason = 0x3490

DISCONNECT_RESP ID=002 #0x0433 LEN=0012 05:52:04:75
Controller/PLCI/NCCI = 0x101
Jochen Klein
2005-05-03 09:43:26 UTC
Permalink
Chris,

There is another difference but directions of call, I see in your traces.
Its the Controller/PLCI/NCCI parameter. In one case youre prviding the PLCI
as the PLCI on which DTMF recogintion shall be enabled, in the other case
youre provifing the NCCI (!) as the PLCI on which DTMF recognition shall be
enabled. Well DTMF recognition is based on PLCI regardless of the direction
of the call; well why should the call direction influence on which OSI
layer a functioanlity is placed?!?

Regards,
Jochen Klein
www.servonic.de
Post by chris
Post by Jochen Klein
Chris,
Post by chris
I have a problem with the DTMF detection on my B1 controller from AVM.
I get a correct FACILITY_CONF for my FACILITY_REQ but then I dont get
the expected FACILITY_IND after pushing keys.
So am I wrong on expecting FACILITY_IND or do I have another problem?
Well form what you wrote and according to the trace as far as I see DTMF
recogintion is switchen on and if DTMF is recogniced you schould get a
Facility_Ind(DTMF).
Are you sure the phone device youre testingwith is sendeing DTMF digit if
you press a key?
Have you listened to the B3 data? If DTMF is send by the phone device (but
just not recogniced by the controller/CAPI) you should be able to hear it at
least.
Regards,
Jochen Klein
www.servonic.com
Converting the b3 data to audio isn't implemented in the current program
state, but I'm sure that I would hear the tones.
After tracing a connection between the avm-application "FRITZ! fon" and
a telephone I noticed that the FACILITY_IND events were only send if the
telephone was the initiator of the call. Now it works the same way for
my application, but there are still no FACILITY_IND events when my
application is the initiator of the call.
Any suggestions what's wrong?
LISTEN_REQ ID=002 #0x0000 LEN=0026 05:51:43:56
Controller/PLCI/NCCI = 0x1
InfoMask = 0x0
CIPmask = 0x1fff03ff
CIPmask2 = 0x0
CallingPartyNumber = default
CallingPartySubaddress = default
LISTEN_CONF ID=002 #0x0000 LEN=0014 05:51:43:67
Controller/PLCI/NCCI = 0x1
Info = 0x0
CONNECT_IND ID=002 #0x041f LEN=0031 05:51:58:76
Controller/PLCI/NCCI = 0x101
CIPValue = 0x1
CalledPartyNumber = default
CallingPartyNumber = <00 80>202
CalledPartySubaddress = default
CallingPartySubaddress = default
BC = <80 90 a3>
LLC = default
HLC = default
AdditionalInfo = default
CONNECT_RESP ID=002 #0x041f LEN=0032 05:51:58:76
Controller/PLCI/NCCI = 0x101
Reject = 0x0
BProtocol
B1protocol = 0x1
B2protocol = 0x1
B3protocol = 0x0
B1configuration = default
B2configuration = default
B3configuration = default
ConnectedNumber = default
ConnectedSubaddress = default
LLC = default
AdditionalInfo
BChannelinformation = default
Keypadfacility = default
Useruserdata = default
Facilitydataarray = default
CONNECT_ACTIVE_IND ID=002 #0x0420 LEN=0015 05:51:58:98
Controller/PLCI/NCCI = 0x101
ConnectedNumber = default
ConnectedSubaddress = default
LLC = default
CONNECT_ACTIVE_RESP ID=002 #0x0420 LEN=0012 05:51:58:98
Controller/PLCI/NCCI = 0x101
.
.
.
.
FACILITY_REQ ID=002 #0x0422 LEN=0017 05:51:58:98
Controller/PLCI/NCCI = 0x101
FacilitySelector = 0x1
FacilityRequestParameter = <01 00>
FACILITY_CONF ID=002 #0x0422 LEN=0019 05:51:59:00
Controller/PLCI/NCCI = 0x101
Info = 0x0
FacilitySelector = 0x1
FacilityConfirmationParameter = <00 00>
.
.
.
.
FACILITY_IND ID=002 #0x0430 LEN=0016 05:52:04:71
Controller/PLCI/NCCI = 0x101
FacilitySelector = 0x1
FacilityIndicationParameter = 5
.
.
.
.
DISCONNECT_B3_IND ID=002 #0x0432 LEN=0015 05:52:04:71
Controller/PLCI/NCCI = 0x10101
Reason_B3 = 0x3301
NCPI = default
DISCONNECT_B3_RESP ID=002 #0x0432 LEN=0012 05:52:04:73
Controller/PLCI/NCCI = 0x10101
DISCONNECT_IND ID=002 #0x0433 LEN=0014 05:52:04:75
Controller/PLCI/NCCI = 0x101
Reason = 0x3490
DISCONNECT_RESP ID=002 #0x0433 LEN=0012 05:52:04:75
Controller/PLCI/NCCI = 0x101
chris
2005-05-09 14:14:25 UTC
Permalink
Hello Jochen!

you are right, there is a difference on using the NCCI. I also tried it
with a FACILITY_REQ after receiving the CONNECT_ACTIVE_IND (so there is
no NCCI) but the problem still exists.

There is something I also noticed: while I can hear the DTMF-tones on
the telephone when the application is the initiator of the call (with
not receiving FACILITY_IND), I only hear a cracking noise when the
telephone was the initiator (with receiving FACILITY_IND). To put it out
straight: for sure I can allways hear the DTMF-tones on the receiver
side (FRITZ!fon for example) when I push keys on the phone, but I only
hear them on the phone itself when the phone was the initiator of the call.
So am I right, that the DTMF-tones are allways mixed with the B3 data
and on one time the CAPI driver filters out the FACILITY_IND signals and
on another time it won't do it? Or are these signals send over the
d-channel?

Regards,
Chris
Post by Jochen Klein
Chris,
There is another difference but directions of call, I see in your traces.
Its the Controller/PLCI/NCCI parameter. In one case youre prviding the PLCI
as the PLCI on which DTMF recogintion shall be enabled, in the other case
youre provifing the NCCI (!) as the PLCI on which DTMF recognition shall be
enabled. Well DTMF recognition is based on PLCI regardless of the direction
of the call; well why should the call direction influence on which OSI
layer a functioanlity is placed?!?
Regards,
Jochen Klein
www.servonic.de
Loading...