PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   iCarDS и телефон (http://pccar.ru/forumdisplay.php?f=131)
-   -   Уведомления с телефона на CarPC (http://pccar.ru/showthread.php?t=19525)

Lexx09 16.08.2013 02:36

Уведомления с телефона на CarPC
 
Вложений: 1
В связи с установкой CarPC в автомобиль встала проблема вероятных пропусков звонков и SMS, т.к. музыка бумкает и ничего не слышно.

Набросал небольшую инструкцию, может, кому-нибудь пригодится.

С Bluesoleil пока не заморачивался, решил использовать какую-нибудь программу для уведомлений. После поисков остановился на Android Remote Notifier. Для красивых уведомлений использовал Growl for Windows. Также использовал AutoIt.


Установка и настройка "Android Remote Notifier" на телефоне:
  1. Устанавливаем AndroidNotifier-0.2.8.apk и запускаем его.
  2. Включаем Bluetooth, спариваемся с CarPC.
  3. Настройки "Remote Notifier":
    • Запускаем сервис и включаем автозапуск сервиса.
    • Способ уведомления - Bluetooth, выбираем устройство получателя (CarPC), ставим галку "Автоматически активировать Bluetooth".
    • Отмечаем галками необходимые события для уведомлений.

Установка и настройка Growl на CarPC:
  1. Устанавливаем и запускаем Growl.
  2. Открываем его из трея ("Open Growl").
  3. Останавливаем Growl переключателем на вкладке "General".
  4. На этой же вкладке ставим галку "Automatically start Growl at login".
  5. На вкладке "Security" ставим галку "Allow network notification", остальные галки убираем.
  6. При желании настраиваем звуки и внешний вид уведомлений по вкусу. Но я использовал воспроизведение уведомления из AutoIt-скрипта.
  7. Запускаем Growl переключателем.
Для использования своих мелодий уведомлений в Growl - их необходимо конвертировать в wav и скопировать в папку C:\Windows\Media.


Установка и настройка "Android Notifier" на CarPC:
  1. Правим исходники и компилируем их.
  2. Получившиеся файлы Notify_Ring.exe и Notify_SMS.exe копируем в какую-нибудь папку на HDD/SSD. Например, в папку с iCarDS.
  3. Устанавливаем JRE 7u25 и MultiDroidNotifier-0.5.1-x86.exe.
  4. Запускаем "Android Notifier".
  5. Из трея открываем настройки ("Preferences...").
  6. Ставим галки "Start at login" и "Bluetooth".
  7. Ставим галку "Growl Notification Transport Protocol", через пару секунд Android Notifier зарегистрируется в Growl, который должен работать в этот момент. Успешную регистрацию можно посмотреть в Growl на вкладке "Applications".
  8. Убираем галку "System default". Если Growl не используется - галку оставляем.
  9. Разрешаем галками необходимые события.
  10. Для этих событий ставим галку "Execute command", нажимаем Add, выбираем соответствующий файл:
    • для Ring - Notify_Ring.exe
    • для SMS, MMS - Notify_SMS.exe
  11. Нажимаем "Save".


Алгоритм работы при входящем звонке:
  1. В течение 0,5 сек громкость плавно уменьшается до 0.
  2. Воспроизведение музыки/видео в iCarDS приостанавливается (пауза).
  3. Воспроизводится звук уведомления.
  4. Восстанавливается исходная громкость. После завершения разговора достаточно нажать кнопку Play.

Алгоритм работы при поступлении SMS/MMS:
  1. В течение 0,5 сек громкость плавно уменьшается до 0.
  2. Воспроизведение музыки/видео в iCarDS приостанавливается (пауза).
  3. Воспроизводится звук уведомления.
  4. Возобновляется воспроизведение музыки/видео в iCarDS с нулевой громкостью.
  5. В течение 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 и проигрышем уведомления.

Lexx09 18.08.2013 00:55

Update.

Добавил проверку на наличие запущенного iCarDS. Если не запущен - то просто воспроизводится уведомление с текущей громкостью.

Grosha 20.08.2013 02:28

Установил все по вашей инструкции, но после первых уведомлений Notify_Ring.exe и Notify_SMS.exe грузят процессор до 100%. Звука от уведомлений тоже не слышу, только приглушение звука и окно-уведомление в углу экрана. После окончания разговора при проигрывании радио, запустить обратно радио проблематично из-за загруженного проца.
Проц Dual Core 2.3GHz.
Может я все-таки что-то не так сделал?

Lexx09 20.08.2013 14:43

Tinkerbell.ogg скопировали в папку C:\Windows\Media?

Grosha 22.08.2013 00:28

Цитата:

Сообщение от Lexx09 (Сообщение 267956)
Tinkerbell.ogg скопировали в папку C:\Windows\Media?

Проверил, файл есть. Проверочное сообщение с телефона проходит. Но на звонок и смс не реагирует. Отдельно Notify_Ring.exe и Notify_SMS.exe запускаются и отрабатывают правильно, через "Android Notifier" не отрабатывают. Кстати проблему с загрузкой процессора нашел -пути этим файлам почему-то прописались по два раза через запятую.
"Android Notifier" сам не запускается, хотя галочка "Start at login" стоит.

Lexx09 22.08.2013 16:12

Давай уточним, а то как-то противоречиво написано.

1. Если при работающем iCarDS просто запустить Notify_Ring.exe или Notify_SMS.exe - то звук в iCarDS приглушается, а звук уведомления воспроизводится?
2. При каком-либо событии на телефоне - уведомление всплывает в трее, но Notify_Ring.exe или Notify_SMS.exe не отрабатывают? Или отрабатывают, но без воспроизведения звука?

Если на события в телефоне не реагирует - попробуй в настройках Android Notifier на компе прописать свое устройство в список разрешенных.
Пути задвоенные оказались потому, что нажимал два раза на Add, и, соответственно, добавились две записи.
Сними галочку "Start at login", а в автозагрузке сделай ярлык на exe-файл.

guga 03.12.2013 00:01

Цитата:

2. Включаем Bluetooth, спариваемся с CarPC
Пожалуйста, объясните как :blush:.
Втыкаю ВТ-свисток. Автоматом ставятся дрова. А дальше - всё. Знания закончились. :blush: Подскажите, что ещё надо доставить.

Lexx09 03.12.2013 00:37

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

guga 03.12.2013 00:53

Цитата:

Включаем BT на телефоне, идем в настройки BT, ищем там свой свисток в устройствах, тыкаем в него для сопряжения, подтверждаем пароль. Как-то так...
Это-то я умею...
Наверно я неправильно выразился.
Как заставить РС транслировать-принимать через свисток. Т.е. в установленных устройствах на РС он есть и пишет что работает нормально, но светодиод (как при приёме-передаче) молчит и с андроида я его не вижу. Такое ощущение, что надо ещё доставить что-то типа БлюСолейла или где-то в настройках подключиться.

Lexx09 03.12.2013 01:13

На компе в настройках BT включите обнаружение другими устройствами.

Или подключитесь наоборот - с компа к телефону. В этом случае на телефоне включите видимость BT.


Часовой пояс GMT +4, время: 20:36.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot