私は、とりわけビジネスの注文を受け取るWebアプリケーションに取り組んでいます。注文が一覧表示されるページがあり、画面に表示されるリストが最新になるように、一定の間隔で更新されます。
ただし、このWebアプリケーションのユーザーがブラウザウィンドウに注意を向けない(最小化することができる)場合が多くあります。これは、おそらくこの人物が同僚やビジネスで起こっていること、またはその他を使用していることで忙しいためです。同じPC上のソフトウェア(おそらく1つまたは2つの他のアプリケーション、デスクトップアプリケーション)。このユーザーは、画面全体を使用するソフトウェアを使用している可能性があり、Webアプリケーションは、前述のすべての状況が発生している場合でも、新しい注文が到着したときにユーザーの注意を引く必要があります。
潜在的なユーザーと話しましたが、アバストの更新通知のようなものが理想的だと彼らは言っています-つまり、視覚的および聴覚的手段の両方を通じてユーザーの注意を引く通知であり、それは現在オンになっているすべての上にオーバーレイされます-画面。
ただし、アバストの更新通知のようなものは、私の理解ではWeb環境では不可能です。私の考えは、3つのテクニックを組み合わせた次のとおりです。
window.focus();
)。alert()
がトリガーされ、新しい注文が到着したこと、およびユーザーがページの受信注文のリストに注意を払う/読み取る必要があることを示す短いメッセージが表示されます。技術的な観点から、このアプローチはブラウザとオペレーティングシステムの動作に関する問題に直面しています。
alert()
および/またはwindow.focus()
を介して他のすべてのウィンドウの上に表示できますが、Firefoxはタスクバーのアイコンを点滅させるのと同じくらいにしてください。今、この問題の解決策はクロスブラウザとクロスシステムである必要がありますが(これは技術的な問題であり、ユーザーエクスペリエンスの問題ではありません)、それは全体として問題の一部であり、ユーザーだと思います問題の発生:何があってもユーザーの注意を引く方法。音だけでは十分ではありません。ビジネスはかなり混沌としている可能性があり、健全な警告は無視されます。ユーザーが反応するまで画面に表示される視覚要素は不可欠です。
このシナリオをどのように処理しますか?
PS:使用中のシステムに注意を払っていないユーザー自身の問題だと言ったら、ある程度同意するが、ユーザー自身でできることはあまりないので、Webアプリケーションこの点で協力しようとする必要があります。
GoogleメッセンジャーとFacebookチャットでWebページに急いでいるある種のチャットを奪われたゾンビのように、タスクバーのWebページアイコンが点滅している このスタックはその方法を示します編集: HTML5通知 はJSより魅力的に見えます。
これが私の注意を引く(そしてUXの観点からは強い)理由は、多くのWebサイトでは行われていない非常に奇妙なことが起こっているためです。点滅するアイコンは非常に異常なため、現実的な目的のために、ユーザーはWebページ/アイコン/ etcのどこが間違っているのかを理解するように描かれます。
前述のアプリソリューションの他に、商用APIを使用して、注文を受けるたびにクライアントにテキストメッセージを送信することもできます。無料の同様のソリューションは、注文を受けるたびにメールを送信することです。
最も重要なことは、リキッドアップデートでクライアントを溺れさせないことです。サービスが何であるかはわかりませんが、クライアントのアップデートを送信しない限りまれに更新が煩わしいではない、または更新を介して記述されている "注文"が非常に大量であるため、インスタント通知(Apacheヘリコプターまたはヨットが販売されているように) )、慎重に境界線の強制クライアントの注意の根拠に近づく必要があります。
自己中心的な人が好きな人はいません。最も重要なことは、更新プッシュを最終製品に適切にすることです。そうですが、クライアントに「みなさん、別の$ 1.50の卸売Tシャツを販売しました。今日、3,960円になりました!私をクリックしてこの通知を閉じてください」と伝えるのは事実です紙の上の良いアイデアのように、実際には、それはすぐに迷惑になるでしょう。
ここで尋ねていることは、尋ねることと同じです。
2つの異なるフロアに2つの部屋があります。電話が設置されている部屋は1つだけです。他の部屋で電話をかける方法を教えてください。
言い換えると:
Webアプリの機能は、それが実装されているスコープ(ブラウザー)に限定されます。ユーザーのOSやマシンを制御することはできません。
UXの観点からは、これはウェブアプリの問題ではなく、デスクトップアプリの問題でもありません。これはOSの問題です。
使用するデバイスがパーソナルコンピューターであり、コンテキスト分析にユーザーがブラウザーウィンドウの外でアプリケーションを使用していることが明らかに含まれる場合、システムはブラウザーレベルではなくOSレベルで検討する必要があります。
質問に直接回答するには:これは、Webアプリ内からは実行できません。ホストマシン上のテキストメッセージや通知アプリケーションなどの下位レベルのソリューションを調べる必要があります。
選択したソリューションに関係なく、ユーザーの注意を引くのが私に見える唯一の方法何があってもは、新しい注文が到着するたびにユーザーを発火させてユーザーを---火を消すために行動を起こす。 「何でもない」問題に対する実用的な解決策はありません。
1つの可能な解決策は、インストール/認証する必要がある小さな通知アプリを作成することです(DropboxやEvernoteなど)。その場合、webappのすべての制限を克服できます。ただし、追加の作業が必要です。
それはまだ初期段階にあり、すべてのブラウザーでサポートされているわけではありませんが、HTML5デスクトップ通知とサウンドの組み合わせにより、特定のブラウザーでこれを実現できます。
まあ、OSレベルの通知アプリは良い解決策になるかもしれませんが、残念ながら現在のプロジェクトスコープ/予算内にはありません。さらに、クロスプラットフォームであるか、「Windowsのみ」に固執する必要があります。
仕事を成し遂げることができるフリー/ライブラリーとクロスプラットフォームのソフトウェアがあります。もちろん、ソフトウェアのインストールを要求することがすべての場合に機能するわけではありませんが、この場合、ユーザーをある程度制御できるように見えます(つまり、ユーザーに何かをインストールするように指示できます)。
では、なぜ [〜#〜] xmpp [〜#〜] を使用しないのですか?注文ごとに通知を送信します。
Free/libre clients は、すべてのシステム(デスクトップ、モバイル、さらにはWebページ)にあります。そして、ユーザー(特に企業)は、通知を受けたい(ポップアップ、サウンドなど)方法を完全に制御できます。
利用可能なすべての通信チャネルが同時にユーザーの注意を引き付けることを試みているわけではないことが重要だと思います。さもなければ、それは本当に迷惑になります(Webページの点滅、スマートフォンの振動、音による警告)。
(通常は組み込まれている)優先度およびプレゼンス情報システムのおかげで、ユーザーが現在アクティブな場所に通知を常に簡単に送信できます(XMPPサーバーがこれを自動的に処理します)。
モバイル通知のカスタムサウンドを設定して、ユーザーがそれが重要でないSMS /メール/ソーシャルネットワーク通知などであると思わないようにします。 (トイレでも即反応!).
ユーザーがいつ通知に反応したかをシステムが知っていると思いますので、通知が成功したかどうかを自動的に判断できます。システムがそれを特定できない場合は、ユーザーがすべての通知を手動で(たとえば、Webページでチェックマークを付けることによって)確認する必要があります。クライアントは、通知の送信先に応じて、ユーザーが新しいメッセージを開くとすぐにそれを自動的に実行します。
通知が本当に重要である場合は、次のXMPP拡張機能を確認してください。
XEP-0224:Attention :ユーザーの注意を引きます(a Nudge ):
(最新のプレゼンススタンザで述べたように)クライアントが使用できる場合でも、このクライアントが属するユーザーは、現在クライアントに集中しているとは限りません。 Kinesthetic Excitation(POKE)によって取得されるプレゼンスは、ユーザーのプレゼンスの物理的テストの方法を定義します。これには、利用可能であると想定できない特別なハードウェアが必要であるため、このXEPは、直接フィードバックが期待されないソフトウェアのみの実装を定義します。この機能は、一部の非XMPP IMプロトコルでは「ナッジ」または「バズ」として知られています。
XEP-0132:Kinesthetic Excitation(POKE)を介して取得される存在 :ユーザーが物理的に存在するかどうかを確認します(もちろん、追加のハードウェアが必要です):
XMPP CoreおよびXMPP IMは、個人のネットワークに関する情報を交換する方法を定義しますXML
<presence/>
スタンザによる可用性。通常、このようなプレゼンス情報は、ユーザーがクライアントとの対話を開始したときにのみ生成されますが、自動離席などの機能を使用してプログラムで生成することもできます。ただし、ユーザーがクライアントの近くにいて、クライアントインターフェイスに積極的に関与していない場合があります。そのような状況では、<presence type='probe-irl'/>
と呼ばれることもあるメカニズムを用意すると便利です。つまり、ユーザーの物理的な存在を判断する実際の手段を呼び出すことができます。このドキュメントでは、まさにそのようなメカニズムを定義しています。