ZNCでLimeChatをIRCクライアントにしてiPhoneだけBuffer効かせる設定とim.kayacの設定

March 20, 2013

環境
ZNC vresion 1.0
LimeChat version 2.33
ZNC Packages from epel repository
- znc-1.0-0.1.alpha1.el6.x86_64
- znc-devel-1.0-0.1.alpha1.el6.x86_64
- znc-modperl-1.0-0.1.alpha1.el6.x86_64

出先で、im.kayacの通知が来てて見ると
「kenjiskywalkerマジでクソ、サーバさわんな」みたいなことが話されてて
解脱〜、みたいな状況になった場合、iPhoneで直近の会話だけ
みたい場合があるので、その設定をした。

参考:

ZNCってひとつのアカウントで複数サーバーに接続できるよね? - handlename’s blog
znc 内で keepbuffer on と off なものを作る - soh335 memo
znc で im.kayac をつかうための NotifyImKayacSimple.pm をかいた - tokuhirom’s blog.

NotifyImKayacSimpleの設定

特定のキーワードをim.kayac.comに通知するZNCモジュール書いた - すぎゃーんメモ
このすぎゃーんさんのメモの’-fPIC’の設定を有効にした記憶がある。あまり覚えてない。

~/.znc/modules/NotifyImkayacSimple.pmに置いて *LoadModule = modperl*して、
*NotifyImkayacSimple username=username keyword=key1,key2*で通知が来ると思う。

設定書いて間違っていればzncが起動しないので、その辺で確認できると思う。
デバッグモードを有効にするのもアリだと思う。

zncの設定

// WARNING
//
// Do NOT edit this file while ZNC is running!
// Use webadmin or *admin instead.
//
// Buf if you feel risky, you might want to read help on /znc saveconfig and /znc rehash.
// Also check http://en.znc.in/wiki/Configuration

...

<Listener listener0>

    ...

</Listener>

<User hotoke>

    ...

    LoadModule = modperl
    AutoClearChanBuffer = false

    <Network default>

        ...
        LoadModule = NotifyImkayacSimple username=hotoke keyword=涅槃,解脱,成仏
        Server = hoge.example.com
        Buffer = 100

        <Chan #buddha>
        </Chan>
    </Network>

    <Network freenode>

        ...
        LoadModule = NotifyImkayacSimple username=hotoke keyword=灌仏会
        Server = irc.freenode.net 6667
        Buffer = 1

        <Chan #isucon>
        </Chan>

        <Chan #monitoring-casual>
        </Chan>
    </Network>

    <Network perl>

        ...
        LoadModule = NotifyImkayacSimple username=hotoke keyword=解脱
        Server = irc.perl.org 6667
        Buffer = 10

        <Chan #ark>
        </Chan>

        <Chan #dbi-ja>
        </Chan>

        <Chan #prepan>
        </Chan>
    </Network>

    <Pass password>
        ...
    </Pass>
</User>

<User limechat>

     AutoClearChanBuffer = true
     Buffer = 500

    <Network znc>
        ...
        Server = 127.0.0.1 +6669 [zncのパスワード]

    </Network>

    <Pass password>
        ...
    </Pass>
</User>

こんな感じで設定している。

Userひとつで複数のNetworkに入れる。

PC => loginname: limechat/znc
iPhone => loginname: hotoke/default, hotoke/freenode, hotoke/perl

みたいな感じにして、PC側は*AutoClearChanBuffer*を有効にして
既読にしたものは消していって、iPhoneで接続する方は
毎回過去の履歴が見れるようになる。

これで出先で社内IRCで椅子がとんできても大丈夫なようになる。
仏像彫刻教室情報お待ちしております。