[Asterisk-Users] Chan_bluetooth and AudioGateway phone [long]

Leandro leandro at texnet.it
Wed Aug 3 08:52:12 MST 2005


Hello,
I start trying to use a USB dongle and a Bluetooth GSM phone to make GSM 
call with asterisk using the BLT channel provided by the GSM phone.
Unfortunately I get a "Everyone is busy/congested at this time" whenever 
I try to Dial("IAX2/****@****/2", "BLT/MotorolaLara/3474501***")
For sure I make some mistake in the configuration. Unfortunately I don't 
find any step-by-step guide to configure USB-Dongle + Asterisk + 
chan_bluetooth

What channel I have to use? If I try the following command as specified 
on the configuration file

/etc/asterisk# sdptool search --bdaddr 00:0a:28:83:a9:cf  0x111F
Class 0x111F
Searching for 0x111F on 00:0A:28:83:A9:CF ...
Service Name: Hands-Free voice gateway
Service Description: Hands-Free voice gateway
Service Provider: Motorola
Service RecHandle: 0x10007
Service Class ID List:
  "Handfree Audio Gateway" (0x111f)
  "Generic Audio" (0x1203)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 7
Language Base Attr List:
  ...
Profile Descriptor List:
  "Handsfree" (0x111e)
    Version: 0x0101

Maybe the channel 7? I have also the following channels available

/etc/asterisk# sdptool browse 00:0a:28:83:a9:cf
Browsing 00:0A:28:83:A9:CF ...
Service RecHandle: 0x0
Service Class ID List:
  "SDP Server" (0x1000)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "SDP" (0x0001)
Profile Descriptor List:
  "SDP Server" (0x1000)
    Version: 0x0100

Service Name: Dial-up networking Gateway
Service Description: Dial-up networking Gateway
Service Provider: Motorola
Service RecHandle: 0x10001
Service Class ID List:
  "Dialup Networking" (0x1103)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 1
Language Base Attr List:
...
Profile Descriptor List:
  "Dialup Networking" (0x1103)
    Version: 0x0100

Service Name: Voice Gateway
Service Description: Headset Audio Gateway
Service Provider: Motorola
Service RecHandle: 0x10003
Service Class ID List:
  "Headset Audio Gateway" (0x1112)
  "Generic Audio" (0x1203)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 3
Language Base Attr List:
...
Profile Descriptor List:
  "Headset" (0x1108)
    Version: 0x0100

Service Name: Hands-Free voice gateway
Service Description: Hands-Free voice gateway
Service Provider: Motorola
Service RecHandle: 0x10007
Service Class ID List:
  "Handfree Audio Gateway" (0x111f)
  "Generic Audio" (0x1203)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 7
Language Base Attr List:
...
Profile Descriptor List:
  "Handsfree" (0x111e)
    Version: 0x0101

Service Name: OBEX Object Push
Service Description: OBEX Object Push
Service Provider: Motorola
Service RecHandle: 0x10008
Service Class ID List:
  "OBEX Object Push" (0x1105)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 8
  "OBEX" (0x0008)
Language Base Attr List:
...
Profile Descriptor List:
  "OBEX Object Push" (0x1105)
    Version: 0x0100

Service Name: OBEX file transfer
Service Description: OBEX file transfer
Service Provider: Motorola
Service RecHandle: 0x10009
Service Class ID List:
  "OBEX File Transfer" (0x1106)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 9
  "OBEX" (0x0008)
Language Base Attr List:
...
Profile Descriptor List:
  "OBEX File Transfer" (0x1106)
    Version: 0x0100

On asterisk I have the following result:
*CLI> bluetooth show information
-------------------------------------------
       Version : $Rev: 38 $
   Monitor PID : 8487
     RFCOMM AG : Channel 1, FD 12
     RFCOMM HS : Channel 2, FD 13
        Device : hci0, MAC Address 00:10:60:A9:99:CA
-------------------------------------------

I try to use either channels, 3 and 7, but the result is the same, 
"Everyone is busy/congested at this time".
Here it is the result of the connection using channel 7

*CLI>  [AG] MotorolaLara < AT+BRSF=23
 [AG] MotorolaLara > +MBAN: Copyright 2000-2002 Motorola, Inc.
 [AG] MotorolaLara > +BRSF: 63
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CIND=?
 [AG] MotorolaLara > +CIND: ("Voice 
Mail",(0,1)),("service",(0,1)),("call",(0,1)),("Roam",(0-2)),("signal",(0-5)),("callsetup",(0-3)),("smsfull",(0,1))
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CIND?
 [AG] MotorolaLara > +CIND: 0,1,0,0,3,0,1
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CMER=3,0,0,1
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CLIP=1
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CGMI=?
 [AG] MotorolaLara > ERROR
 [AG] MotorolaLara > +CIEV: 5,4

note the ERROR during AT+CGMI=? command. However I patch the 
chan_bluetooth.c and get the correct answer:

...
 [AG] MotorolaLara < AT+CGMI
 [AG] MotorolaLara > +CGMI: "Motorola CE, Copyright 2000"
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CGMI
 [AG] MotorolaLara > +CGMI: "Motorola CE, Copyright 2000"
 [AG] MotorolaLara > OK
 [AG] MotorolaLara > +CIEV: 5,3

Command output:

*CLI> bluetooth show peers
BDAddr            Name       Role Status      A/C SCOCon/Fd/Th Sig
----------------- ---------- ---- ----------- --- ------------ ---
00:0A:28:83:A9:CF MotorolaLara AG   Ready       Yes -1/-1/0      Yes

Using the channel number 3 I get the same result:

[AG] MotorolaLara < AT+BRSF=23
 [AG] MotorolaLara > +MBAN: Copyright 2000-2002 Motorola, Inc.
 [AG] MotorolaLara > +BRSF: 63
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CIND=?
 [AG] MotorolaLara > +CIND: ("Voice 
Mail",(0,1)),("service",(0,1)),("call",(0,1)),("Roam",(0-2)),("signal",(0-5)),("callsetup",(0-3)),("smsfull",(0,1))
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CIND?
 [AG] MotorolaLara > +CIND: 0,1,0,0,4,0,1
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CMER=3,0,0,1
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CLIP=1
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CGMI
 [AG] MotorolaLara > +CGMI: "Motorola CE, Copyright 2000"
 [AG] MotorolaLara > OK
 [AG] MotorolaLara < AT+CGMI
 [AG] MotorolaLara > +CIEV: 5,5
 [AG] MotorolaLara > +CGMI: "Motorola CE, Copyright 2000"
 [AG] MotorolaLara > OK

Command output:
*CLI> bluetooth show peers
BDAddr            Name       Role Status      A/C SCOCon/Fd/Th Sig
----------------- ---------- ---- ----------- --- ------------ ---
00:0A:28:83:A9:CF MotorolaLara AG   Ready       Yes -1/-1/1121643440 Yes

If I try the following command, I can make the remote phone to ring and 
on the GSM phone display apperas the calling in progress.
*CLI> bluetooth sendcmd MotorolaLara "ATDT3474501***"
Sending AT command to MotorolaLara: ATDT3474501***
 [AG] MotorolaLara < ATDT3474501445
 [AG] MotorolaLara > OK
 [AG] MotorolaLara > +CIEV: 6,2

Any hint?

Thank you

Leandro



More information about the asterisk-users mailing list