1년전 구매하고 사용처가 애매해 서랍속에 잠자던 핑거봇을 다시 꺼내 다스 on/off용으로 활용.
영상,사진 보관용으로만 쓰는 다스는 정전보상 기능이 없어 매번 전원버튼으로 on/off를 해야하는데 핑거봇으로 전원제어.
핑거봇을 클릭방식으로 바꿔서 누르고 원위치하는 형태로 세팅하고 다스 전력소모를 기준으로 on/off하는 템플릿 스위치를 만듬.
처음 사용할 때는 잘 몰라 핑거봇의 위치를 도구를 이용해 맞춰 세팅했는데 디바이스 설정에 누르는 깊이와 시간, 올라오는 높이까지 설정가능.
usb 드라이브 마운트해제한 후 전원을 끌려면 나스에 쉘스크립트를 만들고 HA에서 shell_command로 명령을 내려주면 됨.
** umount보다는 synousbdisk명령을 사용해야 DSM에서처럼 USB에서 등록한 삼바 공유폴더까지 삭제돼 다음 마운트때 공유폴더 이름이 바뀌지 않음.
** 매터브릿지로 구글홈에 공유하려면 템플릿 스위치는 unique_id를 지정해주고 friendly_name에 이름을 정해주는 게 좋음.
HA설정:
switch.yaml
- platform: template
switches:
das:
friendly_name: '다스'
unique_id: 'das'
value_template: "{{ states('sensor.das_outlet_power') | float(0) > 30 }}"
turn_on:
- action: switch.toggle
entity_id: switch.fingerbot
turn_off:
- action: shell_command.usb_unmount
- delay: '00:00:10'
- action: switch.toggle
entity_id: switch.fingerbot
shell_command.yaml
usb_unmount: ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i id_rsa linn@192.168.1.4 /usr/local/bin/usb_unmount.sh
NAS설정:
DSM의 제어판/사용자 및 그룹/고급/사용자 홈 서비스 활성화
사용자 홈 /var/services/homes/linn에 .ssh디렉토리 생성 후 ~/.ssh/authorized_keys에 클라이언트 공개키 저장.
NAS에 작성한 USB 언마운트 쉘스크립트
/usr/local/bin/usb_unmount.sh로 스크립트 작성
#!/bin/bash
USB_DRIVES=(sdu1 sdt2 sds2 sdv2)
for DRIVE in "${USB_DRIVES[@]}"; do
/usr/syno/bin/synousbdisk -umount $DRIVE
done
NAS의 /etc/sudoers에 비번없이 사용할 명령어와 사용자 추가
# Allow root to execute any command
user ALL=(ALL:ALL) NOPASSWD: /usr/syno/bin/synousbdisk