新しいストリーム機能を搭載したJoytterのテストバージョンを公開

2018年8月21日火曜日 1

去る8月17日にユーザーストリームの停止が実行されJoytterにも大きな影響が出ています。
Joytterはユーザーストリームという機能に魅せられ知識欲を掻き立てられたことで生まれたソフトです。
そのためユーザーストリームありきで設計されており、ユーザーストリームが停止されると基本であるタイムラインの更新もできなくなります。


この仕様変更に合わせ修正作業を進めてまいりましたが、とりあえず形になりましたので試験版を配布します。(Joytter.exeとCoretweet.dllを置き換えてください)


https://drive.google.com/uc?export=download&id=1doDVkD6rCiBj6lPoxDYcSfsE_4DX0HU-
正式版リリースに付き配布を終了しました


この試験版ではユーザーストリーム廃止後もタイムラインをストリームで表示できる機能を搭載しています。
ただし、ユーザーストリームを完全に再現できているわけではなく以下の問題があります。


  • ストリームで取得できるのは5000ユーザーまで(フォローが5000以上の人は諦めるかフォローを減らしてください)
  • 非公開アカウントのツイートの取得にはラグがあり、遅れて取得したツイートは最新位置に追加されるのではなく、あるべきところに追加されるので見落とす可能性が高い。
  • ストリーム接続中のみフォロー外からのリツイートを検知できる。
    定期更新でもフォロー外からのRTを検知出来るようになりました
  • フォロー外から引用ツイートされても検知できない。
    フォロー外からの引用ツイートを取得できるようになりました
  • いいね、フォロー、リスト追加等のイベントは拾えない。
    フォローはラグがありますが検知できるようになりました
  • ツイ消しされたこと検知する手段がなくなったので削除されたツイートもそのまま表示される。
  • DMは一定間隔で確認するので取得までラグがある。

特にイベントの取得ができないのが大きな劣化ポイントです。
イベントをリアルタイムでなくてもいいのでREST APIで取得できるようになればいいのですがツイッター社にはその気はなさそうです。


その他の大きな変更点としてはREST検索とストリーム検索は統合され「検索」カラムになりました。
ストリーム検索をしたい場合は検索カラムを作成後、カラムヘッダの更新間隔コンボボックスで「Stream」を選択してください。


なるべく早いうちに正式リリースしたいと思っていますのでバグ出しをお願いいたします。

Joytter設定ファイルcommon.xmlの隠し設定一覧

2017年5月2日火曜日 0

別に隠しているわけではないのですが煩雑になるため設定画面には表示してない項目一覧です。
common.xmlは必ずバックアップし、UTF-8対応エディタで編集して下さい。

LineSpacing

デフォルト値:NaN

行間を広げるオプションです。 「1.5」を指定すれば1.5倍になります。 行間をデフォルトより減らす方向には働きません。

BackgroundColumnAreaWidth

デフォルト値:106

サイドバーの横幅です。

SlimBackgroundColumnAreaWidth

デフォルト値:36

サイドバーをスリム化したときの横幅です。 サイドバーを非表示にしたい場合は「0」にしてください。

MentionHistoryCount

デフォルト値:10

ツイートテキストボックスを右クリックした時に現れるメンション履歴の記憶件数です。

TrendWOEID

デフォルト値:23424856

トレンドの地域の設定です。以下を参考にして下さい。 Twitterのtrendsで使えるwoeid一覧(日本版)。

MiniIconSize

デフォルト値:20

リツイートユーザーや返信先ユーザーのアイコンサイズです。

ImageCacheCleanExcludeDays

デフォルト:1

Joytter終了時に画像キャッシュファイルを削除する際にこの設定日数以内に取得された画像は削除対象から除外します。

ThumbnailQuality

デフォルト値:85

アイコンやサムネイル画像の品質です。 増やせば綺麗になりますがメモリ使用量が増えます。 減らせはノイズが増えますがメモリを節約できます。

TwitterImageSuffix

デフォルト値::large

