Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

自分の名前が呼ばれたらnotifyしてほしい #76

Closed
makamaka opened this issue Apr 2, 2013 · 5 comments
Closed

自分の名前が呼ばれたらnotifyしてほしい #76

makamaka opened this issue Apr 2, 2013 · 5 comments

Comments

@makamaka
Copy link
Collaborator

makamaka commented Apr 2, 2013

http://yancha.hachiojipm.org/quotation.html?id=7156 より

現状の仕組みだとかなり面倒なので、実装どうするかねえ……

@gfx
Copy link

gfx commented Apr 2, 2013

#77 とあわせて、replyもらったらnotifyでもいいと思うんですよね、とりあえずは。

@ichigotake
Copy link
Collaborator

思いついたことを羅列しておきます

新規発言にreplyが含まれているかチェック

ログインユーザーへのreplyがある場合は該当ユーザーへ通知する

ログイン認証時に過去の発言にreplyが含まれているかチェック

ログイン時にユーザーのupdated_atフィールドが更新されますが、それが更新される前に時間をチェック。
その時間以降の発言にreplyが含まれているかチェックしてユーザーへ通知

userテーブルのupdated_atフィールドは現状ではログイン成功時にしか更新されません
発言のポスト時や削除にもupdated_atフィールドを更新するようにするといいんじゃないでしょうか

ただupdated_atを使うこの方法だと、リロードするとリプライ通知が消えてしまうので別の管理方法を考えた方がいいかもしれないですね

「リプライがあります」表示をする

「リプライがあります」をクリックすると、名前が含まれてる発言をquatation.htmlで開く

search.htmlはアクセス時のパラメーターを元に検索結果を表示するようになっていないので、現状でワンクリック表示をやろうと思ったらquation.htmlですかね

API/Search.pmのフォーマット指定で"HTML"を追加するとか、search.htmlについたパラメーターを元に検索を実行する等、改良を加えてそれを一覧として使うのもアリかもしれません

過去のreplyを見る

今の仕様でも過去ログ検索でキーワードを入れれば出来ますが、replyを見る機能としてはちょっと不親切ですね

通知の監視タグの範囲

通知は、購読していないタグで名前を呼ばれていたらそれも全て通知するのか、購読しているタグにのみ限定するのか。

サーバーとしては全てのタグを通知して実際に監視タグをチェックして通知を表示するかはクライアント任せ、というのもいいかもしれませんね


replyの定義をどうするかとか、通知の管理はこれでいいのか、精査した方がよいこともあると思いますが、ひとまず思いつきでこんなところでしょうか

現状の仕様ベースのままでいこうとすると無理がありそうなので、実装によってはDBにリプライ用のフィールドを用意するとか、プラグイン用のKVSテーブルを用意するとかした方がいいかもしれませんね

@uzulla
Copy link
Owner

uzulla commented Apr 12, 2013

個人的にはまずはオンラインでワードが流れてきたらポップする、という事だけでも良いとおもっていて、
それはクライアント側のJSでなにか監視ワード設定できるだけでよいかなと思います。
(なので、フォローしてないタグはアラートされない)
直近これで簡単なReply監視はできるかなと。

ーー
次の段階として、サーバー側でちゃんとメッセージング的な何かをする方法についてですが、
まずメッセージングじゃなくていいかなと、上でもかきましたが、ワード指定のフィルタで良いのではないですかね、そちらのほうが自由度高いし。(IRC的ですが)
(ただ、もちろん「フィルタをつかってない人にはNotificationできない」わけですが)

Twitterなどでログインしていたら、フィルタを登録できるようにして、Yanchaの中で投稿されたテキストすべてをそのフィルタでチェックして、キューにいれたり、なにかアクション(メールとか)する方式が良いのではないかなと思いました。
(これは登録数がふえていくとサーバー側の負荷がふえますが、仕方ないですね、そこまでいったらなにかかんがえないといけない)
あとはそのキューを読み出せるAPIと、JSがポーリングするなり、可能ならWSで流すなりしたらよいかなと。
実際に表示するページについてはquation.htmlでいいと思います。

ーー
ログインがTwitterだけと限定されていれば、Mentionをおくるアクションなども考えられますね。

ーー
「API/Search.pmのフォーマット指定で"HTML"を追加するとか、search.htmlについたパラメーターを元に検索を実行する等、改良を加えてそれを一覧として使うのもアリかもしれません」
ここについては、まえからやりたい所で、quation.htmlからJSで呼び出すのは、本来できれば廃止したいですね。いつかはちゃんとした、ウェブアプリ風にしたいです。

ーー
ということで、たけ君の「ユーザーReply専用」の機能ではない方向が私としては想定です。
それをちゃんとやるなら、ログインまわり(ユーザーの特定)をまずちゃんとやる必要がある。

ーー
ま、とりあえずはクイックハックでいいので、
ながれてきたテキストで、自分の名前(ログイン名)がはいってたら、うざいポップを出すようなJSがあれば直近いいんじゃないの感です。

@ichigotake
Copy link
Collaborator

ま、とりあえずはクイックハックでいいので、

言われてみれば基本仕様に関してまだ議論し切れてない感じもするので、クイックハックな方向がいいかもしれないですね

ひとまずはクイックハックでさっくり作って様子を見ながら、もう少し具体的な実装案がないか模索する感じですか

「API/Search.pmのフォーマット指定で"HTML"を追加するとか、search.htmlについたパラメーターを元に検索を実行する等、改良を加えてそれを一覧として使うのもアリかもしれません」
ここについては、まえからやりたい所で、quation.htmlからJSで呼び出すのは、本来できれば廃止したいですね。いつかはちゃんとした、ウェブアプリ風にしたいです。

だいぶ前から意見としては上がってましたが、そういえばIssuesがありませんでしたね
Issues投げておきます

@uzulla
Copy link
Owner

uzulla commented Jul 14, 2014

当面subpenaということで

  1. Twitterのsubpenaというアカウントをフォローする
  2. Twitternameで「@uzulla はよ」とかいう
  3. subpenaがTwitterのDで相手に通知を送る。

@uzulla uzulla closed this as completed Jul 14, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants