目的
Raspberry Piでsmnptrapを受信し音と光で伝えてくれるパトランプを作成する
工程
- OS選定
 - USBスピーカ音出し
 - 音声合成ソフトテスト
 - snmptrap によるアラート受信を設定
 
1. OS選定
CUIのみ利用前提 
http://www.raspberrypi.org/downloads/ よりダウンロード
Pidora
一番新しい PIDORA (ベースがFedora) を選択しインストールしたが 
動作が重く感じた事と、yumレポジトリに接続できなかったため見送り 
(2014.05.02に試してみたができなかった)
Raspbian
情報が一番多く、パッケージが多く楽そうなので歓迎 
利用してみた所、明らかに応答速度が違う & apt-get も利用できたのでこちらで確定
初期セットアップでは SDカードの領域有効化と、DateTimeを設定くらい
2. USBスピーカ音出し
適当なWAVを拾ってきて、再生コマンドを叩いてみるも音が出ない
$ sudo aplay sa1_001.wav 
状況確認
$ sudo lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 0c76:160c JMTek, LLC.
Bus 001 Device 005: ID 413c:2003 Dell Computer Corp. Keyboard
$ sudo lsusb -v -s 1:4
Bus 001 Device 004: ID 0c76:160c JMTek, LLC.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x0c76 JMTek, LLC.
  idProduct          0x160c
  bcdDevice            1.00
  iManufacturer           0
  iProduct                1 USB Speaker
...
認識されていたためデバイス指定をしてみると成功した
$ sudo aplay sa1_001.wav -D default:CARD=Speaker
再起動後も設定を保持したい
$ diff /etc/modprobe.d/alsa-base.conf /etc/modprobe.d/alsa-base.conf.140502
17c17
< options snd-usb-audio index=0
---
> options snd-usb-audio index=-2
3. 音声合成ソフトテスト
調べて見ると下記の2つが大半だった、ライセンス縛りはあるが 
評判が良さそうな後者を選択
- Open JTalk 
http://open-jtalk.sp.nitech.ac.jp/ - AquesTalk Pi 
http://www.a-quest.com/products/aquestalkpi.html 
インストール
$ wget http://www.a-quest.com/download/package/aquestalkpi-20130827.tar.gz
...
$ ls -la
...
-rw-r--r-- 1 pi pi 3880822 Aug 27  2013 aquestalkpi-20130827.tar.gz
$ tar -xzvf aquestalkpi-20130827.tar.gz
aquestalkpi/
aquestalkpi/test.txt
aquestalkpi/AquesTalkPi
aquestalkpi/aq_dic/
aquestalkpi/aq_dic/readme.txt
aquestalkpi/aq_dic/aq_user.dic
aquestalkpi/aq_dic/aqdic.bin
$ sudo mv aquestalkpi /opt
$ ls -la /opt
total 24
drwxr-xr-x  6 root root 4096 May  2 23:12 .
drwxr-xr-x 22 root root 4096 May  2 20:56 ..
drwxr-xr-x  3 pi   pi   4096 Aug 27  2013 aquestalkpi
drwxr-xr-x  3 root root 4096 Jan  8 07:02 sonic-pi
drwxr-xr-x  7 root root 4096 Jan  8 06:29 vc
drwxr-xr-x  3 root root 4096 Jan  8 07:07 Wolfram
発声
$ /opt/aquestalkpi/AquesTalkPi "こんにちは、漢字もしゃべれます" | sudo aplay
感動です、素晴らしい!パラメータをいじると速度や声色?が変更できました。
4. snmptrap によるアラート受信を設定
snmp関連パッケージを RasPiにインストール
$ sudo apt-get install snmp snmpd
/etc/snmp/snmpd.conf
    #       sec.name  source          community
    com2sec notConfigUser  default       public
    #       groupName      securityModel securityName
    group   notConfigGroup v1           notConfigUser
    group   notConfigGroup v2c           notConfigUser
    #       name           incl/excl     subtree         mask(optional)
    view    systemview    included   .1.3.6.1.2.1.1
    view    systemview    included   .1.3.6.1.2.1.25.1.1
    #       group          context sec.model sec.level prefix read   write  notif
    access  notConfigGroup ""      any       noauth    exact  systemview none none
/etc/snmp/snmptrapd.conf
    #### When Recieve Trap
    #default : write to syslog
    traphandle default /usr/bin/logger
    #### Settings
    doNotRetainNotificationLogs yes
    doNotLogTraps no
    doNotFork no
    # authCommunity   TYPES COMMUNITY   [SOURCE [OID | -v VIEW ]]
    #authCommunity     log   "community" 192.168.1.0/24
    authCommunity     log,execute,net   public
    disableAuthorization no
/etc/default/snmpd
    $ diff snmpd snmpd.org
    16c16
    < TRAPDRUN=yes
    ---
    > TRAPDRUN=no
snmptrapの設定にはまり、tcpdumpでも正常に受信しているが 
ログに出なかったのでいろいろと漁って上記に収まりました
SpecialThanks
UI/CSS 嫁 感謝!