フィルタ機能がさらに使いやすくなりました

いつも Feedeen をご利用いただきありがとうございます。運営者の伊藤です。

告知していたメンテナンスが終了し、新しいバージョンを公開しました。今回はフィルタ機能強化の第二弾として、ご要望いただいたものも含めて多くの機能を追加しました。変更点が多いため記事が長くなっておりますが、いずれも便利な機能ですので、ぜひご活用ください!

フィルタの項目追加など

編集項目としてフィルタ名を追加し、振り分け先も複数指定可能になりました。

新しいフィルタ追加・編集フォーム

フィルタ名は検索できるので多数のフィルタを整理するのに便利です。タグ付けのような使い方もできます。

名前を検索

複数の振り分け先をサポートしたことで、同じ条件のフィルタを複数作成する意味はなくなりました。そのため、条件が重複する場合はエラーとなるようにしました。

重複エラーの表示

エラーメッセージ中の「重複を表示」のリンクで重複した相手のフィルタが表示されます。この状態から編集・削除ができますので、フィルタの統合が簡単に行なえます。

「重複を表示」をクリックした際の表示

フィルタのプレビュー

フィルタ編集画面の右下のドロップダウンで「フィルタ結果のプレビュー」を選択し、その右の → アイコンをクリックすると、取得済みのアイテムにフィルタを適用した結果がプレビューできます。これは結果を表示しているのみで、実際に振り分けが実行されているわけではありません。

機能を選択するドロップダウン

プレビューの表示

いずれかのフィルタがヒットしたアイテムは背景色が白くなり、振り分けの状態が表示されます。また、クリックすることで、そのアイテムにヒットしたフィルタが確認できます。

フィルタがヒットしたアイテムをクリックしたところ

ここでフィルタを編集することもできるので、意図した振り分け結果になるように条件等を調整してください。

使われていないフィルタの確認

前述のドロップダウンで「使われていないフィルタを表示」を選択すると、最終適用日の古いものから表示することができます。

使われていないフィルタを表示

ここでもフィルタの編集・削除が可能です。不要なフィルタの整理にご活用ください。

なお、あるアイテムを取得した際に複数のフィルタがヒットした場合、最初にヒットしたフィルタのみ最終適用日が更新されます。最終適用日が更新されなかったフィルタが存在しなかったとしても結果は同じであるため、実質的に不要であると考えて問題ないはずですが、フィルタ整理の際はご留意ください。

フィルタの再適用

多くのご要望をいただいた、取得済みアイテムへのフィルタ再適用に対応しました。前述のドロップダウンで「既読アイテムに再適用」から利用できます。

フィルタ再適用画面

ドロップダウンの名前にもあるとおり、本機能でフィルタが適用されるのは「取得済みかつ既読のアイテム」のみとなります。未読アイテムは手動で操作される可能性が比較的高いことと、処理効率などを考慮しての仕様です。必要に応じてすべてのアイテムを既読にした後に実行してください。

なお、フィルタの再適用は対象期間のすべてのアイテムを読み出して処理を行うため、非常に時間がかかります。とくに全期間にわたる再適用は数時間を要し、システムへの負荷も非常に高いものとなりますので、一日一回に制限させていただきます。プレビューや期間制限付きの再適用で結果をご確認のうえ、仕上げとして全期間への再適用をご利用いただければ幸いです。

フィルタ追加時の設定の記憶

前回のフィルタ機能のリニューアルで保留していた、「送信先」の「フィルタ登録」で呼び出されるフォームが前の設定を再現しない(常に「タイトル(or リンク先URL)が始まる」になる)問題を解消しました。以下の規則でデフォルトの条件を設定します。
  • 「フィルタ登録(タイトル)」の場合、最後にタイトル関連の条件を保存した際の設定を引き継ぐ
  • 「フィルタ登録(URL)」の場合、最後にリンク先URL関連の条件を保存した際の設定を引き継ぐ
