Hatena::Grouptwitterircgateway

TwitterIrcGateway Update

注意事項

Preview とついているモノは次回のリリース(Previewはずれる)までに変わる可能性がある・安定動作しない可能性があるモノです(人柱版といったところです)。

Preview版を利用する場合には適度にバックアップを取ってから適用したほうがよいです。

2009-05-12

Re:マルチキャストデリゲートを初期化できない

| 22:21 | Re:マルチキャストデリゲートを初期化できない - TwitterIrcGateway Update を含むブックマーク はてなブックマーク - Re:マルチキャストデリゲートを初期化できない - TwitterIrcGateway Update

http://twitterircgateway.g.hatena.ne.jp/takano32/20090512/1242125629

答え

def onBeforeUnload(sender, e):
    # イベントハンドラを外す
     pass

CurrentSession.AddInManager.GetAddIn(DLRIntegrationAddIn).BeforeUnload += onBeforeUnload

2.0以前まではイベントハンドラをアタッチしっぱなしで放置していて再読み込みさせても大丈夫なように、よきに計らうということをやる RealProxy が挟まっていたのですがあるとき訳あってその処理をやめました。ので今は自分でアンロードされるときにイベントハンドラきちんとを削除しなければいけません。

そのために DLRIntegrationAddIn には BeforeUnload があるのでこれをつかいます。これだけはリロードするたびに空っぽになるのでわざわざ外さなくても問題ないです。