ツイートに添付されている画像の取得サイズを指定します。 「:small」「:middle」「:large」「:orig」 が有効です。

ImageMemoryCacheExpiration

デフォルト値:60

メモリ上からサムネイル画像を自動的に削除する設定になっている場合、この時間(分)以内に取得されたものは削除対象から除外します。

MemoryCompactionSpan

デフォルト値:60

メモリのデフラグを行う間隔(分)です。

TagMuteThreshold

デフォルト値:6

実況ハッシュタグ判定のしきい値です。 デフォルト値では5分間に6回同じタグが出現した場合に実況ハッシュタグと判定します。

AutoScrollSuspendValue

デフォルト値:0.5

遡り時にオートスクロールを一時停止する設定です。
縦長ツイートでオートスクロールが頻繁に停止する場合は「1」などに設定して下さい。

FollowingUsersFavorite

デフォルト値:false

フォローしているユーザーのいいねをリアルタイムに取得する機能を有効化します。 TweetDeckのActivityのような機能ですがTwitterの公式ドキュメントに記載されていない仕様ですし、未読管理等で不具合があると思います。 取得するツイート数も跳ね上がります。 不具合の修正要求は受け付けません。

EventHistoryJsonCount

デフォルト値:20

起動時に復元するイベント通知の件数です。

ScrollBarWidth

デフォルト値:8

スクロールバーの太さです。

ImageFromTextFontSize

デフォルト値:12

テキストを画像化する際のフォントサイズです。

ImageFromTextFontFamilyStr

デフォルト値:Microsoft Sans Serif

テキストを画像化する際のフォント指定です。

ImageFromTextFontStyleStr

デフォルト値:Regular

テキストを画像化する際のフォントのスタイルです。

ImageFromTextColorStr

デフォルト値:Black

テキストを画像化する際の文字色です。

ImageFromTextBGColorStr

テキストを画像化する際の背景色です。

Joytterでリンク先の画像を取得する方法

2016年9月18日日曜日 Category : 1

Joytterではリンク先のウェブサイトの画像を自動で取得し表示する機能があります。
例えば、Youtubeのリンクがあった場合、その動画のサムネイル画像を自動的に取得し表示します。

 この機能を他のウェブサイトでも利用したい場合は、Joytterフォルダ内にある"ImageURLReplace.xml"をテキストエディタで開き、編集することで可能です。
こちらであらゆるサイトを網羅することは出来ませんので、ユーザー側で自由に設定できるようにしてあります。

一例としてニコニコ静画の設定方法を上げてみます。


ニコニコ静画のURLは次の形式です。
http://nico.ms/im1711834

このアドレスにアクセスして画像を右クリックし、画像の情報を表示すると、画像自体のURLがわかります。
http://lohas.nicoseiga.jp/thumb/1711834i?

つまり、URLの http://nico.ms/im 以降の数字を http://lohas.nicoseiga.jp/thumb/ にくっつけて最後にi?を付加すると画像のURLになることがわかります。

この法則をImageURLReplace.xmlに記述すると以下のようになります。
<URLReplacePattern>
    <Pattern>http://nico\.ms/im(\d+)</Pattern>
    <Replacement>http://lohas.nicoseiga.jp/thumb/$1i</Replacement>
</URLReplacePattern>
(\d+)は正規表現で数字を取得し、$1に保存することを表しています。
Patternに(\d+)が2つある場合は、$1 $2に順番に保存されています。
Replacementでは http://lohas.nicoseiga.jp/thumb/ に $1の数字をくっつけて、最後にiを付加しています。(最後の?は不要なようでしたので付けませんでした)
 
正規表現は次のサイトなどで事前にチェックすることが可能です。
http://regexhero.net/tester/
 
ImageURLReplace.xmlを保存したらIEなどでxmlファイルを開いてみてください。
問題がある場合はエラーが表示されます。
 