なお、「最後に〜関連の条件を保存」というのは、送信先経由のみではなく、普通に詳細設定でフィルタを作成・編集したものも含みます。つまり、詳細設定で「タイトルに含む」条件のフィルタを保存すると、次に「フィルタ登録(タイトル)」を使用した際のデフォルトは「タイトルに含む」になります。

このあたりは私自身も迷うところで、「ひとまずこうしてみた」という段階ですので、使いづらいところがありましたら、ぜひご意見いただければと思っております。

なお、詳細設定のフィルタ画面で「フィルタを追加する」を実行した場合は、その時表示されていたフィルタリストの先頭の条件を引き継ぎます。これは前回の更新からの挙動です。

その他の変更

フィルタ機能の機能追加として、詳細設定の「送信先」に、暫定ではありますがマストドン向けの送信先を生成するフォームを追加しました。HTML構造の関係で、ページの一番下に配置されています。わかりにくくて申し訳ありません...

マストドン送信先追加フォーム

通常のSNSと異なり、マストドンはさまざまなドメインでサーバーが公開されていますので、ご利用のサーバーのURL(「https://mstdn.jp/」など)を入力して「追加」をクリックすると、対応するマストドンサーバーに記事を投稿するためのカスタム送信先を追加します。マストドンユーザーの方は、ぜひご利用ください。

また、お知らせフィードへの通知一元化の一環として、購読リストのインポートの終了通知をお知らせフィードに移行しました。今後はメールは送信されませんので、ご注意ください。

今回実現できなかったご要望

フィルタ機能へのご要望の募集に対して、たくさんのご回答まことにありがとうございます。今回、できる限りのご要望に応えられるよう作業を進めましたが、技術的・サーバーリソース的な制約により実現できなかったものもございます。以下に実装を見送った理由や代案などをご説明させていただきます。

フィルタの条件に正規表現を使いたい

フィルタの条件については、固定の文字列であることを前提にしてすべての条件を一度に判定することで処理を効率化しております。正規表現などの可変文字列を条件に含むとこのアルゴリズムが適用できず、追加できるフィルタ件数等に制限が必要となるため、実装を見送りました。

未読エントリーへのフィルタ即時判定

前述のとおりですが、フィルタの再適用については既読アイテムのみの適用とさせていただきました。いったん全アイテムを既読にした後、フィルタ再適用を実行していただければ幸いです。

フィルタ条件のヒット数や削除提案

ヒット数をカウントするためにはヒットするたびに日時を記録する必要があり、場合によってはDBの更新回数等が大きく増加するため、費用対効果を考慮して最終適用日で代用しました。削除提案についても、ひとまずは「使われていないフィルタを表示」の機能をご利用ください。

「グループ」を条件とした振り分け

現在のところ、Feedeenのクローラ処理では各ユーザーのグループ等の情報を保持せずに処理を行っているため、グループを振り分け条件とするのは難しく、保留させていただきました。今後、負荷の状況を見つつ実装を検討します。

「フィルタされたアイテム」が複数ほしい

複数の振り分け先としては4つのカラースターをご利用ください。振り分けたアイテムを「すべてのアイテム」から除きたい場合は、前述の複数振り分け先指定を活用して「フィルタされたアイテム」とカラースターの両方に振り分けることで実現できます。もしこの方法では目的が達成できない場合は、お問い合わせフォームでユースケースをお知らせください。何らかの方法を検討させていただきます。

Mojave 等に合わせたダークモードがほしい

今回は主にフィルタ機能の強化が目標でしたので実装対象としておりませんが、見た目のカスタマイズは実現したい機能として検討しております。他の機能・ご要望とも合わせて効率よく実現していきたいと考えておりますので、お待ちいただければ幸いです。


今回実現できなかった機能については、アルゴリズム改善や新たなクラウドサービスの利用などで実現できないか、検討を続けてまいります。今後とも Feedeen をよろしくお願いいたします!

コメント

このブログの人気の投稿

運営者入院のため、メンテナンスとサポートが数日滞ります

退院しました

手術成功しました