ちなみに CurrentSession.PostSendUpdateStatus = None (つまりC#のnull)とかやれば消える気がしますが、全部消えるのでほかのアドイン(ハンドラによっては本体も)動かなくなりますのでご注意を。

takano32takano322009/05/13 10:58ありがとうございます。削除できました!

----
from Misuzilla.Applications.TwitterIrcGateway.AddIns.DLRIntegration import DLRIn
tegrationAddIn
def OnPostSendUpdateStatus(sender, e):
...

def onBeforeUnload(sender, e):
# イベントハンドラを外す
Session.PostSendUpdateStatus -= OnPostSendUpdateStatus

CurrentSession.AddInManager.GetAddIn(DLRIntegrationAddIn).BeforeUnload += onBefo
reUnload

FalkyFalky2009/06/12 10:36自分一人しかいないチャンネルを作ると、全TLが流れ込んできてしまうようです。
他に一人でもいれば正常に動作します。
@2.0.3419.24871

mayukimayuki2009/06/13 05:06> id:Falky さん
その挙動は現状は仕様です。
トピックを設定するか、誰かInviteするまでは流れてしまうのは今のところは意図的なのです。

FalkyFalky2009/06/19 09:57よく見たらヘルプに書いてありましたね。失礼いたしました。

2009-03-16

Preview 1.2.3362.20777 + CamouflageClient, SocialRemoveRedundantSuffix AddIns

| 11:54 | Preview 1.2.3362.20777 + CamouflageClient, SocialRemoveRedundantSuffix AddIns - TwitterIrcGateway Update を含むブックマーク はてなブックマーク - Preview 1.2.3362.20777 + CamouflageClient, SocialRemoveRedundantSuffix AddIns - TwitterIrcGateway Update

http://www.misuzilla.org/~mayuki/dist/twitterircgateway/TwitterIrcGatewayCore.dll-20090316-1.2.3362.20777

  • ユーザごとにアドインの無効化をできるようにした

SocialRemoveRedundantSuffix: ブラックリスト式末尾文字列削除

http://www.misuzilla.org/~mayuki/dist/twitterircgateway/addins/Misuzilla.Applications.TwitterIrcGateway.AddIns.SocialRemoveRedundantSuffix.dll-20090316

特定のURLにあるテキストファイルを読んで末尾の文字列を削除します。デフォルトではCodeReposのファイルを読むようになっています。

http://svn.coderepos.org/share/platform/twitterircgateway/suffixesblacklist.txt

書き方は一行一パターンをUTF-8で書く感じです。正規表現は利用できません。たとえば *Tw* と書いておくと \s*(\*Tw\*)\s*$ でマッチする文字列が削除されます。

パターンファイルは接続時にしか読みに行かないので定期的に SocialRemoveRedundantSuffix コンテキストで Update コマンドを実行してください。


CamouflageClient: クライアント偽装

http://www.misuzilla.org/~mayuki/dist/twitterircgateway/addins/Misuzilla.Applications.TwitterIrcGateway.AddIns.CamouflageClient.dll-20090316

CamouflageClient コンテキストで ClientSource twit などとすると source パラメータの値が変わります。

あくようげんきんです!

2009-02-14

Preview 20090214-1.2.3332.21151 & TypableMapCommandRemoveAndBlock AddIn

| 12:00 | Preview 20090214-1.2.3332.21151 & TypableMapCommandRemoveAndBlock AddIn - TwitterIrcGateway Update を含むブックマーク はてなブックマーク - Preview 20090214-1.2.3332.21151 & TypableMapCommandRemoveAndBlock AddIn - TwitterIrcGateway Update

http://www.misuzilla.org/~mayuki/dist/twitterircgateway/TwitterIrcGatewayCore.dll-20090214-1.2.3332.21151

  • コンソール: システム情報を表示する System コンテキストを追加

あと、TypableMapでremove/blockできるアドイン。(間違った時用にfollow/unblockも一応できる)

http://www.misuzilla.org/~mayuki/dist/twitterircgateway/addins/Misuzilla.Applications.TwitterIrcGateway.AddIns.TypableMap.TypableMapCommandRemoveAndBlock.dll-20090214

これは1.2.3332.21151が必要なのでご注意ください。インストール方法は例によってAddInsディレクトリを掘って、そこに.dllとして置けばおっけーです。

コンソールのSystemコンテキストでShowInfoコマンドを実行するとちゃんとインストールされているかどうか確認できます。

2009-02-13

片思い表示アドイン

| 00:55 | 片思い表示アドイン - TwitterIrcGateway Update を含むブックマーク はてなブックマーク - 片思い表示アドイン - TwitterIrcGateway Update

http://www.misuzilla.org/~mayuki/dist/twitterircgateway/addins/Misuzilla.Applications.TwitterIrcGateway.AddIns.RevealOnewayFollowAddIn.dll-20090213

とりあえずためしに片思いの人のpostを判別できるようにしてみました。設定とかなしで読み込むと単に後ろに (片思い) ってつけるだけのアドインです。

TwitterIrcGatewayCore.dll と同じディレクトリに AddIns ディレクトリを作成してその中にファイル名を Misuzilla.Applications.TwitterIrcGateway.AddIns.RevealOnewayFollowAddIn.dll としておいて再起動してください。

コンソールでHelpしてRevealOnewayFollow コンテキストがふえてればちゃんと読み込まれてますのであとはほっとけばよいです。

2009-01-15

コンソールにコンテキストを追加する

| 04:03 | コンソールにコンテキストを追加する - TwitterIrcGateway Update を含むブックマーク はてなブックマーク - コンソールにコンテキストを追加する - TwitterIrcGateway Update

こんな感じでコンテキストを増やせるようにしてみたりとか。

using System;
using System.ComponentModel;

namespace Misuzilla.Applications.TwitterIrcGateway.AddIns.Console
{
    public class TestContextAddIn : AddInBase
    {
        public override void Initialize()
        {
            Session.AddInsLoadCompleted += (sender, e) =>
                                           {
                                               Session.AddInManager.GetAddIn<ConsoleAddIn>().RegisterContext<MyContext>();
                                           };
        }
    }
    
    [Description("テストコンテキストです")]
    public class MyContext : Context
    {
        public override Type[] Contexts { get { return new [] { typeof(MySubContext) }; } }

        [Description("はうはう")]
        public void Hauhau(String query)
        {
            ConsoleAddIn.NotifyMessage(String.Format("hauhau {0}", query));
        }
    }
    
    [Description("サブコンテキストです")]
    public class MySubContext : Context
    {
        [Description("がおがお")]
        public void Gaogao(String query)
        {
            ConsoleAddIn.NotifyMessage(String.Format("がおがお {0}", query));
        }
    }
}