В связи с установкой CarPC в автомобиль встала проблема вероятных пропусков звонков и SMS, т.к. музыка бумкает и ничего не слышно.
Набросал небольшую инструкцию, может, кому-нибудь пригодится.
С Bluesoleil пока не заморачивался, решил использовать какую-нибудь программу для уведомлений. После поисков остановился на
Android Remote Notifier. Для красивых уведомлений использовал
Growl for Windows. Также использовал
AutoIt.
Установка и настройка "Android Remote Notifier" на телефоне:- Устанавливаем AndroidNotifier-0.2.8.apk и запускаем его.
- Включаем Bluetooth, спариваемся с CarPC.
- Настройки "Remote Notifier":
- Запускаем сервис и включаем автозапуск сервиса.
- Способ уведомления - Bluetooth, выбираем устройство получателя (CarPC), ставим галку "Автоматически активировать Bluetooth".
- Отмечаем галками необходимые события для уведомлений.
Установка и настройка Growl на CarPC:- Устанавливаем и запускаем Growl.
- Открываем его из трея ("Open Growl").
- Останавливаем Growl переключателем на вкладке "General".
- На этой же вкладке ставим галку "Automatically start Growl at login".
- На вкладке "Security" ставим галку "Allow network notification", остальные галки убираем.
- При желании настраиваем звуки и внешний вид уведомлений по вкусу. Но я использовал воспроизведение уведомления из AutoIt-скрипта.
- Запускаем Growl переключателем.
Для использования своих мелодий уведомлений в Growl - их необходимо конвертировать в wav и скопировать в папку C:\Windows\Media.
Установка и настройка "Android Notifier" на CarPC:- Правим исходники и компилируем их.
- Получившиеся файлы Notify_Ring.exe и Notify_SMS.exe копируем в какую-нибудь папку на HDD/SSD. Например, в папку с iCarDS.
- Устанавливаем JRE 7u25 и MultiDroidNotifier-0.5.1-x86.exe.
- Запускаем "Android Notifier".
- Из трея открываем настройки ("Preferences...").
- Ставим галки "Start at login" и "Bluetooth".
- Ставим галку "Growl Notification Transport Protocol", через пару секунд Android Notifier зарегистрируется в Growl, который должен работать в этот момент. Успешную регистрацию можно посмотреть в Growl на вкладке "Applications".
- Убираем галку "System default". Если Growl не используется - галку оставляем.
- Разрешаем галками необходимые события.
- Для этих событий ставим галку "Execute command", нажимаем Add, выбираем соответствующий файл:
- для Ring - Notify_Ring.exe
- для SMS, MMS - Notify_SMS.exe
- Нажимаем "Save".
Алгоритм работы при входящем звонке:- В течение 0,5 сек громкость плавно уменьшается до 0.
- Воспроизведение музыки/видео в iCarDS приостанавливается (пауза).
- Воспроизводится звук уведомления.
- Восстанавливается исходная громкость. После завершения разговора достаточно нажать кнопку Play.
Алгоритм работы при поступлении SMS/MMS:- В течение 0,5 сек громкость плавно уменьшается до 0.
- Воспроизведение музыки/видео в iCarDS приостанавливается (пауза).
- Воспроизводится звук уведомления.
- Возобновляется воспроизведение музыки/видео в iCarDS с нулевой громкостью.
- В течение 1 сек громкость плавно увеличивается до исходного значения.
Файл с мелодией уведомления задается в скриптах. Правим, как надо, потом перекомпилируем exe.
Время уменьшения громкости (0,5 сек) и время увеличения громкости (1 сек) задаются в скриптах. При необходимости можно изменить и перекомпилировать exe.
Также можно изменить громкость уведомления, поправив строку $NotifyVolume=$CurrentVolume в скриптах:
- $NotifyVolume=$CurrentVolume - воспроизведение с исходной громкостью
- $NotifyVolume=50 - воспроизведение с заданной громкостью
- $NotifyVolume=Round($CurrentVolume*0.8) - воспроизведение с громкостью на 20% меньше исходной
- $NotifyVolume=Round($CurrentVolume*1.1) - воспроизведение с громкостью на 10% больше исходной
Можно обойтись и без Growl. Тогда его, соответственно, не устанавливаем, а в настройках "Android Notifier" оставляем галочку "System default". При этом будут всплывать стандартные уведомления.
Также можно не использовать ни Growl, ни стандартные уведомления, а создать свое собственное в AutoIt.
Вообще, тут много чего можно нафантазировать...
Прикрепляю исходники, скомпилированные exe и Tinkerbell.ogg из Android'а. Tinkerbell.ogg нужно скопировать в папку C:\Windows\Media для правильной работы моих exe.
PS: Если звуки уведомлений используются через Growl, то желательно в эти звуковые файлы каким-нибудь аудиоредактором добавить небольшую паузу в начале (примерно 0,6-1 сек), чтобы был промежуток между остановкой воспроизведения в iCarDS и проигрышем уведомления.