vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
Сегондя наконец собрался и выложил то, что за отпуск написал на тему btcli. В общем-то - крайне мало. Только новая версия btpasskey.

Но зато завел для btcli CVS-репозиторий для btcli.

Новая версия btpasskey умеет следующее:
1. Для компиляции не нужна libbluetooth - все делается черед D-Bus API hcid
2. Оно умеет на время своей работы включить адаптер в discoverable mode
3. Оно умеет инициировать процесс pairing с указанными устройством (правда, только по адресу. Библиотеку для резолвинга имен в адреса пока не написал)
4. Оно умеет удалять бондинг с указанным устройством. Что бывает полезно, потому что некоторые устройства не могут нормально провести процесс спаривания, если они когда-то были спарены с данным компьютером, а потом спарены с другим и в результате забыли ключ. А компьютер его помнит.
Upd: Народ, посоветуйте, а как себя должен вести btpasskey -d если в момент его запуска ни одного bluetooth адаптера не обнаружено
1. Внятно ругаться и завершаться.
2. Внятно ругаться и работать так же как без -d (то есть ждать запроса на ввод passkey не пытаясь переключать режимы адаптера
3. Ловить сигнал DefaultAdapterChanged, и по появлении адаптера переключать его в режим discoverable.

Date: 2008-07-28 09:26 am (UTC)
From: [identity profile] t-mike.livejournal.com
должен отрабатывать 1 вариант, а для 3 хорошо бы ключик добавить

Date: 2008-07-28 10:35 am (UTC)
From: [identity profile] mikhailian.livejournal.com
согласен, должно работать как в 1.

Date: 2008-07-28 02:20 pm (UTC)
From: [identity profile] mikhailian.livejournal.com
Можно я отвечу развёрнуто?

Во-первых, замечание по названию программы. С "bt" начинаются названия клиентов bittorrent, bittornado и иже с ними. Кроме btscanner, все остальные утилиты bluetooth начинаются с "blue". Соответственно, через час после установки моя первая реакция была напечатать blue<Tab><Tab> и посмотреть, как же называется та программа, которую я недавно установил.

Во-вторых, программа должна по умолчанию рапортовать об отсутствии адаптера. Например, у меня в ноутбуке встроенный адаптер отключен по умолчанию для продления жизни батареи. Если программа мне не сообщит о том, что адаптер отсутствует, я и подавно не вспомню, что его отключил.

Вот сегодня утром я запустил btpasskey с ключом -d, но тем не менее не сразу вспомнил, что надо активировать адаптер. Если программа не завершится, то на сообщение об ошибке я обращу ещё меньше внимания, приняв его за информационное сообщение.

Так что по-моему программа должна завершаться с -d и без него. Для режима ожидания ей лучше придумать новый ключ, например, -w.

Date: 2008-07-28 03:16 pm (UTC)
From: [identity profile] mikhailian.livejournal.com
Автор-барин, юзверь -- король.

Насколько я понял, целевая аудитория программы -- айтишники, использующие её в целях скриптования. В первое знакомство с такой программой айтишник проверит её работу из командной строки. В зависимости от результата -- начнёт использовать, либо забудет. Так вот, это первое использование имхо и стоит сделать наиболее интуитивно-понятным.

Почему сидение в режиме ожидания без опции -w не понятно? Да потому, что пользователь не знает, что она не просто сидит, а ещё и ждёт событий от dbus. Вы усложнили процесс работы программы, не сделав его прозрачным для пользователя.

Взгляните на tail, он вызывается в режиме ожидание через опцию -f.


Date: 2008-07-28 09:51 am (UTC)
From: [identity profile] leschinsky oleg (from livejournal.com)
Почему CVS, а не Mercurial/Darcs или на крайний случай SVN?

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
1819202122 2324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 28th, 2025 06:28 am
Powered by Dreamwidth Studios