BTMODE

Jun. 24th, 2008 12:36 am
vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
В процессе изысканий по проекту BlueTooth CLI написал в виде шелловского скрипта утилиту, которой мне крайне не хватало в etch и lenny - командно строчный скрипт, который позволяет посмотреть и установить статус bluetooth адаптера (в смысле, connectable он, discoverable или что). А то новые версии bluez стартуют адаптер в non-discoverable mode, и включить discoverability можно только через гномовский апплет.
Оказывается, dbus-send для этого вполне достаточно


set -- `getopt lha: "$@"`
if [ $? -ne 0 ]; then 
    echo "run $0 -h for help" 1>&2
    exit 1  
fi  
while [ "$1" != "--" ]; do
case "$1" in
-l) # List adapters
    dbus-send --system --type=method_call --print-reply --dest=org.bluez\
    /org/bluez org.bluez.Manager.ListAdapters|sed -n 's!^ *string "/org/bluez/\([^"]\+\)".*$!\1!p'
    exit 0
    ;;
-a) # get adapter from command line 
    shift
    adapter="/org/bluez/$1"
    shift
    ;;
-h) echo "Usage $0  [ -a adapter ] [ -l ] [mode]"
    echo "without mode argument lists mode for specified (or default) adapter"
    echo "with mode argument (one of connectable discoverable off) sets"
    echo "with -l list available adapters"
    exit
esac    
done
shift
if [ -z "$adapter" ];  then
    adapter=`dbus-send --system --type=method_call  --print-reply \
    --dest=org.bluez /org/bluez org.bluez.Manager.DefaultAdapter  |sed \
    -n 's/^ *string "\([^"]\+\)".*$/\1/p'` 
    [ -z "$adapter" ] && exit 1  
fi
if [ -z "$1" ]; then
    dbus-send --system --type=method_call  --print-reply \
    --dest=org.bluez $adapter org.bluez.Adapter.GetMode  |sed \
    -n 's/^ *string "\([^"]\+\)".*$/\1/p' 
else
    dbus-send --system --type=method_call  --print-reply \
    --dest=org.bluez $adapter org.bluez.Adapter.SetMode string:$1 |grep -v  "method      return"
    #|sed \
    #-n 's/^ *string "\([^"]\+\)".*$/\1/p' 

fi  


Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

May 2025

S M T W T F S
    1 2 3
4 56 7 8 9 10
11 12 131415 1617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 23rd, 2025 10:19 am
Powered by Dreamwidth Studios