Отправляет email-рассылки с помощью сервиса Sendsay

bluetooth

Доброе время суток!

Кто-нибудь знает легковесные аналоги gnome-bluetooth и kde-bluetooth?

openobex и obexftp отказываются дружить с моим телефоном :(

Ответы:

On Sun, 5 Mar 2006 23:43:33 +0300
Ilia N Ternovich <tilli***@m*****.ru> wrote:

opd и ussp-push знаю.
А obexftp в сторону телефона всяко должен работать.
Можно порыться на freshmeat.net и sourceforge.net .

On Tue, 7 Mar 2006 04:43:57 +0500
"Dmitry V. Balabanov" <dm_***@b*****.ru> wrote:

Телефон - Motorola e398
У друга SonyErricson 700i прекрасно дружит. Тоже недоумевает над моим
телефоном :(

localhost ~ # obexftp -b
Scanning ...
Using 00:0A:28:45:DC:A7 398
Browsing 00:0A:28:45:DC:A7 ...
Channel: 9
Nothing to do. Use --help for help.

localhost tmp # obexftp -b 00:0A:28:45:DC:A7 -p Untitled-1.psd
Browsing 00:0A:28:45:DC:A7 ...
Channel: 9
Connecting...done
Sending "Untitled-1.psd"...\failed: Untitled-1.psd
Disconnecting...done

В телефоне, как не трудно догадаться кристально чисто :(

Запускаю из-под VMWare гостевую winxp, устанавливаю софт идущий вместе с
bluetooth dongle...
Вот тут немного поподробнее - вместе с брелком идет софт, который как раз и
пользуется openobex либами!!! И под виндой он прекрасно видит мой телефон,
кидает\скачивает файло и т.д.
Даже обидно как то становиться за OpenSource :)

Телефон напрочь отказывается общаться с этой весчью

On Tue, 7 Mar 2006 07:57:24 +0300
Ilia N Ternovich <tilli***@m*****.ru> wrote:

Про сонерик 700 подтверждаю.

Я где-то читал, что Motorola е398 любит только определенные типы файлов.
Причем все остальные просто игнорирует. Вы уверены, что psd ее формат?

Действительно, странное поведение. Тут надо рыть и может глубоко рыть. :(

On Tue, 7 Mar 2006 14:04:08 +0500
"Dmitry V. Balabanov" <dm_***@b*****.ru> wrote:

Я нашел возможное решение проблемы (и не только для моего телефона). Вмеcте с
obexftp идут несколько скриптов; один на перловке и ооочень интересного
содержания ( адреса подправлены для меня ):

#!/usr/bin/perl -w

use strict;
use OBEXFTP;

my $cli = new OBEXFTP::client($OBEXFTP::BLUETOOTH);

my $ret = $cli->connect("00:0A:28:45:DC:A7", 9);
print "$ret\n";

$ret = $cli->list("/");
print "$ret\n";
sleep 2;

[skip]

После выполнения скрипта (УРА!) выводится содержимое моего телефона в формате
XML:

<folder name="audio" size="0" type="folder" modified="19700101T000000Z"
user-perm="RW" />

<folder name="video" size="0" type="folder"
modified="19700101T000000Z" user-perm="RW" />

<folder name="picture" size="0"
type="folder" modified="19700101T000000Z" user-perm="RW" />

<folder name="MMC(Removable)" size="0" type="folder" modified="19700101T000000Z"
user-perm="RW" />

Соответственно телефоны, брелки и корпорация MS тут ни при чем. Проблема в том,
что ни у кого нет времени написать консольное приложение или шелл-скрипт для
работы без всяких gnomevfs или kde* ( сколько я не гуглил - все HowTo в один
голос говорят про gnome-bluetooth и kde-bluetooth ) Я бы с удовольствием
написал консольный клиент, но нужна помощь сообщества по освоению perl и
C++ :)

После внимательного
прочтения /usr/include/openobex/client.h и сопоставления со скриптом на
перловке возникли несколько вопросов:

0. use strict;
какой аналог у сей строчки на C++?

1. my $cli = new OBEXFTP::client($OBEXFTP::BLUETOOTH);
аналогичный вопрос ( хотя бы приблизительно - как вызвать оператор new из c++
программы? )

2. my $ret = $cli->connect("00:0A:28:45:DC:A7", 9);
ей я догадываюсь соответсвует строки из client.h:

int obexftp_connect_uuid(obexftp_client_t *cli,
/*@null@*/ const char *device, /* for INET,
BLUETOOTH */ int port, /* INET(?), BLUETOOTH, USB*/
/*@null@*/ const uint8_t uuid[], uint32_t
uuid_len);

#define obexftp_connect(cli, device, port) \
obexftp_connect_uuid(cli, device, port, UUID_FBS, sizeof(UUID_FBS))

если знать, как создается cli из пункта 1, то его легко можно задействовать в
этой и нижеприведенных функциях:

#define obexftp_chpath(cli, name) \
obexftp_setpath(cli, name, 0)

#define obexftp_mkpath(cli, name) \
obexftp_setpath(cli, name, 1)

#define obexftp_cdup(cli) \
obexftp_setpath(cli, NULL, 0)

#define obexftp_cdtop(cli) \
obexftp_setpath(cli, "", 0)

#define obexftp_get(cli, localname, remotename) \
obexftp_get_type(cli, NULL, localname, remotename)

int obexftp_put_file(obexftp_client_t *cli, const char *filename,
const char *remotename);

int obexftp_del(obexftp_client_t *cli, const char *name);

Соответственно останется только продумать интерфейс :)

On Tue, 7 Mar 2006 15:21:43 +0300
Ilia N Ternovich <tilli***@m*****.ru> wrote:

с

Я конечно не спец по перлу, но и так видно, что комманда

obexftp -b 00:0A:28:45:DC:A7 -B 9 -l /

у вас должна работать, раз этот скрипт работает.