(58)【調査した分野】(Int.Cl.,DB名)
請求項1に記載の方法であって、さらに、フロートアウトメッセージが前記受信者に送信される準備ができており、前記フロートアウトメッセージの前記受信者の前記現在のステータスがオフラインである場合に、前記フロートアウトメッセージを格納することを備える、方法。
請求項7に記載の疲労制御ベース・メッセージフロートアウト方法であって、前記識別値の更新は、定期的にトリガされる、または、前記フロートアウトメッセージを前記受信者にプッシュ通知した後に送信成功応答を受信した際にトリガされる、方法。
請求項12に記載の方法であって、前記識別値の更新は、定期的にトリガされる、または、前記フロートアウトメッセージの前記フロートアウト後にトリガされる、方法。
請求項1に記載の方法において、前記疲労状態は、前記疲労期間の終了の後に前記受信者にプッシュされるために前記受信者に対して送信されるべきフロートアウトメッセージが格納されている状態に対応する、方法。
【発明を実施するための形態】
【0012】
本発明は、処理、装置、システム、物質の組成、コンピュータ読み取り可能な格納媒体上に具現化されたコンピュータプログラム製品、および/または、プロセッサ(プロセッサに接続されたメモリに格納および/またはそのメモリによって提供される命令を実行するよう構成されたプロセッサ)を含め、様々な形態で実装されうる。本明細書では、これらの実装または本発明が取りうる任意の他の形態を、技術と呼ぶ。一般に、開示された処理の工程の順序は、本発明の範囲内で変更されてもよい。特に言及しない限り、タスクを実行するよう構成されるものとして記載されたプロセッサまたはメモリなどの構成要素は、ある時間にタスクを実行するよう一時的に構成された一般的な構成要素として、または、タスクを実行するよう製造された特定の構成要素として実装されてよい。本明細書では、「プロセッサ」という用語は、1または複数のデバイス、回路、および/または、コンピュータプログラム命令などのデータを処理するよう構成された処理コアを指すものとする。
【0013】
以下では、本発明の原理を示す図面を参照しつつ、本発明の1または複数の実施形態の詳細な説明を行う。本発明は、かかる実施形態に関連して説明されているが、どの実施形態にも限定されない。本発明の範囲は、特許請求の範囲によってのみ限定されるものであり、多くの代替物、変形物、および、等価物を含む。以下の説明では、本発明の完全な理解を提供するために、多くの具体的な詳細事項が記載されている。これらの詳細事項は、例示を目的としたものであり、本発明は、これらの具体的な詳細事項の一部または全てがなくとも特許請求の範囲に従って実施可能である。簡単のために、本発明に関連する技術分野で周知の技術要素については、本発明が必要以上にわかりにくくならないように、詳細には説明していない。
【0014】
ユーザ疲労の評価に基づいてフロートアウトメッセージを制御するための技術を開示する。本明細書で用いられているように、ユーザ疲労とは、ユーザが多くのフロートアウトメッセージを受信するほどフロートアウトメッセージの効果が減少することを指す。ユーザは、例えば、受信したフロートアウトメッセージの数が単位時間内で所定の閾値を超えた場合に疲労したとみなされる。疲労期間が、単位時間と一致しうる。以下の開示は、疲労期間と、疲労期間内のフロートアウトメッセージ数の制限とを予め設定し、疲労レベルを示すために用いられる識別値を設定することに関する。例えば、識別値は、受信者が現在疲労状態にあると見なされるか否か、または、受信者が持つと見なされる疲労のレベルを示すために用いることができる。識別値は、単位時間内のフロートアウトメッセージ数の制限に基づいて更新され、単位時間内のフロートアウトメッセージ数の制限は、受信されたフロートアウトメッセージの数、疲労期間、および、メッセージ数の制限に基づいて決定される。したがって、各フロートアウトタスク中に、ユーザに対してメッセージフロートアウトの疲労制御を実施するために、ユーザが現在疲労状態にあると見なされるか否かの判定が、識別値に基づいてなされる。
【0015】
疲労制御ベース・メッセージフロートアウト方法を開示するために、疲労制御ベース・メッセージフロートアウトシステムの構成を開示する。この構成は、本願の記載を助けるよう意図されているに過ぎず、本願の範囲を限定するものではない。
【0016】
図1は、ユーザ疲労の評価に基づいてメッセージフロートアウトを制御するメッセージングシステムの一実施形態を示す概略図である。システム100は、ネットワーク150を通してサーバ110に接続されたインスタントメッセージングクライアント120を含む。サーバ110は、サーバ疲労制御モジュール130を備え、インスタントメッセージングクライアント120は、クライアント疲労制御モジュール140を備える。
【0017】
いくつかの実施形態では、管理者が、サーバ110上の管理インターフェースを用いて、個々のユーザの疲労期間、疲労期間内のフロートアウトメッセージ数の制限、フロートアウトメッセージの優先レベル、フロートアウトメッセージの具体的内容、および/または、その他の適切な構成パラメータを設定できる。いくつかの実施形態において、管理者は、サーバ110以外のマシンからリモートで、個々のユーザの疲労期間、疲労期間内のフロートアウトメッセージ数の制限、フロートアウトメッセージの優先レベル、フロートアウトメッセージの具体的内容、および/または、その他の適切な構成パラメータを設定できる。いくつかの実施形態において、管理者は、フロートアウトメッセージに関連するユーザクリックおよび閲覧情報を用いて、疲労期間、疲労期間内のフロートアウトメッセージ数の制限、フロートアウトメッセージの優先レベル、および、フロートアウトメッセージの具体的内容を決定することもできる。例えば、管理者は、フロートアウトメッセージがアクセスされた時に記録されたアクセスログを見て、ユーザがフロートアウトメッセージに関心を示す典型的な時間の長さ、および、ユーザが関心を示すフロートアウトメッセージの種類を決定する。このように、管理者は、関連する疲労期間、疲労期間内のフロートアウトメッセージ数の制限、および、フロートアウトメッセージの優先レベルを設定できる。関連する疲労期間、疲労期間内のフロートアウトメッセージ数の制限、および、フロートアウトメッセージの優先レベルは、メッセージデータベースに格納されうる。
【0018】
初期化時に、サーバ110上のサーバ疲労制御モジュール130は、ユーザが制御モジュール130によって現在疲労状態にあると見なされるか否かを示す識別値を設定する。ユーザの識別値は、データベース内のフィールドに格納されてよく、識別値は、設定された疲労期間、フロートアウトメッセージ数の制限、および、すでに受信済みのフロートアウトメッセージの数に基づいて更新される。例えば、識別値は、単位時間内のフロートアウトメッセージ数の制限に基づいて更新される。サーバ110は、フロートアウトメッセージをプッシュ通知するのに望ましい受信者の属性に基づいて、フロートアウトメッセージをプッシュ通知される受信者を選択し、サーバ疲労制御モジュール130によって更新された識別値に基づいて、フロートアウトメッセージを受信者にプッシュ通知する。
【0019】
サーバ110上で実行される疲労制御は、インスタントメッセージングクライアント120でも実行されうることがわかる。換言すると、インスタントメッセージングクライアント110のユーザは、疲労期間(例えば、時間の長さ)、および、インスタントメッセージングクライアント110での疲労期間内のフロートアウトメッセージ数の制限を設定できる。初期化後に、インスタントメッセージングクライアント120の疲労制御モジュール140は、疲労レベル値を示す識別値を設定できる。例えば、識別値は、ユーザが現在疲労状態にあるか否かを示す。その後、識別値は、設定された疲労期間、フロートアウトメッセージ数の制限、および、すでに受信済みのフロートアウトメッセージの数に基づいて更新される。例えば、識別値は、単位時間内のフロートアウトメッセージ数の制限に基づいて更新される。フロートアウトメッセージがプッシュ通知されるごとに、疲労制御モジュール140は、フロートアウトメッセージがプッシュ通知される前に、識別値に基づいて、フロートアウトメッセージ数の制限に達しているか否かを判定する。
【0020】
図2は、疲労制御ベース・メッセージフロートアウト方法の一実施形態を示すフローチャートである。システム100は、疲労制御ベース・メッセージフロートアウト方法200を実施するために利用できる。この実施形態において、フロートアウトメッセージは、疲労期間内にあると仮定され、ユーザに対して表示される必要のない任意選択的なメッセージである(例えば、広告、推奨投稿など)。したがって、疲労制御ベース・メッセージフロートアウト方法200を実行するサーバが、以下の工程を実行しうる。
【0021】
工程220では、サーバは、特定のフロートアウトメッセージのフロートアウトメッセージプッシュ要件を満たすユーザを選択する。換言すると、ユーザは、送信を待つフロートアウトメッセージの受信者になる。サーバは、ユーザへの送信待機中のフロートアウトメッセージを有しており、ユーザは、現在のフロートアウトメッセージがプッシュ通知される受信者の属性に基づいて、メッセージプッシュ通知受信者データベースから選択される。
【0022】
工程225では、サーバは、ユーザの現在のステータスを判定する。換言すると、サーバは、ユーザがオンラインかオフラインかを判定する。
【0023】
工程230では、ユーザの現在のステータスがオンラインである場合、サーバは、識別値が閾値に達しているか否かを判定する。識別値は、受信者(すなわち、ユーザ)が現在疲労状態にあるか否かを判定するために用いられ、識別値は、単位時間内のフロートアウトメッセージ数の制限に基づいて更新される。
【0024】
いくつかの実施形態において、識別値は、予め設定されたデータベース内のフィールドであり、受信者が現在疲労状態にあるか否かを示すために用いられる。識別値の初期化時に、識別値は、例えば0に設定されてよく、閾値は、例えば3に予め設定されてよい。
【0025】
工程245では、識別値が閾値に達している場合、識別値は、受信者が現在疲労状態にあることを示すため、サーバは、フロートアウトメッセージをプッシュ通知せず、そのフロートアウトメッセージをサーバデータベースに格納する。
【0026】
工程235では、識別値が閾値に達していない場合、識別値は、受信者が現在疲労状態にないことを示すため、サーバは、フロートアウトメッセージを受信者にプッシュ通知し、その結果、フロートアウトメッセージは、受信者に利用できるようになる。
【0027】
この時、さらに、サーバは、例えば1だけ識別値をインクリメントする。例えば、識別値は1から2に増分され、サーバは、工程240において、受信者によって受信されたフロートアウトメッセージの数を更新する。例えば、受信者によって受信されたフロートアウトメッセージの更新後の数は、現在2である。
【0028】
いくつかの実施形態では、各ユーザが、識別値の閾値を有する。識別値が閾値に達した場合(閾値は3などの特定の数である)、識別値は、ユーザが現在疲労状態にあり、さらなるタスクメッセージを全く受信することができず、さらなるメッセージを受信する前に次の疲労期間まで待たなければならないことを示唆する。例えば、識別値が1だけインクリメントされた後に3になった場合、識別値は、閾値である3に達しているため、ユーザが疲労状態にあり、フロートアウトメッセージを受信できないことを示唆する。その後、疲労期間が終わった後、識別値は、単位時間内のフロートアウトメッセージ数の制限に基づいて、サーバ上の疲労制御モジュールによって確認された通りに、0にリセットされる。
【0029】
工程240では、サーバは、単位時間内のフロートアウトメッセージ数の制限に基づいて、識別値を更新する。工程240に記載した識別値の更新は、以下を含む。
【0030】
受信者によって受信されたフロートアウトメッセージの格納済みの数が疲労期間内のフロートアウトメッセージ数の制限にすでに達していることをサーバが発見した場合、ユーザは、疲労状態に達していると見なされ、識別値が更新される。識別値は、次の疲労期間に、0にリセットされうる。受信者によって受信されたフロートアウトメッセージの記録された数が疲労期間内のフロートアウトメッセージ数の制限に達していない場合、サーバは、疲労期間が終了しているか否かを判定する。疲労期間が終了している場合、識別値は、例えば、識別値を0にリセットすることによって更新される。そうでない場合、識別値は更新されない。
【0031】
上述した識別値の更新工程の順序は、上述の記載によって限定されない。識別値の更新は、他の工程の後または実質的に同時に実行されてよい。識別値の更新は、定期的にトリガされてもよいし、受信者へのフロートアウトメッセージの送信後に受信者から送信成功応答を受信した際にトリガされてもよい。例えば、工程235が実行された後、サーバは、クライアントからプッシュ成功応答を受信しうる。その後、サーバは、上述の方法(工程240)で、識別値を更新し、この時点で受信者によって受信されたフロートアウトメッセージの数が疲労期間内のフロートアウトメッセージ数の制限に達しているか否かを判定し、疲労期間が終了しているか否かを判定する。疲労期間が終了していない場合、サーバは、識別値を更新せず、識別値は、現在の値(例えば、1)であり続ける。したがって、サーバ疲労制御モジュール130は、サーバによるフロートアウトメッセージの各プッシュ成功後に識別値が更新されうるか否かを判定してもよいし、一定の時間間隔で識別値が更新されうるか否かを判定してもよい。
【0032】
疲労期間および疲労期間内のフロートアウトメッセージ数の制限はいずれも、サーバ上で予め設定されうることがわかる。いくつかの実施形態において、疲労期間は、動的な時間の値であってよい。いくつかの実施形態において、疲労期間は、予め設定された値に設定されてよい。例えば、疲労期間は、12時間または24時間に設定できる。
【0033】
したがって、以下の工程が、工程220の前に実行されてよい。
【0034】
工程210では、サーバは、ユーザの疲労期間、フロートアウトメッセージ数の制限、および、フロートアウトメッセージの優先レベルを予め設定する。また、フロートアウトメッセージの具体的内容も、予め設定されうる。
【0035】
管理者は、サーバ管理インターフェースを通して、各ユーザに対する疲労期間およびフロートアウトメッセージ数の制限、各フロートアウトメッセージのフロートアウトメッセージ優先レベル、ならびに、各フロートアウトメッセージの具体的内容を設定できる。例えば、このタスクにおけるフロートアウトメッセージについて、疲労期間を12時間に設定することができ、疲労期間内のフロートアウトメッセージ数の制限を3に設定することができる。フロートアウトメッセージは、特定の商品の宣伝広告、新しい販売業者に関する情報、ディスカウント情報などであってよい。フロートアウトメッセージの情報は、メッセージデータベースに格納されうる。
【0036】
工程215では、サーバは、各ユーザの疲労レベルを示す識別値を示すためのデータベースフィールドを設定する。例えば、識別値は、最初に0に設定されうる。
【0037】
サーバのユーザデータベースの管理者インターフェースにおいて、管理者は、ユーザが現在疲労状態にあるか否かを示す疲労レベルを表すための識別値を設定できる。例えば、初期化時に、識別値は、0に設定できる。識別値は、0である場合、ユーザが現在疲労状態にないことを示す。メッセージの各フロートアウトが送信された後、または、周期的な時間の経過後、サーバ疲労制御モジュールは、疲労期間、各ユーザに対するフロートアウトメッセージ数の制限、および、ユーザに対してすでにフロートアウトされたフロートアウトメッセージの数に基づいて、ユーザデータベース内でユーザの疲労レベルを示す識別値を更新することができる。疲労期間が終了している場合、サーバは、識別値を0にリセットすることによって識別値を更新できる。
【0038】
疲労期間、すでに受信されたフロートアウトメッセージの数、フロートアウトメッセージ数の制限の間の対応関係が格納され、識別値および閾値がサーバに記録されうることに注意されたい。疲労レベルを表す識別値も、前述の情報と対応関係を有する。
【0039】
上記の説明は、サーバがフロートアウト待ちのフロートアウトメッセージを有すると共に受信者がログオンしている状況に関連している。以下は、受信者がログインしていないまたはオフラインである状況の説明である。引き続き
図2を参照すると、サーバは、さらに、以下の工程を実行しうる。
【0040】
工程250では、受信者の現在のステータスがオフラインであり、フロートアウトメッセージがフロートアウトまたはプッシュ通知の待機中である場合、サーバは、フロートアウトメッセージをデータベースに格納する。
【0041】
工程255では、サーバは、ユーザがログオンしているか否かを判定する。この工程は、ユーザがログオンするまで繰り返されうる。フロートアウトメッセージプッシュ要件を満たしたユーザがその後にインスタントメッセージングツールにログオンした場合、方法は、以下の工程を含みうる。
【0042】
工程260では、サーバは、ユーザの識別値が閾値に達しているか否かを判定する。
【0043】
工程265では、識別値が閾値に達している場合、フロートアウトメッセージは、フロートアウトまたはプッシュ通知されず、サーバは、フロートアウトメッセージをデータベースに格納し続ける。
【0044】
工程270では、識別値が閾値に達していない場合、識別値は、ユーザが現在疲労状態にないことを示し、サーバは、優先レベルに従って、疲労期間内のフロートアウトメッセージ数の制限に基づいて、フロートアウトメッセージを抽出する。例えば、疲労期間内のフロートアウトメッセージ数の制限が3メッセージであり、ユーザによってすでに受信されたフロートアウトメッセージの記録数が2メッセージであるとする。そうすると、この例においては、まだプッシュ通知できるフロートアウトメッセージの数は1メッセージであるため、1つのフロートアウトメッセージがユーザにプッシュ通知される。
【0045】
上述の工程において、フロートアウトメッセージは、有効期間内にフロートアウトされ、強制的ではないと仮定する。工程225の実行前に、サーバは、フロートアウトメッセージに含まれる時間情報が有効期間内であるか否かを判定してもよい。フロートアウトメッセージが有効期間内である場合、受信者の識別値が閾値に達しているか否かを判定するために、工程225および工程230が実行される。サーバは、フロートアウトメッセージのログを記録しており、ログは、フロートアウトメッセージの有効期間を示すために用いられる時間情報を含むことが理解される。例えば、有効期間は、1週間、3日間、1日、または、1時間に設定されうる。
【0046】
さらに、フロートアウトメッセージの記録されたログは、フロートアウトメッセージのフロートアウトが強制的であるか否かを示す強制情報も含みうる。工程225の後、サーバは、フロートアウトメッセージのフロートアウトが強制的であるか否かを示す情報をフロートアウトメッセージが含むか否かを判定してもよい。例えば、特別割引または重大ニュースなど、特別な提示が受信者になされる場合、メッセージが強制的であると示唆されうる。フロートアウトメッセージのフロートアウトが強制的でない場合、サーバは、受信者の識別値が閾値に達しているか否かを判定する。逆に、フロートアウトメッセージのフロートアウトが強制的である場合、サーバは、識別値にかかわらずフロートアウトメッセージをプッシュ通知する。
【0047】
ユーザに送信されるフロートアウトメッセージはすべて、有効期間と、フロートアウトメッセージが強制的であるか否かを示す情報とを有しうる。フロートアウトメッセージの特徴は、工程210中に管理者によって設定されうる。フロートアウトメッセージが有効期間内にあり、強制的でない場合、工程230後の工程を実行できる。フロートアウトメッセージが有効期間内にない場合、フロートアウトメッセージはフロートアウトされず、また、フロートアウトメッセージが強制的なメッセージである場合、サーバは、フロートアウトメッセージを直接フロートアウトし、疲労制御に対応する工程は実行されない。フロートアウトメッセージが有効期間内にあるか否か、および、強制的でないメッセージであるか否かに関する上述の判定は周知であるため、簡単のためにさらに議論はしない。
【0048】
工程245および265については、識別値がすでに閾値に達しており、受信者が現在疲労状態にあることを示唆しているので、サーバは、受信者が次の疲労期間に入った時に受信者にフロートアウトされるのを待つメッセージを格納する。例えば、サーバは識別値を定期的に更新し、識別値が更新された後、ユーザの現在のステータスがオンラインであるとサーバが判定した場合、サーバは、フロートアウトメッセージの優先レベルおよび疲労期間内のフロートアウトメッセージ数の制限に従って、フロートアウトメッセージをプッシュ通知する。例えば、高い優先レベルを有するメッセージは、中程度または低い優先レベルを有するメッセージより前にプッシュ通知される。
【0049】
一貫してオンラインではないユーザについて、2つの状況を説明した。一定期間より長くオンライン状態である長期オンラインユーザについて、サーバ疲労制御モジュールは、ユーザの疲労レベルを決定するために、ユーザデータベースから識別値を定期的に読み出す。識別値が0にリセットされた後、サーバは、フロートアウトメッセージをユーザにプッシュ通知する。
【0050】
したがって、疲労制御ベース・メッセージフロートアウト方法は、フロートアウトメッセージの受信者に対する疲労期間と疲労期間内のフロートアウトメッセージ数の制限との設定に基づいて、ユーザに対してフロートアウトメッセージの疲労制御を実施すると共に、ユーザがオフラインである間に受信すべき複数のフロートアウトメッセージがあった場合、許容疲労期間内に、関心のあるおよび/または重要なフロートアウトメッセージをユーザが受信することを可能にするために、フロートアウトメッセージの優先レベルを用いる。
【0051】
メッセージフロートアウトの疲労制御は、上述のようにサーバによって実施されてよく、また、疲労制御はインスタントメッセージングクライアント上で実施されてもよい。
【0052】
図3は、疲労制御ベース・メッセージフロートアウト方法の一実施形態を示すフローチャートである。疲労制御ベース・メッセージフロートアウト方法300は、インスタントメッセージングクライアントを対象とする。インスタントメッセージングクライアントの起動後、インスタントメッセージングクライアントは、以下の工程を実施する。
【0053】
工程310では、インスタントメッセージングクライアントは、フロートアウトメッセージを受信する。
【0054】
工程320では、インスタントメッセージングクライアントは、識別値が閾値に達しているか否かを判定する。識別値は、受信者が現在疲労状態にあるか否かを示すために用いられ、疲労期間内のフロートアウトメッセージ数の制限に基づいて更新される。
【0055】
識別値は、ユーザの疲労レベルを示すフィールドであることが理解される。フィールドは、ユーザがインスタントメッセージングクライアントを登録した時にすでに設定済みでありうる。例えば、インスタントメッセージングクライアントの登録時に、識別値に対応するフィールドは0に設定されうる。識別値は、0である時、ユーザが現在疲労状態にないことを示す。各フロートアウトメッセージがプッシュ通知された後、または、定期的に、インスタントメッセージングクライアントのクライアント疲労制御モジュールは、疲労期間、疲労期間内のフロートアウトメッセージ数の制限、および、ユーザによってすでに受信されたフロートアウトメッセージ数に基づいて、ユーザの疲労を示す識別値を更新する。疲労期間の終了後、識別値の更新は、例えば、0に識別値をリセットする。
【0056】
また、疲労期間および疲労期間内のフロートアウトメッセージ数の制限は、インスタントメッセージングクライアント上でユーザによって予め設定されうることが理解される。例えば、インスタントメッセージングクライアントが初期化された後、ユーザが、適切であると考えられる疲労期間(例えば、10時間)を設定し、ユーザが10時間の疲労期間中に受信できるフロートアウトメッセージ数の制限が、例えば、3メッセージであるとする。換言すると、フロートアウトメッセージ数の制限は、疲労期間中に受信されるフロートアウトメッセージの最大数が3であることを示しており、識別値の更新は、疲労期間内のフロートアウトメッセージ数の制限に基づいて実行される。識別値の閾値は、対応するフロートアウトメッセージ数の制限に従って設定される。例えば、閾値は、2に設定されうる。
【0057】
工程350では、識別値が閾値に達していない場合、識別値は、受信者が現在疲労状態にないことを示し、フロートアウトメッセージは、受信者にフロートアウトされる。
【0058】
工程350の完了後、インスタントメッセージングクライアントは、識別値に値(例えば、1)を加算し、すでに受信されたフロートアウトメッセージの数を記録する。
【0059】
例えば、インスタントメッセージングクライアントが、これまでに1つのフロートアウトメッセージを受信したとする。疲労期間、すでに受信されたフロートアウトメッセージ、フロートアウトメッセージ数の制限の間の対応関係が格納されており、それに応じて識別値および閾値がクライアントに記録されていることに注意されたい。この識別値と上述の情報との間の対応関係も存在する。
【0060】
例えば、識別値の初期値は0である。現時点で、フロートアウトメッセージが受信されているので、識別値はインクリメントされる。識別値に1が加算された後、識別値は1になる。同時に、インスタントメッセージングクライアントは、受信したフロートアウトメッセージの数(すなわち、1)も記録する。クライアント疲労制御モジュールは、メッセージの各フロートアウトの後に識別値を更新するか否かを判定するので、この時、クライアント疲労制御モジュールは、この疲労期間に受信したフロートアウトメッセージの数(すなわち、1)がフロートアウトメッセージ数の制限(例えば、3)に達していないと判定する。したがって、識別値は、更新される必要がない。
【0061】
工程330では、識別値が閾値に達している場合、識別値は、受信者が現在疲労状態にあることを示し、フロートアウトメッセージは、ローカルデータベースに格納される。
【0062】
例えば、インスタントメッセージングクライアントは、識別値が2であり、閾値に達していると判定し、したがって、フロートアウトメッセージをローカルデータベースに格納する。その後、インスタントメッセージングクライアントは、クライアント疲労制御モジュールによる識別値の更新を待つ。例えば、インスタントメッセージングクライアントは、次の疲労期間を待つことができる。次の疲労期間に入るのを待つ間に、クライアントが3つのさらなるフロートアウトメッセージを受信すると仮定する。換言すると、この時点で、インスタントメッセージングクライアントは、フロートアウトに向けて格納された合計4つのフロートアウトメッセージを持つ。本方法の実施中、クライアント疲労制御モジュールは、フロートアウトメッセージが受信されるごとに、疲労期間が終了したか否かを判定するようトリガされうる、もしくは、疲労期間が終了したか否かを定期的に判定しうる。例えば、クライアント疲労制御モジュールは、疲労期間が終了したか否かを5分間隔で判定してよい。疲労期間が終了した場合、識別値は、0にリセットされるよう更新され、方法は、次の疲労期間に入る。この時点で、方法が次の疲労期間に入ると、フロートアウトメッセージの数は0と記録され、メッセージ数の制限は3であり、識別値は0である。新たに次の疲労期間に入ると、インスタントメッセージングクライアントは、さらに以下の工程を実行しうる。
【0063】
工程340では、格納されたフロートアウトメッセージは、メッセージの優先レベルと、疲労期間内のフロートアウトメッセージ数の制限とに従ってフロートアウトされる。
【0064】
フローアウトメッセージは、優先レベル情報を含んでおり、インスタントメッセージングクライアントは、フロートアウトメッセージの優先レベルに基づいて、疲労期間内のフロートアウトメッセージの制限の範囲内で、優先レベルに従ってフロートアウトメッセージをフロートアウトする。この例では、現在、4つのメッセージがフロートアウトの待機中であるが、この疲労期間の単位時間中にフロートアウトを許可されているのは3つのメッセージのみであるため、上位の優先レベルを持つ3つのメッセージが、優先レベルに従ってフロートアウトされ、最下位の優先レベルを持つフロートアウトメッセージは保存または消去される。インスタントメッセージングクライアントによって各フロートアウトメッセージがフロートアウトされると、識別値が更新されるべきか否かを、クライアント疲労制御モジュールが判定することが理解される。また、この時、インスタントメッセージングクライアントは、すでにフロートアウトされたフロートアウトメッセージの数を記録し、メッセージがフロートアウトされるごとに、例えば1を識別値に加算する。この方法は、クライアントがオンラインである間、同様に繰り返される。
【0065】
このように、フロートアウトメッセージの更新は、定期的にトリガされてもよいし、フロートアウトメッセージのフロートアウト後にトリガされてもよい。工程360で、インスタントメッセージングクライアントは、工程350でフロートアウトメッセージをフロートアウトした後に識別値を更新する。識別値の更新は、疲労期間内のフロートアウトメッセージ数の制限に基づいて実行される。別の例において、識別値の更新は以下を含む:受信されたフロートアウトメッセージの数が疲労期間内のフロートアウトメッセージ数の制限にすでに達している場合、ユーザは疲労状態にあり、識別値が更新される。逆に、受信されたフロートアウトメッセージの数がメッセージ数の制限に達していない場合、インスタントメッセージングクライアントは、疲労期間が終了しているか否かを判定する。疲労期間が終了している場合、識別値は更新される。疲労期間が終了していない場合、識別値は更新されない。
【0066】
したがって、疲労制御ベース・メッセージフロートアウト方法は、インスタントメッセージングクライアントに対する疲労制御の積極的な設定を実施し、それにより、ユーザは、疲労期間と、疲労期間内のフロートアウトメッセージ数の制限とを設定できる。疲労期間と、フロートアウトメッセージ数の制限とを設定することにより、ユーザが一定期間内に受信できるフロートアウトメッセージの数を制御できるようになる。また、ユーザがインスタントメッセージングクライアントにログオンした時に、複数のフロートアウトメッセージがフロートアウトに向けて受信される必要がある場合、フロートアウトメッセージの優先レベルを用いて、フロートアウトメッセージの優先レベルに基づいて重要および関心のあるメッセージがフロートアウトされる。
【0067】
図4は、疲労制御ベースメッセージフロートアウトサーバの一実施形態を示す概略図である。疲労制御ベース・メッセージフロートアウトサーバ400は、疲労判定ユニット410と、フロートアウトユニット420と、疲労制御ユニット430と、データベース440と、更新ユニット450と、を備える。
【0068】
疲労判定ユニット410は、フロートアウトメッセージがフロートアウトの待機中であり、フロートアウトメッセージの受信者の現在のステータスがオンラインである場合に、受信者の識別値が閾値に達しているか否かを判定するよう構成されている。識別値は、受信者が現在疲労状態にあるか否かを示すために用いられ、単位時間内のフロートアウトメッセージ数の制限に基づいて更新される。単位時間は、疲労期間でありうる。
【0069】
フロートアウトユニット420は、識別値が閾値に達していない場合に、フロートアウトメッセージを受信者に送信して、フロートアウトメッセージを受信者がフロートアウトできるようにするよう構成されている。閾値に達していない識別値は、受信者が現在疲労状態にないことを示す。
【0070】
疲労制御ベースメッセージフロートアウトサーバは、さらに、疲労制御ユニット430を備えうる。疲労制御ユニット430は、単位時間内のフロートアウトメッセージ数の制限に基づいて、識別値を更新するよう構成されている。単位時間は、疲労期間でありうる。
【0071】
管理者は、疲労制御ベースメッセージフロートアウトサーバ上のデータベース440内の疲労期間、各ユーザのフロートアウトメッセージ数の制限、各フロートアウトメッセージの優先レベル、および、各フロートアウトメッセージの具体的内容を予め設定できる。例えば、メッセージの疲労期間は12時間に設定されてよく、フロートアウトメッセージ数の制限は3に設定されてよく、フロートアウトメッセージの具体的内容は、特定の商品の宣伝広告、新しい販売業者に関する情報、または、ディスカウント情報であってよい。具体的内容は、データベース440に格納されうる。データベース440内には、疲労のレベルを表す識別値が格納されてよく、サーバは、データベース440内に各ユーザの疲労レベルを示す識別値を格納する。例えば、初期化時に、フィールド値は、0に設定される。識別値は、0である時には、ユーザが現在疲労状態にないことを示し、更新ユニット450は、疲労期間、フロートアウトメッセージ数の制限、および、ユーザに対してすでにフロートアウトされたフロートアウトメッセージの数に基づいて、識別値を更新するよう構成されている。例えば、更新ユニット450は、識別値を0にリセットする。
【0072】
ユーザに対してすでにフロートアウトされたフロートアウトメッセージの数がフロートアウトメッセージ数の制限に達したと、疲労制御ユニット430が判定した場合、その後に、疲労期間に達すると、更新ユニット450は、例えば0に疲労値を更新する。ユーザに対してすでにフロートアウトされたフロートアウトメッセージの数は、ユーザによって受信されたフロートアウトメッセージの数であり、各フロートアウトメッセージがフロートアウトされた後に疲労制御ベース・メッセージフロートアウトサーバによってデータベースに記録される。ユーザに対してすでにフロートアウトされたフロートアウトメッセージの数がフロートアウトメッセージ数の制限に達していない場合、疲労制御ユニット430は、ユーザの疲労期間が終了しているか否かを判定する。疲労期間が終了している場合、疲労期間は更新される。例えば、識別値は、0にリセットされる。疲労期間が終了していない場合、識別値は更新されない。
【0073】
疲労制御ユニット430は、さらに、受信されたフロートアウトメッセージの記録された数が疲労期間内のフロートアウトメッセージ数の制限にすでに達している場合、ユーザが疲労状態にあると判定されるため、識別値を更新するよう構成されている。受信されたフロートアウトメッセージの記録された数がメッセージ数の制限に達していない場合、疲労制御ユニット430は、疲労期間が終了しているか否かを判定する。疲労期間が終了している場合、疲労制御ユニット430は、識別値を更新する。疲労期間が終了していない場合、疲労制御ユニット430は、識別値を更新しない。
【0074】
いくつかの実施形態において、疲労制御ユニット430は、定期的にトリガされる。いくつかの実施形態において、疲労制御ユニット430は、フロートアウトユニット420がフロートアウトメッセージを受信者に送信した後に、送信成功応答を受信した際にトリガされる。
【0075】
疲労期間の持続時間は、動的な値であってよく、疲労期間は、例えば、12時間または24時間などの持続時間を有してよい。例えば、疲労期間が12時間に設定された場合、疲労期間は、動的な12時間の期間である。
【0076】
各ユーザに対して、識別値の閾値が設定される。識別値が閾値に達した場合、ユーザは現在疲労状態にあり、さらなるメッセージを全く受信することができない。疲労制御ベースメッセージフロートアウトサーバ400は、次の疲労期間を待って、格納されたメッセージを送信する。例えば、識別値が、1を加算することによって更新され、現在3になった場合、その識別値は、ユーザが現在疲労状態にあり、タスクメッセージを受信できないことを示す。次の疲労期間の初めに、疲労制御ベースメッセージフロートアウトサーバ400は、識別値を0にリセットすることによって識別値を更新し、疲労制御ユニット430は、疲労期間内のフロートアウトメッセージ数の制限に基づいて、識別値を確認する。
【0077】
疲労判定ユニット410は、さらに、識別値が閾値に達している(この時、識別値は、受信者が現在疲労状態にあることを示す)場合に、フロートアウトメッセージを格納するよう構成されている。別の例において、フロートアウトメッセージがフロートアウトの待機中であり、フロートアウトメッセージの受信者の現在のステータスがオフラインである場合に、疲労制御ベースメッセージフロートアウトサーバ400は、フロートアウトメッセージを格納する。
【0078】
さらに、疲労判定ユニット410は、フロートアウトメッセージの受信者の現在のステータスがオフラインであった後の最初のログインの際に、受信者の識別値が閾値に達しているか否かを判定するよう構成されている。
【0079】
フロートアウトユニット420は、識別値が閾値に達していない場合に、フロートアウトメッセージの優先レベルと、疲労期間内のフロートアウトメッセージ数の制限とに従ってフロートアウトメッセージをフロートアウトするよう構成されている。その識別値は、受信者が現在疲労状態にないことを示す。
【0080】
さらに、疲労判定ユニット410は、フロートアウトメッセージのログに含まれる時間情報が有効期間内であるか否かを最初に判定するよう構成されている。時間情報が有効期間内である場合、疲労制御ベースメッセージフロートアウトサーバ400は、受信者の識別値が閾値に達しているか否かを判定する。疲労制御ベース・メッセージフロートアウトサーバ400は、フロートアウトメッセージのログを保持しており、ログは、フロートアウトメッセージの有効期間と比較されるために用いられる時間情報を含むことが理解される。
【0081】
さらに、フロートアウトメッセージのログは、フロートアウトメッセージのフロートアウトが強制的であるか否かを判定するために用いられる強制情報も含む。疲労判定ユニット410は、さらに、フロートアウトメッセージのフロートアウトが強制的であるか否かについての情報をフロートアウトメッセージが含むか否かを最初に判定するよう構成されている。フロートアウトメッセージのフロートアウトが強制的でない場合、疲労判定ユニット410は、受信者の識別値が閾値に達しているか否かを判定するよう構成されている。
【0082】
したがって、疲労期間、フロートアウトメッセージの優先レベル、および、フロートアウトメッセージ数の制限に基づいて、ユーザのためにフロートアウトメッセージの疲労制御を実行することにより、本願は、ユーザが、許容疲労期間内に、関心のあるおよび重要なフロートアウトメッセージを受信することを可能にする。
【0083】
図5は、疲労制御ベース・インスタントメッセージングクライアントの一実施形態を示す概略図である。疲労制御ベース・インスタントメッセージングクライアント500は、疲労判定ユニット510と、フロートアウトユニット520と、疲労制御ユニット530と、データベース540と、を備える。
【0084】
疲労判定ユニット510は、フロートアウトメッセージが受信された場合に、識別値が閾値に達しているか否かを判定するよう構成されている。識別値は、フロートアウトメッセージの受信者が現在疲労状態にあるか否かを示し、単位時間内のフロートアウトメッセージ数の制限に基づいて更新される。
【0085】
フロートアウトユニット520は、識別値が閾値に達していない場合に、フロートアウトメッセージをフロートアウトするよう構成されている。閾値に達していない識別値は、受信者が現在疲労状態にないことを示す。
【0086】
フロートアウトユニット520は、さらに、例えば1を識別値に加算すると共に、受信されたフロートアウトメッセージの数を記録するよう構成されている。
【0087】
この時、疲労制御ベース・インスタントメッセージングクライアント500は、疲労期間内にすでに受信されたフロートアウトメッセージの数(例えば、1つのフロートアウトメッセージがこれまでに受信されているとする)を記録する。疲労期間、すでに受信されたフロートアウトメッセージの数、フロートアウトメッセージ数の制限の間の対応関係が格納され、それに従って、識別値および閾値が疲労制御ベース・インスタントメッセージングクライアント500に記録されていることに注意されたい。この識別値と上述の情報との間の対応関係も存在する。
【0088】
例えば、識別値の初期値は、例えば0である。フロートアウトメッセージが受信されているので、1を加算した後、識別値は1になる。同時に、疲労制御ベース・インスタントメッセージングクライアント500は、さらに、受信したフロートアウトメッセージの数を1と記録する。疲労判定ユニット510は、メッセージの各フロートアウト後に識別値が更新されるべきか否かを判定するので、疲労制御ユニット510は、疲労期間中に受信された1つのフロートアウトメッセージがフロートアウトメッセージ数の制限に達したと判定する。例えば、フロートアウトメッセージ数の制限は3であってよい。したがって、識別値は、更新される必要がない。
【0089】
疲労制御ユニット530は、単位時間内のフロートアウトメッセージ数の制限に基づいて、識別値を更新するよう構成されている。例えば、単位時間は、疲労期間でありうる。
【0090】
疲労判定ユニット510は、さらに、識別値が閾値に達している場合に、フロートアウトメッセージを格納するよう構成されている。閾値に達した識別値は、受信者が現在疲労状態にあることを示す。
【0091】
例えば、疲労判定ユニット510は、識別値が2であり、すでに閾値に達していると判定する。したがって、疲労判定ユニット510は、フロートアウトメッセージを一時的にローカルデータベース540に格納し、疲労制御ユニット530による識別値の更新を待つ。換言すると、疲労制御ユニット530は、識別値を更新する前に、次の疲労期間に入るのを待つ。次の疲労期間を待つ間に、疲労制御ベース・インスタントメッセージングクライアント500が、フロートアウトすべきさらなる3つのフロートアウトメッセージを受信すると仮定する。疲労制御ベース・インスタントメッセージングクライアント500は、現在、4つのフロートアウトメッセージを格納している。疲労制御ユニット530は、別のフロートアウトメッセージが受信されるごとに、疲労期間が終了したか否かを判定するようトリガされうる、もしくは、疲労制御ユニット530は、疲労期間が終了したか否かを定期的に(例えば、5分ごとに)判定しうる。疲労期間が終了した場合、識別値は更新(例えば0にリセット)され、次の疲労期間に入る。この時、すでに受信されたフロートアウトメッセージの記録された数は0であり、疲労期間中のフロートアウトメッセージ数の制限は3であり、識別値は0である。
【0092】
したがって、フロートアウトユニット520は、さらに、識別値が更新された後に、フロートアウトメッセージの優先レベルと、疲労期間内のフロートアウトメッセージ数の制限とに従って、格納されたフロートアウトメッセージをフロートアウトするよう構成されている。
【0093】
疲労制御ユニット530は、さらに、受信されたフロートアウトメッセージの記録された数が疲労期間内のフロートアウトメッセージ数の制限にすでに達している場合、識別値を更新するよう構成されている。疲労期間中のフロートアウトメッセージ数の制限に達することにより、受信されたフロートアウトメッセージの記録された数は、ユーザが疲労状態にあることを示す。受信されたフロートアウトメッセージの記録された数がメッセージ数の制限に達している場合、疲労制御ユニット530は、受信者が疲労状態にあると判定し、フロートアウトメッセージを格納する。疲労期間がすでに終了している場合、識別値は更新される。疲労期間が終了していない場合、識別値は更新されない。
【0094】
いくつかの実施形態において、疲労制御ユニット530は、定期的にトリガされる。いくつかの実施形態において、疲労制御ユニット530は、フロートアウトユニット520がフロートアウトメッセージをフロートアウトした後に、クライアントから送信成功応答を受信した際にトリガされる。
【0095】
識別値は、ユーザの疲労レベルを示すために用いられるフィールド値であり、ユーザがインスタントメッセージングクライアントを登録した時にすでに設定されていることが理解される。例えば、登録時に、識別値は、0に設定される。識別値は、0である時、ユーザが現在疲労状態にないことを示す。メッセージの各フロートアウトの後、または、定期的に、インスタントメッセージングクライアントの疲労制御530は、疲労期間、疲労期間内のフロートアウトメッセージ数の制限、および、ユーザによってすでに受信されたフロートアウトメッセージ数に基づいて、疲労レベルを示す識別値を更新する。識別値の更新は、初期値を0にリセットしうる。
【0096】
また、疲労期間および疲労期間内のフロートアウトメッセージ数の制限は、インスタントメッセージングクライアント上でユーザによって予め設定されうることが理解される。例えば、疲労期間および疲労期間内のフロートアウトメッセージ数の制限は、インスタントメッセージングクライアントがインストールされた後に設定されうる。ユーザは、適切であると考えられる疲労期間(例えば、10時間)を設定し、ユーザが10時間の疲労期間中に受信できるフロートアウトメッセージ数の制限は、例えば、3メッセージである。換言すると、ユーザが疲労期間中に受診できるフロートアウトメッセージ数の制限は、疲労期間中に受信されるフロートアウトメッセージの最大数が3であることを示しており、識別値の更新は、疲労期間内のフロートアウトメッセージ数の制限に基づいて実行される。識別値の閾値は、フロートアウトメッセージ数の制限に従って設定される。例えば、閾値は、2に設定される。
【0097】
したがって、疲労制御ベース・インスタントメッセージングクライアント500は、疲労制御の積極的な設定を実施できる。ユーザは、疲労期間および疲労期間内のフロートアウトメッセージ数の制限を設定して、特定の単位時間内に受信するフロートアウトメッセージの数を制御できる。ユーザがインスタントメッセージングクライアントにログインした際に、フロートアウトに向けて受信すべき複数のフロートアウトメッセージがあれば、フロートアウトメッセージは、フロートアウトメッセージの優先レベルに基づいてフロートアウトされる。優先レベルは、重要および関心のあるメッセージをフロートアウトするために用いられる。
【0098】
上述のユニットは、1または複数の汎用プロセッサ上で実行されるソフトウェアコンポーネントとして、特定の機能を実行するよう設計されたプログラム可能論理デバイスおよび/または特定用途向け集積回路などのハードウェアとして、もしくは、それらの組み合わせとして実装することができる。いくつかの実施形態において、ユニットは、コンピュータデバイス(パーソナルコンピュータ、サーバ、ネットワーク装置など)に本発明の実施形態に記載された方法を実行させるための複数の命令など、不揮発性記憶媒体(光学ディスク、フラッシュ記憶装置、携帯用ハードディスクなど)に格納することができるソフトウェア製品の形態で具現化されてよい。ユニットは、単一のデバイス上に実装されてもよいし、複数のデバイスにわたって分散されてもよい。ユニットの機能は、互いに統合されてもよいし、複数のサブユニットにさらに分割されてもよい。
【0099】
本明細書に開示の実施形態に照らして説明した方法またはアルゴリズム工程は、ハードウェア、プロセッサによって実行されるソフトウェアモジュール、または、両方の組み合わせを用いて実施されうる。ソフトウェアモジュールは、ランダムアクセスメモリ(RAM)、メモリ、読み出し専用メモリ(ROM)、電気的プログラム可能ROM、電気的消去可能プログラム可能ROM、レジスタ、ハードドライブ、リムーバブルディスク、CD−ROM、または、任意の他の形態の当業者に周知の記憶媒体内にインストールされてよい。
【0100】
上述の実施形態は、理解しやすいようにいくぶん詳しく説明されているが、本発明は、提供された詳細事項に限定されるものではない。本発明を実施する多くの代替方法が存在する。開示された実施形態は、例示であり、限定を意図するものではない。
適用例1:フロートアウトメッセージを制御するための方法であって、受信者への送信の準備ができたフロートアウトメッセージがある場合に、前記フロートアウトメッセージの前記受信者の現在のステータスを判定し、前記受信者の前記現在のステータスがオンラインである場合に、1または複数のプロセッサを用いて、前記受信者の識別値が閾値に達しているか否かを判定することを含む前記フロートアウトメッセージが前記受信者に送信されるべきか否かの判定を行い、前記識別値は、前記受信者が現在疲労状態にあると見なされるか否か、または、前記受信者が持つと見なされる疲労のレベルを示すために用いられ、前記識別値が前記閾値に達していない場合に、前記受信者がフロートアウトできるように前記フロートアウトメッセージを前記受信者にプッシュ通知し、前記識別値を更新すること、を備える、方法。
適用例2:適用例1に記載の方法であって、さらに、前記識別値が前記閾値に達している場合に、前記フロートアウトメッセージを格納することを備える、方法。
適用例3:適用例1に記載の方法であって、さらに、前記受信者によって受信されたフロートアウトメッセージの数を記録することを備える、方法。
適用例4:適用例1に記載の方法であって、さらに、フロートアウトメッセージが前記受信者に送信される準備ができており、前記フロートアウトメッセージの前記受信者の前記現在のステータスがオフラインである場合に、前記フロートアウトメッセージを格納することを備える、方法。
適用例5:適用例4に記載の方法であって、さらに、前記識別値の更新の前に、疲労期間、前記疲労期間内のフロートアウトメッセージ数の制限、および、前記フロートアウトメッセージの優先レベルを設定し、前記フロートアウトメッセージの前記受信者の前記現在のステータスがオフラインであった後の最初のログイン時に、前記受信者の前記識別値が前記閾値に達しているか否かを判定し、前記識別値が前記閾値に達していない場合に、前記メッセージの優先レベルと、前記疲労期間内の前記フロートアウトメッセージ数の制限とに従って、前記フロートアウトメッセージを前記受信者に送信し、前記識別値は、前記受信者が現在疲労状態にないと見なされることを示すこと、を備える、方法。
適用例6:適用例1に記載の方法であって、さらに、前記フロートアウトメッセージのログを記録し、前記ログは、前記フロートアウトメッセージの有効期間を表すために用いられる時間情報を含み、前記フロートアウトメッセージの前記ログの前記時間情報が前記有効期間内にあるか否かを判定すること、を備え、前記受信者の前記識別値が前記閾値に達しているか否かの判定は、前記フロートアウトメッセージが前記有効期間内にある場合にが実行される、方法。
適用例7:適用例1に記載の方法であって、さらに、前記フロートアウトメッセージのログを記録し、前記ログは、前記フロートアウトメッセージのフロートアウトが強制的であるか否かを示すために用いられる強制情報を含み、前記フロートアウトメッセージの前記ログの前記強制情報が、前記フロートアウトメッセージのフロートアウトが強制的であることを示すか否かを判定し、前記フロートアウトメッセージが強制的でないことを前記強制情報が示す場合に、前記受信者の前記識別値が前記閾値に達しているか否かを判定すること、を備える、方法。
適用例8:適用例3に記載の疲労制御ベース・メッセージフロートアウト方法であって、さらに、前記識別値の更新の前に、疲労期間、および、前記疲労期間内のフロートアウトメッセージ数の制限を設定することを備え、前記識別値の更新は、前記受信者によって受信されたフロートアウトメッセージの前記記録された数が前記メッセージ数の制限に達している場合に、前記識別値を更新し、前記受信者によって受信されたフロートアウトメッセージの前記記録された数が前記メッセージ数の制限に達していない場合に、前記疲労期間が終了しているか否かを判定し、前記疲労期間が終了している場合に、前記識別値を更新すること、を備える、方法。
適用例9:適用例8に記載の疲労制御ベース・メッセージフロートアウト方法であって、前記識別値の更新は、定期的にトリガされる、または、前記フロートアウトメッセージを前記受信者にプッシュ通知した後に送信成功応答を受信した際にトリガされる、方法。
適用例10:フロートアウトメッセージを制御する方法であって、フロートアウトメッセージが受信された場合に、1または複数のプロセッサを用いて、識別値が閾値に達しているか否かを判定し、前記識別値は、前記フロートアウトメッセージの受信者が現在疲労状態にあると見なされるか否か、または、前記受信者が持つと見なされる疲労のレベルを示すために用いられ、前記識別値が前記閾値に達していない場合に、前記フロートアウトメッセージをフロートアウトし、前記識別値は、前記受信者が現在疲労状態にないことをし、前記識別値を更新すること、を備える、方法。
適用例11:適用例10に記載の方法であって、さらに、前記識別値が前記閾値に達している場合に、前記フロートアウトメッセージを格納することを備える、方法。
適用例12:適用例10に記載の方法であって、さらに、受信されたフロートアウトメッセージの数を記録することを備える、方法。
適用例13:適用例11に記載の方法であって、さらに、前記識別値の更新の前に、疲労期間、前記疲労期間内のフロートアウトメッセージ数の制限、および、前記フロートアウトメッセージの優先レベルを設定し、前記識別値の更新後に、前記優先レベルと、前記疲労期間内の前記フロートアウトメッセージ数の制限とに従って、前記格納されたフロートアウトメッセージをフロートアウトすること、を備える、方法。
適用例14:適用例12に記載の方法であって、さらに、前記識別値の更新の前に、疲労期間、および、前記疲労期間内のフロートアウトメッセージ数の制限を設定することを備え、前記識別値の更新は、前記受信フロートアウトメッセージの前記記録された数が前記疲労期間内の前記フロートアウトメッセージ数の制限に達している場合に、前記識別値を更新し、前記フロートアウトメッセージ数の制限に達した前記受信フロートアウトメッセージの前記記録された数は、前記受信者が現在疲労状態にあると見なされることを示し、前記受信フロートアウトメッセージの前記記録された数が前記疲労期間内の前記フロートアウトメッセージ数の制限に達していない場合に、前記疲労期間が終了しているか否かを判定し、疲労期間が終了している場合に、前記識別値を更新すること、を含む、方法。
適用例15:適用例14に記載の方法であって、前記識別値の更新は、定期的にトリガされる、または、前記フロートアウトメッセージの前記フロートアウト後にトリガされる、方法。
適用例16: フロートアウトメッセージを制御するためのシステムであって、少なくとも1つのプロセッサであって、受信者への送信の準備ができたフロートアウトメッセージがある場合に、前記フロートアウトメッセージの前記受信者の現在のステータスを判定し、前記受信者の前記現在のステータスがオンラインである場合に、前記受信者の識別値が閾値に達しているか否かを判定して、前記フロートアウトメッセージが前記受信者に送信されるべきか否かを判定し、前記識別値は、前記受信者が現在疲労状態にあると見なされるか否か、または、前記受信者が持つと見なされる疲労のレベルを示すために用いられ、前記識別値が前記閾値に達していない場合に、前記受信者がフロートアウトできるように、前記フロートアウトメッセージを前記受信者にプッシュ通知し、前記識別値を更新するよう構成されている、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに接続され、前記少なくとも1つのプロセッサに命令を提供するよう構成されているメモリと、を備える、システム。
適用例17:フロートアウトメッセージを制御するためのインスタントメッセージングクライアントであって、少なくとも1つのプロセッサであって、フロートアウトメッセージが受信された場合に、識別値が閾値に達しているか否かを判定し、前記識別値は、前記フロートアウトメッセージの受信者が現在疲労状態にあると見なされるか否か、または、前記受信者が持つと見なされる疲労のレベルを示すために用いられ、前記識別値が前記閾値に達していない場合に、前記フロートアウトメッセージをフロートアウトし、前記識別値は、前記受信者が現在疲労状態にないことを示し、前記識別値を更新するよう構成されたている、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに接続され、前記少なくとも1つのプロセッサに命令を提供するよう構成されているメモリと、を備える、インスタントメッセージングクライアント。
適用例18:フロートアウトメッセージを制御するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は、持続性で有形のコンピュータ読み取り可能な記憶媒体内に具現化され、受信者への送信の準備ができたフロートアウトメッセージがある場合に、前記フロートアウトメッセージの前記受信者の現在のステータスを判定するためのコンピュータ命令と、前記受信者の前記現在のステータスがオンラインである場合に、前記受信者の識別値が閾値に達しているか否かを判定することを含む、前記フロートアウトメッセージが前記受信者に送信されるべきか否かを判定するためのコンピュータ命令と、前記識別値は、前記受信者が現在疲労状態にあると見なされるか否か、または、前記受信者が持つと見なされる疲労のレベルを示すために用いられ、前記識別値が前記閾値に達していない場合に、前記受信者がフロートアウトできるように、前記フロートアウトメッセージを前記受信者にプッシュ通知するためのコンピュータ命令と、前記識別値を更新するためのコンピュータ命令と、を備える、コンピュータプログラム製品。
適用例19:フロートアウトメッセージを制御するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は、持続性で有形のコンピュータ読み取り可能な記憶媒体内に具現化され、フロートアウトメッセージが受信された場合に、識別値が閾値に達しているか否かを判定するためのコンピュータ命令と、前記識別値は、前記フロートアウトメッセージの受信者が現在疲労状態にあると見なされるか否か、または、前記受信者が持つと見なされる疲労のレベルを示すために用いられ、前記識別値が前記閾値に達していない場合に、前記フロートアウトメッセージをフロートアウトするためのコンピュータ命令と、前記識別値は、前記受信者が現在疲労状態にないことを示し、前記識別値を更新するためのコンピュータ命令と、を備える、コンピュータプログラム製品。