Project

General

Profile

機能 #1065

Postboxを使った投稿の失敗時に通知を表示する

Added by toshi_a 初音 almost 2 years ago.

Status:
新規
Priority:
通常
Assignee:
-
Target version:
Start date:
2017-09-05
Due date:
% Done:

0%

プラグイン名:

Description

ツイートが失敗した時に、何故失敗したのかが表示する機能がないため、何らかの方法でユーザに通知する。

エラーの取得方法について

Twitterが返すエラーは、 Service#post の戻り値のDeferredのtrap節で例外 MikuTwitter::TwitterError のインスタンスとして取得できる。
エラーのクラスは source:core/lib/mikutwitter/error.rb#L36 にまとまっていて、例外のメッセージがTwitter APIのレスポンスのエラー説明文になっているため、英語だがそれを表示すれば意味はわかりそう。FlyingWhaleErrorやDuplicatedStatusErrorのようにありがちなやつは、代替メッセージを用意しておいたら他の言語にも翻訳できて良さそう。

エラーの通知方法

アクティビティに出す

利点は設定すればlibnotifyやステータスバー、タイムラインに表示することが出来ること。簡単に実装できること。
欠点は、複数Postboxがあった場合に、どれが失敗したかわかりづらいこと。

Postboxにエラーを通知する領域を追加する

Webフォームのバリデーションエラーのように、Postboxの下にエラーメッセージを表示する。

利点はどのPostboxがどういったエラー内容で失敗したかわかりやすいこと。
欠点は実装が大変なこと。

対象バージョンについて

アクティビティに出すだけなら大したことないと思うので、3.5実装しても良さそう。
Worldが異なる場合にも対応したいので、3.6で全てやってしまうより、3.5で最低限実装しておいて、3.6でWorldむけに変更するというのもありかも。やるまえにdiff見て判断する。

Also available in: Atom PDF