У меня на телефон с андроидом, через blueman не получается отправлять файлы, нашлось решение в виде консольной программки ussp-push, которая позволяет отправлять файлы на телефон с андроидом.
Написал скрипт для spacefm, просто в меню инструменты создать новую команду прописать в качестве команды путь к скрипту.
Далее все довольно просто, выделяешь файлы мышкой, и в меню инструменты жмешь на команду, а далее появляется меню выбора найденных устройств, выбираешь устройство, и файлы отправляются.
Скрипт должен работать со всеми устройствами, где работает сервис Object Push (смотри вывод sdptool browse MAC-адрес)
Для работы использует пакет bluez утилиты hcitool для поиска устройств и MAC адреса и sdptool- для определения канала данного сервиса. Ну и собственно для диалога использует zenity. Про ussp-push, я упомянул выше.
Собственно сам скрипт.
#!/bin/sh
$fm_import
PWD=$(pwd)
i=0
while read file
do
MASS=($file)
MAC[$i]="${MASS[0]}"
NAME[$i]="${MASS[1]}"
i=$[i+1]
done <<<"$(hcitool scan)"
NUM=${#MAC[@]}
COMMAND=$(echo "zenity --list --title="Найдено"\
--column="Название"")
for (( i = 1; i < $NUM; i++ )); do
COMMAND="$COMMAND ${NAME[$i]}"
done
VARIANT=$($COMMAND)
if [ "$?" -eq "1" ] ; then exit 0
elif [ "$VARIANT" == "" ] ; then exit 0
fi
for (( i = 1; i < $NUM; i++ )); do
if [ "$VARIANT" == "${NAME[$i]}" ] ; then
MAC_ADD="${MAC[$i]}"
fi
done
z=0
while read file
do
if [ -n "$(echo $file|egrep "Service Name: Object Push")" ] ; then
z=1
fi
if [ "$z" -eq "1" ] ; then
if [ -n "$(echo $file|egrep Channel)" ]; then
z=0
CHAN=($file)
fi
fi
done <<<"$(sdptool browse $MAC_ADD)"
fileexpr(){
for (( i = 0; i < ${#fm_files[@]}; i++ )); do
DD="${fm_files[$i]}"
DD="${DD//$PWD\//}"
ussp-push "$MAC_ADD@${CHAN[1]}" "$DD" "$DD" ;
sleep 1s
done
}
fileexpr >/dev/null