注意点としてxml内に&をそのまま記述することは出来ません。次の記述はエラーになります。
<Replacement>http://example.jp/mode=test&id=$1</Replacement>
&を記述したい場合は&amp;に置き換えてください
<Replacement>http://example.jp/mode=test&amp;id=$1</Replacement>
または、CDATAセクションとすることで&のまま記述することが可能です。
<Replacement><![CDATA[http://example.jp/mode=test&id=$1]]></Replacement>

ページURLと画像URLに法則性がある場合は上記の方法で取得可能ですが、法則性がない場合は取得できません。(Vineなど)
リンク先のHTMLを読み込み、画像のURLを取得するスクレイピングという方法がありますが、相手側のサーバに負荷がかかりますので実装する予定はありません。

年10ドルからのVPS AlphaRacksを契約してみた

2016年8月25日木曜日 0

Google DriveにはHTMLをアップロードし、ウェブサーバとして機能させる方法があります。
この機能を利用すれば無料で広告無しのウェブサイトを開設できますので、JoytterではGoogle Driveを公式サイトとしてきました。

しかし、この方法だとURLがとてつもなく長く怪しいアドレスになるのです。
怪しいアドレスのソフトウェアなんて使いたくないですよね。
というわけで、ちゃんとしたアドレスの公式サイトを作ろうと思い至ったのですが、Joytterは一円も稼ぎだしてくれないので次の条件で極力お金かけずに借りられるサーバ探しました。

条件

  • 広告無し
  • 月100円程度
  • 独自ドメイン運用
  • 翻訳機能の中継サーバを兼ねたいのでPHP必須

この条件で探したところ幾つかの国内レンタルサーバが見つかりました。
しかし、どれも初期費用が1000円程度かかります。

もっとお金をかけない方法はないかと海外業者も視野に入れて探してみました。
するとあったんです。しかもレンタルサーバではなくVPSで。

AlphaRacks

トップページに表示されている限りでは月3.5ドルが最安プランです。
しかし、右上のをクリックするとこんなプランが出てきます。

2015 New Year Special - Los Angeles OVZ 256MB -
Dedicated RAM: 256MB
vSwap: 512MB
HW RAID10 HDD (Storage): 25GB
Premium Bandwidth: 500GB
CPU Cores: 2 Cores
IPv4 Space: 1 IP
Public Uplink: 1000Mbps
SolusVM Control Panel: Included
Management: Self-Managed
Full Root/SSH Access: Included
Price: $10/year
安い、安すぎる。
しかし、256MBでは流石に厳しいなぁとスクロールさせていくとさらにこんなプランを発見。

New Website Special - Los Angeles OVZ 768MB -
Dedicated RAM: 768MB
vSwap: 768MB
HW RAID10 HDD (Storage): 40GB
Premium Bandwidth: 2000GB
CPU Cores: 2 Cores
IPv4 Space: 1 IP
Public Uplink: 1000Mbps
SolusVM Control Panel: Included
Management: Self-Managed
Full Root/SSH Access: Included
Price: $12/year
まさに自分にドンピシャなスペック。
何か罠でもあるのかと調べてみましたが特に見つからなかったので即契約しました。

支払いはPayPalで可能。
Special Dealsなので1年のみの価格なのかなと思いましたが毎年定期支払になっているのでずっとこの価格で借りられるようです。

といわけで、768MBプランを借りて2ヶ月間運用してみた結果は

公開サーバとしては使えないかな・・・

という感想です。


理由は月に3回ぐらい落ちます。
落ちるまでは行かなくてもたまに激重になってSSHの応答に1分以上かかることが有ります。

サーバは滅多なことで落ちないものと考えて契約すると失望するでしょう。

でも、平常時はわりとまともな応答速度なのでこの価格にしてはかなり頑張っていると思います。
たまに落ちても問題のないテスト用サーバとか、BOTとかにはもってこいのサーバなのではないでしょうか。

サーバのスペック
CPU Xeon E5620  @2.40GHz
Ping 125ms
スループット 3.2Mbps
ウェブサーバとしては向いていませんが確実に価格以上の価値はあるVPSだと思います。

Powered by Blogger.

Popular Posts