JP6552303B2 - 通信装置および中継装置およびそれらの制御方法、プログラム - Google Patents

通信装置および中継装置およびそれらの制御方法、プログラム Download PDF

Info

Publication number
JP6552303B2
JP6552303B2 JP2015133927A JP2015133927A JP6552303B2 JP 6552303 B2 JP6552303 B2 JP 6552303B2 JP 2015133927 A JP2015133927 A JP 2015133927A JP 2015133927 A JP2015133927 A JP 2015133927A JP 6552303 B2 JP6552303 B2 JP 6552303B2
Authority
JP
Japan
Prior art keywords
communication
push notification
push
server
relay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015133927A
Other languages
English (en)
Other versions
JP2017016482A5 (ja
JP2017016482A (ja
Inventor
智哉 酒井
智哉 酒井
健介 安間
健介 安間
藤井 賢一
賢一 藤井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015133927A priority Critical patent/JP6552303B2/ja
Priority to US15/196,747 priority patent/US10015746B2/en
Publication of JP2017016482A publication Critical patent/JP2017016482A/ja
Publication of JP2017016482A5 publication Critical patent/JP2017016482A5/ja
Application granted granted Critical
Publication of JP6552303B2 publication Critical patent/JP6552303B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • H04W52/0229Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal where the received signal is a wanted signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、通信装置および中継装置およびそれらの制御方法、プログラムに関する。
近年、ウェブの発展により、HTTP/1.1の高速化が求められている。IETF(Internet Engineering Task Force)では、HTTP/1.1の次期の規格であるHTTP/2が提案されている(非特許文献1)。また、パーソナルコンピュータやブラウザ以外の組込み機器においてもHTTPは広く利用されている。
HTTPを含む各種の通信プロトコルにおいて、プッシュ通知の受信を行うことが広く行われている。一般に、クライアントがプッシュ通知を受信する場合には、クライアントをプッシュサーバに常時接続しておく必要がある(特許文献1)。
特開2014−146876号公報
RFC7540
しかしながら、内蔵型電池により駆動される電子機器において、通信を利用すると電池駆動時間が短くなる傾向にあった。特に、クライアントがHTTP/2などの通信プロトコルにおいてプッシュ通知を受信するためには、プッシュサーバに対してクライアントが常時接続している必要があり、電池の消耗(駆動可能時間の短縮)が一層顕著になってしまう。たとえば、クライアントがデジタルカメラ等の電子機器であった場合、本来の機能である撮影動作に消費される電力に加え、通信の常時接続を維持するための電力が消費されてしまう。
本発明は、上記の課題に鑑みてなされたものであり、プッシュ通知に係るメッセージを省電力で受信することを可能にすることを目的とする。
上記の目的を達成するための本発明の一態様による通信装置は以下の構成を有する。すなわち、
記通信装置を通知対象とするプッシュ通知を識別するための識別情報を、中継装置に送信する送信手段と、
サーバ装置により送信されるプッシュ通知のうち前記識別情報に対応するプッシュ通知の送信先が前記中継装置となるように前記サーバ装置に設定させるための情報を提供する提供手段と、
前記送信手段による前記中継装置への前記識別情報の送信および前記提供手段による前記情報の提供の後に、前記通信装置の動作モードを、前記中継装置を介さずに前記サーバ装置と通信可能な第1動作モードから、前記サーバ装置との接続に係る消費電力よりも小さい消費電力で接続可能な前記中継装置を介して前記サーバ装置と通信する第2動作モードに切り替えるための処理を実行する制御手段と、
前記制御手段により実行される制御に応じて前記通信装置の動作モードが前記第2動作モードに切り替わった後に、前記サーバ装置から前記中継装置へのプッシュ通知の送信に応じて前記中継装置から前記通信装置へ送信されたプッシュ通知を受信する受信手段とを有する。
本発明によれば、プッシュ通知に係るメッセージを省電力で受信することが可能になる。
第1実施形態に係る通信システムの構成例を示す図。 第1実施形態に係る、電子機器のハードウェア構成例を示すブロック図。 第1実施形態に係る、電子機器の機能構成例を示すブロック図。 第1実施形態に係る、モバイル端末のハードウェア構成例を示すブロック図。 第1実施形態に係る、モバイル端末の機能構成例を示すブロック図。 第1実施形態に係る、プッシュ通知の受信処理を示すフローチャート。 第1実施形態に係る、プッシュ通知の中継処理を示すフローチャート。 第1実施形態に係る通信処理のシーケンスの一例を示す図。 第1実施形態に係る通信処理のシーケンスの一例を示す図。 第1実施形態に係る通信処理のシーケンスの一例を示す図。 第2実施形態に係る通信処理のシーケンスの一例を示す図。 第3実施形態に係る通信処理のシーケンスの一例を示す図。 第3実施形態に係る通信処理のシーケンスの一例を示す図。 プッシュサーバの機能構成例を示すブロック図。 プッシュサーバの動作を示すフローチャート。
以下、本発明の実施形態に係る通信装置、通信システムについて、添付の図面を参照しながら詳細に説明する。なお、以下の実施形態は特許請求の範囲に関る本発明を限定するものではなく、また、以下の実施形態で説明されている特徴の組み合わせの全てが本発明に必須のものとは限らない。
<第1実施形態>
図1は、通信システムの構成の一例を示す図である。電子機器101は、たとえばデジタルカメラ、プロジェクタ、監視カメラ、DTV(Digital TV)、プリンタ等の通信装置として機能し得る装置の一例であり、無線や有線LANによるネットワークを通じてインターネット通信を行う。モバイル端末102は、たとえばスマートフォン、タブレット等の通信装置として機能し得る装置の一例である。モバイル端末102は、公衆移動体通信であるLTE(Long Term Evolution)等を搭載しており、移動しながらもインターネットに常時接続可能な機能をもつ。モバイル端末102は、スマートフォン、タブレット等の上で動作するウェブブラウザでも良いし、通信機器にインストールされたアプリケーションであっても良い。なお、本実施形態において通信機能を有する装置として、電子機器101とモバイル端末102を用いて説明するが、携帯性の有無等は問われるものではない。
プッシュサーバ103は、プッシュ通知の送信元であるサーバ装置として機能する。本実施形態では、プッシュサーバ103を1台のPCによって実現しているが、クラウド上で分散して配置されていても良い。アプリケーションサーバ104は、Social Networking Service(SNS)や、クラウドサービス等を提供するサーバである。アプリケーションサーバ104は、イベントが発生した場合にプッシュサーバ103にプッシュ通知を要求する。本実施形態では、アプリケーションサーバ104を1台のPCによって実現しているが、アプリケーションサーバ104は、クラウド上で分散して配置されていても良い。また、本実施形態では、プッシュサーバ103とアプリケーションサーバ104は別々の構成として示されているが、一体になっていても良い。。
無線LANアクセスポイント105は、たとえばIEEE802.11に準拠した無線通信を端末との間で行う。公衆無線基地局106は、たとえば3GPP/LTEに準拠した公衆無線通信を端末との間で行う。ルータ107は、インターネット通信を経由する機能をもつ。無線LANアンテナ108、109は、無線LAN通信を行うためのアンテナであり、電子機器101と無線LANアクセスポイント105の間の無線LAN通信110による通信に用いられる。LTEアンテナ111、112は、公衆無線通信を行うアンテナであり、モバイル端末102と公衆無線基地局106の間の公衆無線(本実施形態ではLTE113)による通信に用いられる。BLEアンテナ114、115は、電子機器101とモバイル端末102の間で近距離無線方式(たとえば、BLE116)により直接通信を行うのに用いられる。
なお、BLEとは、Bluetooth(登録商標) Low Energyである。また、電子機器101とモバイル端末102の間の近距離無線方式は、BLEに限られるものではなく、たとえば、ZigBee(登録商標)、NFC(Near Field Communication)等の近距離無線方式でも良い。また、電子機器101は、無線LANに限らず、公衆無線、有線LANなどによって、プッシュサーバ103やアプリケーションサーバ104に接続されても良い。また、モバイル端末102は、公衆無線に限らず、無線LAN,有線LANなどによって、プッシュサーバ103やアプリケーションサーバ104に接続されても良い。さらに、電子機器101とモバイル端末102の間の接続はBLE、ZigBee、NFCなどの近距離無線通信に限られるものではなく、たとえば、USB、Wi−Fi、有線LANが用いられても良いし、それらの複合であっても良い。
図2は、電子機器101のハードウェア構成例を示すブロック図である。図2において、制御部201は、電子機器101における動作を統括的に制御するものであり、システムバス208を介して、各構成部(202〜207)を制御する。無線LAN制御部202は、無線LANアンテナ108を介して行う無線通信を制御する。ここで無線LAN制御部はUSB等で装着される外部デバイスであっても良い。記憶部203は、無線通信ネットワーク情報、データ送受信情報、機器属性ID(後述)、サービス属性ID(後述)など各種データを記憶し管理する。操作部204は、ユーザからの操作を受け付ける。BLE制御部205は、BLEアンテナ114を介して行うBLE通信を制御する。なお、BLE制御部205は、USB等で装着される外部デバイスであっても良い。電源供給部206は、各構成部(201〜205、207)に電源を供給する。電源供給部206は、特定の構成のみに電源を供給することが可能である。例えば、BLE制御部205のみに電源を供給し、他の構成部には電源を供給しないという処理(省電力モード動作)を行う。表示部207は、たとえば液晶パネルを有し、制御部201の制御下で各種表示を行う。
図4は、モバイル端末102のハードウェア構成例を示すブロック図である。図4において401〜408の参照番号によって示される構成は、図2において201〜208の参照番号によって示される構成と同様の機能を有する。LTE制御部409は、LTEアンテナ111を介して行うLTE通信を制御する。ここで、LTE制御部409は、USB等で、モバイル端末102に装着される外部デバイスであっても良い。
なお、プッシュサーバ103のハードウェア構成は、図4に示した構成と同様の構成とすることができる。但し、BLE制御部405は省略してよい。
図3は、電子機器101の機能構成例を示すブロック図である。以下、図3を参照して、電子機器101の機能ブロックを説明する。なお、本実施形態においては、以下に示す各機能ブロックの機能は、制御部201のCPU(不図示)がメモリ(不図示)に格納されているソフトウェアプログラムを実行することにより実施されるものとする。但し、各機能ブロックに含まれる一部または全部がハードウェア化されていても良い。
図3において、LAN接続処理部301は、無線LAN制御部202を介した無線LAN通信を制御する。LAN接続状態判定部302は、無線LAN制御部202が、無線LANアンテナ108を介して、接続可能あるいは接続中の無線LANアクセスポイントが存在するか否かを判定する。また、ここでの「接続」とは、無線の接続だけでなく、IPアドレスが付与されIP通信可能な状態になることや、ディスカバリプロトコルが完了してアプリケーション通信が可能な状態になることであってもよい。BLE接続処理部303は、BLE制御部205を介したBLE通信を制御する。BLE接続状態判定部304は、BLE制御部205を介してBLE通信を行っている相手が存在するかを判定する。
表示処理部305は、プッシュ通知を受信したら、プッシュ通知に含まれるメッセージを表示部207に表示する。サービス属性ID受信部306は、BLE制御部205を介して、モバイル端末102からサービス属性IDを受信する。プッシュ通知受信部307は、プッシュサーバ103から、無線LAN制御部202を介して、プッシュ通知を受信し、プッシュ通知に基づく処理を行う。プッシュ代理通知受信部308は、モバイル端末102から、BLE制御部205を介して、プッシュ代理通知を受信し、プッシュ代理通知に基づく処理を行う。機器属性ID送信部309は、機器属性IDを、BLE制御部205を介してモバイル端末102に送信する。また、機器属性ID送信部309は、機器属性IDを、無線LAN制御部202を介してプッシュサーバ103に送信する。
省電力モード制御部310は、電源供給部206を制御する。省電力モード制御部310は、CPUクロックの調節や無線チップのオフなどモジュールやハードウェアの実行状態を制御してもよい。機器属性ID生成部311は、機器属性IDを生成する。代理送信依頼送信部312は、BLE制御部205を介して、モバイル端末102に、機器属性IDの代理送信依頼を送信する。
次に図5を参照して、モバイル端末102の機能構成を説明する。図5は、モバイル端末102の機能構成例を示すブロック図である。なお本実施形態においては、以下に示す各機能ブロックの機能は、制御部401のCPU(不図示)がメモリ(不図示)に格納されたソフトウェアプログラムを実行することにより実施されるものとする。但し、各機能ブロックの機能の一部または全部がハードウェア化されていても良い。
図5において、501〜505,507の参照番号によって示される構成は、図3において301〜305,307の参照番号によって示される構成と同様の機能を有する。サービス属性ID受信部506は、LTE制御部409、または、無線LAN制御部402を介して、プッシュサーバ103からサービス属性IDを受信する。サービス属性ID送信部508は、BLE制御部405を介して、電子機器101(サービス属性ID受信部306)にサービス属性IDを送信する。プッシュ通知代理送信部509は、BLE制御部405を介して、電子機器101(プッシュ代理通知受信部308)にプッシュ通知を送信する。
機器属性ID送信部510は、LTE制御部409、または、無線LAN制御部402を介して、プッシュサーバ103に機器属性IDを送信する。機器属性ID受信部511は、BLE制御部405を介して、電子機器101(機器属性ID送信部309)から機器属性IDを受信する。LTE接続処理部512は、LTE制御部409を介したLTE通信を制御する制御部である。LTE接続状態判定部513は、LTE制御部409を介して、接続可能な公衆無線基地局が存在するかを判定する。なお、本実施形態では公衆無線としてLTEを用いたがこれに限られるものではない。代理送信依頼受信部514は、BLE制御部405を介して、電子機器101(代理送信依頼送信部312)から、機器属性IDの代理送信依頼を受信する。
次に、図14を参照して、プッシュサーバ103の機能構成を説明する。図14において、LAN接続処理部1401,LAN接続状態判定部1402,LTE接続処理部1407,LTE接続状態判定部1408は、図5の510,502,512,513で示される構成と同様である。サービス属性ID送信部1403は、外部の通信装置からの要求に応じて、アプリケーションサーバ104が提供するプッシュ通知のサービス属性IDを含むサービス属性IDを公衆無線などを用いて送信する。機器属性ID登録部1404は、外部の通信装置からプッシュ通知のための機器属性IDを受信し、登録する。機器属性IDは、プッシュ通知の送信先を特定する情報(たとえば送信先アドレス)と対応付けて登録される。ここで、プッシュ通知の送信先は、たとえば、機器属性IDを送信してきた通信装置、または、機器属性IDの登録要求において送信先として指定されている通信装置が登録される。プッシュ要求受信部1405は、アプリケーションサーバ104からのプッシュ要求を受信する。プッシュ要求には、プッシュ通知の内容と、プッシュ通知の対象を特定する機器属性ID(サービス属性ID)が含まれている。プッシュ通知送信部1406は、プッシュ要求に含まれている機器属性IDに対応付けられている送信先へプッシュ通知を送信する。
次に、以上のような構成を備えた本実施形態の電子機器101、モバイル端末102、プッシュサーバ103の動作について説明する。まず、電子機器101によるプッシュ通知の受信動作について、図6のフローチャートを参照しながら詳細に説明する。
図6において、BLE接続処理部303は、モバイル端末102とBLE116を介して接続し、通信を開始する(S601)。BLE通信が開始されると、サービス属性ID受信部306は、モバイル端末102からサービス属性IDを受信し、記憶部203にサービス属性IDを記憶し、管理する(S602)。このサービス属性IDは、アプリケーションサーバ104が提供するサービスに紐づいた識別子を表す。これにより、電子機器101やモバイル端末102は、プッシュメッセージがどのサービスから発行されたメッセージか判別することができる。なお、本実施形態ではサービス属性IDをモバイル端末102から受信している(図7のS701〜S703)がこれに限られるものではない。たとえば、電子機器101がプッシュサーバ103、あるいはアプリケーションサーバ104からサービス属性IDを取得するようにしても良いし、プロキシサーバなどを介して取得するようにしてもよい。
次に、機器属性ID生成部311は、プッシュ通知のための、電子機器101を一意に識別可能な機器属性IDを生成し、記憶部203に記憶し管理する(S603)。本実施形態では通信装置としての電子機器101を通知対象とするプッシュ通知を識別するための識別情報として機器属性IDが用いられる。なお、機器属性ID生成部311が機器属性IDを生成する構成としたが、これに限られるものではない。たとえば、機器属性ID生成部311が電子機器101にある所定の識別子を読み込んでも良いし、他の装置(例えば、プッシュサーバ103など)から機器属性IDを取得するようにしても良い。つづいて、機器属性ID送信部309は、モバイル端末102に機器属性IDを送信する(S604)。
なお、本実施形態では、機器属性IDは、サービス属性IDに対して、通知対象である電子機器101を一意に識別できる符号(機器識別子)を付加することで生成される。すなわち、識別情報としての機器属性IDは、サービスを識別するサービス属性IDと、電子機器101を識別する識別子とを結合したものである。例えば、サービス属性IDが“ID1”だった場合、例えば“/device”という電子機器101を特定する識別子を付加することにより、“ID1/device”という機器属性IDが生成される。また、機器属性IDやサービス属性IDは、機器やサービスを一意に特定できればよい。たとえば、機器属性IDやサービス属性IDのフォーマットは、XML、JSONであってもよい。また、機器識別子は、機器固有のUUID、BLEの物理アドレス、Cookie、MACアドレスや、それらの一部を利用して生成された値(例えば、ハッシュ値)であっても良い。
また、上述のように、モバイル端末102、プッシュサーバ103、または、アプリケーションサーバ104が、機器属性IDを生成するようにしても良い。その場合、電子機器101は、機器属性IDを他の機器から取得し、記憶部203に記憶し管理する。以上のように、サービス属性IDと機器を一意に識別できる符号で生成される機器属性IDによって、何のサービスに対するどの機器へのメッセージを表すか判断可能となる。
次に、LAN接続状態判定部302は、接続可能である無線LANアクセスポイントがあるかどうかを判定する(S605)。LAN接続状態判定部302が、接続可能である無線LANアクセスポイントがあると判定した場合(S605でYES)、LAN接続処理部301は、無線LANアクセスポイントに接続する(S607)。なお、ここでは無線LANを例に説明したが、これに限られるものではない。たとえば、有線LANによりアクセスポイントに接続する場合には、LAN接続状態判定部302は、自装置にIPアドレスが付与されているか否かに応じてネットワークの疎通確認チェックなどを行って、接続状態を判定するようにしても良い。例えば、SSDP、mDNS、WS−Discoveryなどを用いたアプリケーションレベルの疎通確認チェックを用いることができる。機器属性ID送信部309は、無線LAN制御部202を介して、プッシュサーバ103に、機器属性IDを送信する(S608)。このとき、機器属性IDに対応するプッシュ通知の送信先としてモバイル端末102を指定する。そして、LAN接続処理部301は、無線LANアクセスポイントとの接続を終了する(S609)。
他方、LAN接続状態判定部302が、接続可能である無線LANアクセスポイントがないと判定すると(S605でNO)、処理はS606に進む。この場合、代理送信依頼送信部312は、モバイル端末102(代理送信依頼受信部514)に対して、BLE116を用いて機器属性IDの代理送信依頼を送信する(S606)。なお、アプリケーションサーバ104とプッシュサーバ103を紐づけるためにアプリケーションサーバ104でも機器属性IDを管理する必要がある場合、機器属性ID送信部309は、アプリケーションサーバ104にも機器属性IDを送信する。または、プッシュサーバ103が、アプリケーションサーバ104に対して、機器属性IDを送信するようにしても良い。
つぎに、省電力モード制御部310は、ホストCPUである制御部201を、電子機器101が通常の動作を行う通常モードから省電力モードに移行する(S610)。ここで言う省電力モードは、例えば、電源供給部206が、少なくともBLE制御部205に対しては電力の供給を続け、他の構成部に対する電源供給を停止する状態を表す。なお、省電力モードは、これに限られるものではなく、たとえばハードウェアまたはソフトウエアの一部の動作が停止している状態の事であっても良いし、CPUのクロックを落とした状態などであっても良い。
以上のようにして省電力モードに移行すると、プッシュ代理通知受信部308は、BLE制御部205によるプッシュ通知の待ち受けを開始する(S611)。この待ち受け状態において、プッシュ代理通知受信部308は、モバイル端末102(プッシュ通知代理送信部509)からのプッシュ通知をBLEを介して受信する(S612)。プッシュ通知を受信すると、省電力モード制御部310は、制御部201を起動モードに移行し(S613)、各構成部に対する電源供給を再開する。こうして、プッシュ通知の受信に応じて、電子機器101は省電力モードから通常モードへ移行する。その後、プッシュ代理通知受信部308は、受信したプッシュ代理通知に基づく処理を実行する(S614)。また、表示処理部305は、受信したプッシュ通知に基づき表示するメッセージがある場合に、それを表示部207に表示する。
なお、プッシュ代理通知受信部308は、プッシュ通知の内容のメッセージの代わりに、プッシュ通知があったことを伝えるメッセージを受信しても良い。この場合、プッシュ通知受信部307は、無線LANアクセスポイント105を介してプッシュサーバ103にアクセスし、プッシュ通知を受信する。このようにすることで、消費電力が小さいが低速であるBLEよりも、消費電力は大きいが高速である無線LAN通信を使用することにより、プッシュ通知メッセージを高スループットで受信することが出来る。この場合、たとえば、モバイル端末102は、プッシュサーバ103から受信したプッシュ通知のメッセージサイズが所定値より大きい場合には、受信の通知のみを電子機器101に対して行うようにする。このようにすれば、電子機器101は、メッセージサイズが所定値以下であればBLE116を介してプッシュ通知を受け取り、メッセージサイズが所定値より大きければ無線LAN通信を使用してプッシュ通知を受け取るように動作することができる。
なお、本実施形態では、プッシュ通知の待ち受けをプッシュ代理通知受信部308により実行するようにしているが、所定の条件下ではプッシュ通知受信部307がプッシュサーバ103からのプッシュ通知を待ち受けるようにしてもよい。すなわち、所定の条件下では、省電力モード制御部310は、プッシュ通知の待ち受け時にも省電力モードへ移行させず、プッシュ通知受信部307によるプッシュ通知メッセージの受信を継続するようにしてもよい。なお、所定の条件下とは、例えば、電源供給部206がACアダプタなどに接続されている場合や、特定のユーザインターフェースを用いて操作されている場合や、起動中のアプリケーションの特性、ユーザ操作による特定の指示があった場合などである。これにより、所定の条件下における即時性のあるプッシュ通知と省電力なプッシュ通知を両立することができる。
次にモバイル端末102の動作について、図7のフローチャートを参照しながら詳細に説明する。図7において、サービス属性ID受信部506は、プッシュサーバ103から、サービス属性IDを受信し、記憶部403に記憶し、管理する(S701)。本実施形態では、サービス属性ID受信部506がプッシュサーバ103からサービス属性IDを取得しているが、アプリケーションサーバ104にアクセスしてサービス属性IDを取得するようにしても良い。また、プッシュサーバ103に指示しアプリケーションサーバ104からサービス属性IDを取得させてもよい。例えば、モバイル端末102がウェブブラウザの場合、アプリケーションサーバ104が提供するウェブページを取得し、ウェブページに含まれる情報、例えば、Javascriptを利用し、サービス属性IDを取得することができる。
BLE接続処理部503は、電子機器101とBLE制御部405を介して、接続する(S702)。サービス属性ID送信部508は、BLE116を介して、電子機器101にサービス属性IDを送信する(S703)。送信されたサービス属性IDは、電子機器101によって受信される(S602)。なお、電子機器101がサービス属性IDをプッシュサーバ103などから取得する場合には、S701〜S703の処理は省略可能である。次に、機器属性ID受信部511は、電子機器101(S604)から、機器属性IDを受信し(S704)、受信した機器属性IDを、プッシュ代理通知の対象として、記憶部403に記憶し管理する(S705)。こうして、電子機器101に宛てたプッシュ通知を特定するための識別情報(機器属性ID)がモバイル端末102において保持される。なお、本実施形態では、電子機器101からモバイル端末102へ機器属性IDを通知することにより、モバイル端末102へプッシュ通知の代理受信の実行が指示されたものとする。なお、別途、代理受信の実行を指示する通知が電子機器101からモバイル端末102に対してなされるようにしてもよい。
代理送信依頼受信部514は、電子機器101から機器属性IDの代理送信依頼を受信したかどうかを判定する(S706)。機器属性IDの代理送信依頼は、必要に応じて電子機器101から送信される(S606)。代理送信依頼受信部514が電子機器101から機器属性IDの代理送信依頼を受信したと判定した場合(S706でYES)、機器属性ID送信部510は、プッシュサーバ103に、S704で受信した機器属性IDを送信する(S707)。このとき、機器属性IDに対応するプッシュ通知の送信先としてモバイル端末102を指定する。なお、アプリケーションサーバ104とプッシュサーバ103を紐づけるためにアプリケーションサーバ104でも機器属性IDを管理する必要がある場合、機器属性ID送信部510は、アプリケーションサーバ104にも機器属性IDを送信する。あるいは、プッシュサーバ103が、アプリケーションサーバ104に対して、機器属性IDを送信するようにしても良い。代理送信依頼を受信していない場合は、S707はスキップされる。
プッシュ通知受信部507は、プッシュ通知の待ち受けを開始し、その旨を図8のM807で示すようにプッシュサーバ103に通知する(S708)。なお、プッシュサーバ103とモバイル端末102との間の通信では、単一の通信路上に複数の論理的通信路を確立可能である。たとえばプッシュ通知を受信するプロトコルとして、HTTP/2を使用すると、一つのTCPの接続上で、複数のストリームを使用することで、複数の機器あるいはアプリケーション、ブラウザを対象とすることが出来る。プッシュ通知受信部507は、プッシュサーバ103から、プッシュ通知を受信する(S709)。
プッシュ通知受信部507は、受信したプッシュ通知に含まれるプッシュ通知の対象が、記憶部403にある機器属性IDと一致するかどうかを判断する(S710)。すなわち、プッシュ通知受信部507は、受信したプッシュ通知に含まれるプッシュ通知の対象を、記憶部403に保存してある機器属性IDと比較する。なお、HTTP/2を使用してプッシュ通知を待ち受ける場合、プッシュ通知を受けたストリームIDやそのストリームが関連付けられているストリームを見ることで、プッシュ通知の対象を判断することができる。
プッシュ通知受信部507が、受信したプッシュ通知に含まれる通知対象がS705で保存した機器属性IDと一致しないと判断した場合(S710でNO)、プッシュ通知受信部507は、自装置宛のプッシュ通知であると認識する。この場合、プッシュ通知受信部507は、受信したプッシュ通知に基づく処理を実行する(S711)。また、表示処理部505は、プッシュ通知に基づき表示するメッセージがある場合、表示部407に表示する。
他方、プッシュ通知受信部507が、プッシュ通知の対象が、記憶部403に保存してある機器属性IDと一致すると判断した場合(S710でYES)、処理はS712進む。この場合、BLE接続状態判定部504は、対象の機器属性で特定される通信装置(本例では、電子機器101)とBLE接続があるかどうかを判断する(S712)。BLE接続状態判定部504が、対象の通信装置とのBLE接続があると判断した場合(S712でYES)、プッシュ通知代理送信部509は、対象の通信装置へプッシュ代理通知を送信する(S713)。本実施形態では、プッシュ通知代理送信部509は、プッシュ通知受信部507が受信したプッシュ通知を電子機器101へ送信する。なお、プッシュ通知代理送信部509は、プッシュ通知の内容を確認し、代理通知を送信する必要が無いと判断した場合には、プッシュ通知を送信しないようにしても良い。
なお、上述したように、プッシュ通知代理送信部509は、プッシュ通知の内容のメッセージの代わりに、プッシュ通知があったことを伝えるメッセージを送信しても良い。この場合、プッシュ通知代理送信部509は、メッセージサイズが所定値以下の場合にはプッシュ通知メッセージ送信し、メッセージサイズが所定値より大きい場合にはプッシュ通知があったことを伝えるメッセージを送信するようにしてもよい。
BLE接続状態判定部504が、対象の通信装置とのBLE接続が無いと判断した場合、(S712でNO)、プッシュ通知受信部507は、受信したプッシュ通知を記憶部403に保存する(S714)。その後、プッシュ通知代理送信部509は、対象の機器とのBLE接続が確立されたら、記憶部403に保存されたプッシュ代理通知を送信する。このように、プッシュ通知代理送信部509は、プッシュ通知の対象(電子機器101)との間でBLEによる通信ができない場合に、プッシュ通知を保存する。これにより、例えば、電子機器101とモバイル端末102がBLEで通信を行うことが出来ない距離にいたとしても、両者が近接し、BLE通信が可能になった場合に保存しているプッシュ通知を送信出来る。なお、本実施形態ではBLEの接続状態のみを判定したが、これに限らず、BLE接続状態判定部504はさらに他の通信方式による接続があるかを確認し、電子機器101へのプッシュ通知の送信に利用するようにしてもよい。
次に、プッシュサーバ103の動作を説明する。図15(a)はプッシュサーバ103の動作を示すフローチャートである。プッシュサーバ103のサービス属性ID送信部1403は、外部の通信装置からプッシュ通知のためのサービスに関わるサービス属性IDの要求を受信すると(S1501)、要求元の通信装置へサービス属性IDを送信する(S1502)。外部の通信装置の一例は、上述の電子機器101やモバイル端末102である。このとき、プッシュサーバ103は、必要に応じてアプリケーションサーバ104からサービス属性IDを取得する。機器属性ID登録部1404は、外部の通信装置から、機器属性IDを受信すると(S1503)、受信した機器属性IDをプッシュ通知の送信先(その機器属性IDの送信元の装置、または、送信先として指定された装置)に対応付けて登録する(S1504)。プッシュ要求受信部1405はアプリケーションサーバ104からプッシュ要求を受信する(S1505)。すると、プッシュ通知送信部1406はプッシュ要求に記述されている機器属性ID(あるいはサービス属性ID)に対応付けられている送信先へ、プッシュ通知を送信する(S1506)。
次に、図1に示した機器構成の通信システムにおける、各機器間の通信シーケンスの一例について、図8を参照しながら、詳細に説明する。M801では、モバイル端末102がプッシュサーバ103からサービス属性IDを取得する(S701、S1501、S1502)。M802では、モバイル端末102から電子機器101へサービス属性IDが送信される(S703、S602)。M803では、電子機器101が、受信したサービス属性IDを用いて機器属性IDを生成、取得する(S603)。M804では、電子機器101からモバイル端末102へ、機器属性ID(代理対象の機器属性ID)が送信される(S604、S704)。M805では、モバイル端末102が電子機器101から受信した機器属性IDを記憶部403に登録する(S705)。
M806では、電子機器101が、直接に、またはモバイル端末102を介して、機器属性IDをプッシュサーバ103に送信する(S605〜S609、S706〜S707)。プッシュサーバ103は、受信した機器属性IDをプッシュ通知の対象の機器と対応付けて登録する(S1503、S1504)。ここで、電子機器101は、機器属性IDとともにプッシュ通知の対象の機器としてモバイル端末102を指定する情報(たとえばモバイル端末102のアドレス)を送信している。プッシュサーバ103は、受信した機器属性IDとモバイル端末102を対応付けて登録する。その後、電子機器101は省電力モードへ移行し、BLEによる待ち受けを開始する(S610、S611)。M807において、モバイル端末102は、プッシュ通知の待ち受けを開始し、その旨をプッシュサーバ103へ通知する(S709)。これにより、モバイル端末102は、自身が要求するサービスのプッシュ通知と電子機器101が要求するサービスのプッシュ通知を受信することができる。
プッシュサーバ103は、アプリケーションサーバ104からプッシュ通知要求を受信する(M808)。ここで受信されたプッシュ通知は、電子機器101に対するプッシュ通知、すなわち、電子機器101で生成された機器属性IDに宛てたプッシュ通知であるとする。M809では、プッシュサーバ103から、電子機器101に宛てたプッシュ通知が送信され、モバイル端末102により受信される(S709)。M810では、モバイル端末102が、電子機器101に宛てたプッシュ通知を電子機器101に送信し、電子機器がこれを受信する(S713、S612)。こうして、プッシュサーバ103から電子機器101に宛てて送信されたプッシュ通知が、モバイル端末102(中継装置)による中継を経て、電子機器101に受信される。M811では、電子機器101が、受信したプッシュ通知に基づいて表示を行う(S614)。
次に、図9を参照して、電子機器101がプッシュサーバ103からのプッシュ通知を待ち受ける場合の動作を説明する。上述したように、所定の条件下では電子機器101のプッシュ通知受信部307がプッシュサーバ103からのプッシュ通知を待ち受けるようにしてもよい。電子機器101は、所定の条件下で動作しているかどうかを判定し、所定の条件下で動作していなければ図6〜図8により上述したように、電子機器101がモバイル端末102による中継を経てプッシュサーバ103からのプッシュ通知を受け取る。他方、所定の条件下で動作している場合は、電子機器101は、プッシュサーバ103からのプッシュ通知を自身で待ち受けるようにする。この場合、電子機器101が生成した機器属性IDをプッシュサーバ103に登録する際には、対応する送信先が電子機器101となるようにする。以下、この場合の処理について図9を参照して説明する。
図9において、M901〜M906は、M801〜M806と同様の処理である。但し、M906では、機器属性IDに対応する送信先として、電子機器101が登録される。M907において、電子機器101のプッシュ通知受信部307は、無線LAN制御部202により無線LANアクセスポイント105を経由してプッシュサーバに接続し、プッシュ通知の待ち受けを開始する。プッシュサーバ103は、アプリケーションサーバ104から電子機器101へ宛てられたプッシュ通知要求を受信すると(M908)、電子機器101にプッシュ通知を送信する(M909)。電子機器101は、受信したプッシュ通知(M909)に基づいて表示を行う(M910)。モバイル端末102は、M905で代理対象として電子機器101から受信した機器属性IDを登録しているが、プッシュサーバ103からその機器属性IDを含むプッシュ通知が送信されることはない。プッシュサーバ103では、M907においてその機器属性IDの送信先として電子機器101が登録されるからである。
図10は、プッシュ通知代理送信部509がプッシュ代理通知を送信する場合に、電子機器101とモバイル端末102の間の接続が切れている場合(図7のS712でNOの場合)のシーケンスについて説明する。M1001〜M1009は、M801〜M809と同様の処理である。モバイル端末102のプッシュ通知受信部507は、プッシュサーバ103から電子機器101に宛てられたプッシュ通知を受信した際に(M1009)電子機器101との間でBLE接続が確立していない場合、そのプッシュ通知を保存する(M1010)。この処理は、S710(YES)→S712(NO)→S714である。その後、電子機器101とモバイル端末102との間でBLEでの接続が確立すると(M1011)、モバイル端末102は、M1010で保存したプッシュ通知を電子機器101へBLEを介して送信する(M1012)。M1013はM811と同様である。
以上説明したように、第1実施形態によれば、電子機器101は、プッシュ通知を、ネットワークに常時接続可能なモバイル端末102から受信することが出来るようになる。これにより、電子機器101とモバイル端末102の間を省電力な無線で接続するだけで電子機器101がモバイル端末102を経由してプッシュ通知を受信することが可能となる。そのため、電子機器101がプッシュサーバ103からのプッシュ通知を直接的に常時待ち受けるよりも省電力化を図ることができる。
また、電子機器101の周辺に無線LANアクセスポイントが無い場合であっても、公衆無線に接続されたモバイル端末102がプッシュ通知を代理受信することが出来るという効果がある。すなわち、上記実施形態によれば、電子機器101の周辺に無線LANアクセスポイントが無い場合、機器属性IDの送信をモバイル端末102に依頼する。その結果、電子機器101の周辺のアクセスポイントの有無に依らず、プッシュ通知をモバイル端末102を介して受信出来るようになる。
また、本実施形態では、モバイル端末102は、プッシュ通知の対象の機器(電子機器101)との接続が無い場合はプッシュ通知を保存することで、対象の機器を発見後にプッシュ通知を送信する。その結果、電子機器101は、モバイル端末102と離れた距離にあっても、モバイル端末102を電子機器101に近接させることで、電子機器101は後から自身宛てのプッシュ通知を受信できる。例えば、自宅外でモバイル端末102が電子機器101としてのプリンタに宛てられたプッシュ通知で受け取った印刷物を、自宅内のプリンタ(電子機器101)に対して送信し、印刷するといったことが可能となる。
<第2実施形態>
第2実施形態では、HTTP/2を使用してプッシュ通知の待ち受けを行う方法について、図11を参照しながら詳細に説明する。なお、第2実施形態では、
・電子機器101とモバイル端末102をプッシュ通知の対象とするサービス属性ID“ID1”、
・電子機器101をプッシュ通知の対象とする、機器属性IDである“ID1/device”、
・モバイル端末102をプッシュ通知の対象とする機器属性IDである“ID1/mobile”、がプッシュサーバ103に登録されているものとする。
プッシュ通知受信部507は、HTTP/2でプッシュサーバ103に接続する(M1101)。次に、プッシュ通知受信部507は、サービス属性ID“ID1”に対するプッシュ通知を受信するために、HEADERSフレームを送信し、ストリームを作成する(M1102)。M1102では、HTTPのパスを“/ID1”と指定しストリームを作成する。このように、第2実施形態では、サービス属性IDによるプッシュ通知の登録を行うことができる。次に、プッシュ通知受信部507は、機器属性ID“ID1/device”に対するプッシュ通知を受信するために、HEADERSフレームを送信し、ストリームを作成する(M1103)。M1103では、HTTPのパスを“/ID1/device”と指定しストリームを作成する。次に、プッシュ通知受信部507は、機器属性ID“ID1/mobile”に対するプッシュ通知を受信するために、HEADERSフレームを送信し、ストリームを作成する(M1104)。M1104では、HTTPのパスを“/ID1/mobile”と指定しストリームを作成する。以上のM1101〜M1104は、図7のS707の処理に対応する。
本実施形態では、プッシュ通知を受信する装置が機器属性IDをプッシュサーバ103に登録する際に、HEADERSフレームを送信しストリームを作成することでプッシュ通知の送信路を形成(プッシュ通知に利用可能なストリームを作成)する。したがって、モバイル端末102によるプッシュ通知の中継(代理)を行う場合には、モバイル端末102から機器属性IDの登録を行う(HEADERSフレームを送信する)必要がある。すなわち、モバイル端末102にプッシュ通知を代理受信させる場合、電子機器101は図6のS606を実行し、モバイル端末102に機器属性IDの登録の代行を実行させる。
プッシュサーバ103は、サービス属性ID“ID1”に対するプッシュ要求をアプリケーションサーバ104から受信する(M1105、S1505)。プッシュサーバ103は、プッシュ要求における送信対象のプッシュ通知が指定する識別情報(機器属性IDまたはサービス属性ID)に対応して登録されているストリームIDに関連付けられたストリームを取得する。そして、プッシュサーバ103は、取得したストリームを用いて該送信対象のプッシュ通知を送信する。たとえば、プッシュサーバ103は、サービス属性ID“ID1”に対するプッシュ通知の待ち受けを行っているモバイル端末102に対してプッシュ通知を送信する。この場合、プッシュサーバ103は、M1102で作成されたストリームに関連付けられたストリームを作成するために、PUSH_PROMISEフレームをモバイル端末102に送信する。(M1106、S1506)。つづいて、HEADERSフレーム、DATAフレームを送信する。なお、本実施形態では、プッシュ通知を送信する時にPUSH_PROMISEフレームが送られてくるが、PUSH_PROMISEは事前に送信して有っても良い。その場合、プッシュ通知は、HEADERSフレームとDATAフレームとして送られてくる。
プッシュ通知受信部507は、プッシュ通知を受信する(M1107)。ここで、プッシュ通知受信部507は、プッシュ通知を受信したストリームが関連付けられているストリームIDを見ることで、受信したプッシュ通知が、サービス属性ID“ID1”と関連付けられている事を判断できる。たとえば、M1106で送信されるフレームの場合、プッシュ通知を受信したストリームIDと関連付けられているストリームID(promised stream)が7である。ストリームIDが7であるHEADERSフレーム(M1102で送信したフレーム)のパスが/ID1であることから、受信したプッシュ通知がサービス属性“ID1”と関連付けられていることが判断される。プッシュ通知代理送信部509は、サービス属性IDのみが指定されていた場合には、機器属性IDに一致するサービス属性IDが含まれている場合にも機器属性IDが一致したものと判断する(S710)。結果、プッシュ通知代理送信部509は、M1107で受信したプッシュ通知を電子機器101へ送信する(M1108)。
電子機器101の表示処理部305は表示部207にメッセージを表示する(M1109)。なお、本例では、モバイル端末102の機器属性IDとして“ID1/mobile”が設定されており、サービス属性IDが一致するので、M1107で受信されたプッシュ通知は、モバイル端末102に宛てられたものとしても扱われる。よって、モバイル端末102の表示処理部505は、表示部407にプッシュ通知に対応したメッセージを表示する(M1110)。
次に、プッシュサーバ103がアプリケーションサーバ104から“ID1/device”を通知の対象とするプッシュ要求を受信する(M1111)。プッシュサーバ103は、“ID1/device”を対象にしたストリーム(M1103で受信したHEADERSフレーム)に関連付けられたストリームをPUSH_PROMISEフレームで作成し、プッシュ通知を送信する(M1112)。プッシュ通知受信部507は、プッシュ通知を受信する(M1113)。
M1113においてプッシュ通知を受信したモバイル端末102は、ストリームIDと関連付けられているストリームID(promised stream)が9であることを認識する。モバイル端末102は、promised streamが9であることから、受信したプッシュ通知が機器属性ID=“ID1/device”を通知対象としていると判断する。この場合、該当するプッシュ通知が、記憶部403に記憶している機器属性IDと一致するので、電子機器101に対して、プッシュ代理通知を送信する(M1114、S710、S712、S713)。一方、このプッシュ通知は、モバイル端末102が通知の対象となっていないので、モバイル端末102では、プッシュ通知に基づく処理は行わない。表示処理部305は、表示部207に、受信したプッシュ代理通知に基づくプッシュ通知表示を行う(M1115、S614)。
以上のように、第2実施形態では、機器属性ID、サービス属性IDをHTTPのパスと関連付けて管理している。その結果、プッシュ通知の待ち受けを開始する場合に、不要なデータを付与せずに、プッシュ通知の待ち受けを開始することが出来る。その結果、ネットワークの処理負荷と、電子機器101の処理負荷を軽減することが出来る。
<第3実施形態>
HTTP/2を使用してプッシュ通知の待ち受けを行う方法について、図12、図13を参照しながら詳細に説明する。なお、第3実施形態においても、
・電子機器101とモバイル端末102をプッシュ通知の対象とするサービス属性ID“ID1”、
・電子機器101をプッシュ通知の対象とする機器属性ID“ID1/device”、
・モバイル端末102をプッシュ通知の対象とする機器属性ID“ID1/mobile”、がプッシュサーバ103に登録されているものとして説明を行う。
図15(b)は第3実施形態によるプッシュサーバ103の、S1506(図15(a))における動作の詳細を示すフローチャートである。プッシュサーバ103は、アプリケーションサーバ104から受信したプッシュ要求が機器属性IDを指定しているかサービス属性IDを指定しているかを判定する(S1511)。プッシュ要求が機器属性IDを指定している場合には、プッシュサーバ103はその機器属性IDに対応した待ち受けを利用してプッシュ通知を送信する(S1512、S1514)。機器属性IDに対応した待ち受けが無い場合は、プッシュサーバ103は、指定された機器属性IDに含まれるサービス属性IDに対応した待ち受けを利用してプッシュ通知を送信する(S1513、S1514)。ここで、サービス属性IDに対応した待ち受けとは、認識情報としてサービス属性IDが規定されているが、通知対象である機器を規定していない待ち受けである。この際、プッシュ通知のストリームにはプッシュ要求が指定した機器属性IDが記述される。機器属性IDに含まれるサービス属性IDに対応する待ち受けもない場合には、プッシュサーバ103は、プッシュ通知を保存或いは破棄する(S1515)。なお、機器属性ID、サービス属性IDに対応した待ち受けとは、例えば、HTTP/2において、HTTPのパスとして機器属性IDまたはサービス属性IDが記述されたHEADERSフレームを用いて作成したストリームである。
他方、プッシュ要求がサービス属性IDを指定しており、通知対象を規定していない場合は、プッシュサーバ103は、そのサービス属性IDに対応する待ち受けを利用してプッシュ通知を送信する(S1521、S1523)。サービス属性IDに対応する待ち受けが無い場合は、そのサービス属性IDを含む機器属性IDに対応した待ち受けを利用してプッシュ通知を送信する(S1522、S1523)。該当する機器属性IDが無い場合は、そのプッシュ通知を保存あるいは破棄する(S1524)。
以下、第3実施形態による、HTTP/2を使用してプッシュ通知の待ち受けを行う方法について、図12を参照しながら詳細に説明する。図12では、サービス属性IDに対する待ち受けはプッシュサーバ103に登録されているが、機器属性IDに対する待ち受けがプッシュサーバ103に登録されていない場合を説明する。プッシュ通知受信部507は、HTTP/2でプッシュサーバ103に接続する(M1201)。次に、プッシュ通知受信部507は、サービス属性ID“ID1”に対するプッシュ通知を受信するために、HEADERSフレームを送信し、ストリームを作成する(M1202)。M1202では、HTTPのパスを“/ID1”と指定しストリームを作成する。本例では、サービス属性IDが“ID1”に対する待ち受けのみが設定されている。
次に、プッシュサーバ103は、サービス属性ID“ID1”に対するプッシュ要求をアプリケーションサーバ104から受信する(M1203)。プッシュサーバ103は、サービス属性ID“ID1”に対する待ち受けを行っているストリームに対して、プッシュ通知を送信する(M1204、SS1521,S1523)。M1205〜M1207は、図11のM1108〜M1110と同様である。
次に、プッシュサーバ103は機器属性ID“ID1/device”に対するプッシュ要求を受信する(M1208)。プッシュサーバ103は、機器属性ID“ID1/device”に対する待ち受けを行っているストリームが無いことを確認する。すると、プッシュサーバ103は、サービス属性ID“ID1”に対する待ち受けを行っているストリームが存在するので、そのストリームに対してプッシュ通知を送信する(M1209、S1513、S1514)。すなわち、プッシュサーバ103は、機器属性IDに対する待ち受けを行なっているストリームが存在しない場合は、サービス属性IDに対する待ち受けを行なっているストリームを探す。この場合、プッシュサーバ103は、プッシュ通知に機器属性IDの記述を含める(S1511(機器属性ID)→S1512(NO)→S1513(YES)→S1514)。モバイル端末102のプッシュ通知受信部507は、受信したプッシュ通知に機器属性IDの記述がある場合には、記述された機器属性IDにしたがってプッシュ通知を処理する。M1209で送信されたプッシュ通知には、機器属性ID“ID1/device”が記述されているので、モバイル端末102は、電子機器101に対してプッシュ代理通知を送信する(M1210)。電子機器101の表示処理部305は表示部207にメッセージを表示する(M1211)。
次に、機器属性IDに対するプッシュ通知の待ち受けがある場合について、図13を参照しながら詳細に説明する。なお、図13では、第1実施形態で説明したように、電子機器101が所定の条件下で動作しており、プッシュ通知の代理受信が起動されない場合が示されている。
図13において、電子機器101のプッシュ通知受信部307は、HTTP/2でプッシュサーバ103に接続する(M1301)。そして、プッシュ通知受信部307は、機器属性ID“ID1/device”に宛てたプッシュ通知を受信するために、HEADERSフレームを送信し、ストリームを作成する(M1302)。M1302では、HTTPのパスが“/ID1/device”に指定されたストリームが作成される。また、モバイル端末102のプッシュ通知受信部507は、HTTP/2でプッシュサーバ103に接続する(M1303)。そして、プッシュ通知受信部507は、機器属性ID“ID1/mobile”に宛てたプッシュ通知を受信するために、HEADERSフレームを送信し、ストリームを作成する(M1304)。M1304では、HTTPのパスが“/ID1/mobile”に指定されたストリームが作成される。
プッシュサーバ103は、機器属性ID“ID1/device”へのプッシュ要求を受信する(M1305)。機器属性ID“ID1/device”へのプッシュ通知の待ち受けがあるので、プッシュサーバ103はこの待ち受けを用いてプッシュ通知を送信する(M1306、S1512、S1514)。送信されたプッシュ通知は、電子機器101にて受信され、このプッシュ通知を受信した電子機器101は、プッシュ通知に対応した表示を行う(M1307)。
また、プッシュサーバ103は、機器属性ID“ID1/mobile”に対するプッシュ要求を受信する(M1308)。機器属性ID“ID1/mobile”へのプッシュ通知の待ち受けがあるので、プッシュサーバ103はこの待ち受けを用いてプッシュ通知を送信する(M1309、S1512、S1514)。送信されたプッシュ通知はモバイル端末102で受信され、このプッシュ通知を受信したモバイル端末102は、プッシュ通知に対応した表示を行う(M1310)。
次に、プッシュサーバ103は、サービス属性ID“ID1”に対するプッシュ要求を受信する(M1311)。まず、プッシュサーバ103は、サービス属性ID“ID1”に対するプッシュ通知の待ち受けが無いことを確認する。次に、機器属性ID“ID1/device”と機器属性ID“ID1/mobile”に対するプッシュ通知の待ち受けがあるので、これらに対して、プッシュ通知を送信する(M1312、M1313、S1522、S1523)。プッシュ通知は、それぞれ電子機器101およびモバイル端末102により受信され、それぞれがプッシュ通知に対応した表示を行う(M1314、M1315)。
なお、電子機器101がプッシュサーバ103からのプッシュ通知を待ち受ける所定の条件下でない場合は、モバイル端末102による中継(代理)が行われることになる。その場合、M1301、M1302ではモバイル端末102とプッシュサーバ103がHTTP/2で接続され、HEADERSフレームがモバイル端末102からプッシュサーバ103へ送信されることになる。またM1306では、プッシュ通知(PUSH_PROMISEフレーム)がモバイル端末102により受信され、機器属性IDにしたがって電子機器101へのプッシュ代理通知が実行されることになる。同様に、M1313でも、プッシュ通知がモバイル端末102により受信され、機器属性IDにしたがって電子機器101へのプッシュ代理通知が実行されることになる。
以上のように、第3実施形態では、機器属性ID、サービス属性IDをHTTPのパスと関連付けて、更に、親子関係を付与した。その結果、プッシュ通知の待ち受けを開始する場合に、作成するストリームの数を削減することが出来る。また、その結果、ネットワークの処理負荷と、電子機器101の処理負荷を軽減することが出来る。
以上のように、上述した各実施形態によれば、通信装置が、他の機器にプッシュ通知を代理で受信するように依頼することで、常時接続を維持する必要が無くなる。その結果、通信装置の消費電力量を低減することができる。さらに、カメラなどの組込み機器に適用した場合、プッシュメッセージの待受け時間が長くなるという効果がある。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101:電子機器、102:モバイル端末、103:プッシュサーバ、104:アプリケーションサーバ、105:無線LANアクセスポイント、106:公衆無線基地局、107:ルータ

Claims (19)

  1. 通信装置であって、
    記通信装置を通知対象とするプッシュ通知を識別するための識別情報を、中継装置に送信する送信手段と、
    サーバ装置により送信されるプッシュ通知のうち前記識別情報に対応するプッシュ通知の送信先が前記中継装置となるように前記サーバ装置に設定させるための情報を提供する提供手段と、
    前記送信手段による前記中継装置への前記識別情報の送信および前記提供手段による前記情報の提供の後に、前記通信装置の動作モードを、前記中継装置を介さずに前記サーバ装置と通信可能な第1動作モードから、前記サーバ装置との接続に係る消費電力よりも小さい消費電力で接続可能な前記中継装置を介して前記サーバ装置と通信する第2動作モードに切り替えるための処理を実行する制御手段と、
    前記制御手段により実行される制御に応じて前記通信装置の動作モードが前記第2動作モードに切り替わった後に、前記サーバ装置から前記中継装置へのプッシュ通知の送信に応じて前記中継装置から前記通信装置へ送信されたプッシュ通知を受信する受信手段とを有することを特徴とする通信装置。
  2. 前記提供手段は、前記情報を前記中継装置へ提供することを特徴とする請求項1に記載の通信装置。
  3. 前記提供手段は、前記情報を前記サーバ装置へ提供することを特徴とする請求項に記載の通信装置。
  4. 前記第2動作モードは、前記サーバ装置と接続可能な第1の通信手段には電力が供給されず、前記中継装置と接続可能な第2の通信手段に電力が供給される動作モードであることを特徴とする請求項1乃至3の何れか1項に記載の通信装置。
  5. 前記受信手段は、前記中継装置から前記通信装置へ送信されたプッシュ通知を前記第2動作モードにおいて受信することを特徴とする請求項1乃至の何れか1項に記載の通信装置。
  6. 前記通信装置を通知対象とするプッシュ通知を前記中継装置が前記サーバ装置から受信したことを示す通知を、前記第2動作モードにおいて使用される第2の通信方式に従って受信する第2受信手段を有し、
    前記受信手段は、前記中継装置から前記通信装置へ送信されたプッシュ通知を、前記第2の通信方式とは異なる第1の通信方式に従って受信することを特徴とする請求項1乃至の何れか1項に記載の通信装置。
  7. 前記第1動作モードは、前記通信装置が第1の通信方式に従って通信可能なモードであり、
    前記第2動作モードは、前記通信装置が前記第1の通信方式とは異なる第2の通信方式に従って通信可能なモードであることを特徴とする請求項1乃至6の何れか1項に記載の通信装置。
  8. 前記第の通信方式は、BLE、ZigBee、及びNFCの何れかによって通信を行う方式であり、
    前記第の通信方式は、無線LAN、公衆無線、及び有線LANの何れかによって通信を行う方式であることを特徴とする請求項7に記載の通信装置。
  9. 前記送信手段は、前記第1動作モードにおいて前記識別情報を前記中継装置へ送信することを特徴とする請求項1乃至8の何れか1項に記載の通信装置。
  10. 継装置であって、
    信装置を通知対象として送信されるプッシュ通知を識別するための識別情報を保持する保持手段と、
    サーバ装置により送信されるプッシュ通知のうち前記識別情報に対応するプッシュ通知の送信先が前記中継装置となるように前記サーバ装置に設定させるための情報を提供する提供手段と、
    前記提供手段により前記情報が提供された後に、前記サーバ装置により送信されたプッシュ通知を第1通信手段を用いて受信する受信手段と、
    前記受信手段により受信されたプッシュ通知が前記通信装置を通知対象とするプッシュ通知であるかを、前記保持手段により保持された前記識別情報に基づいて判定する判定手段と、
    前記受信手段により受信されたプッシュ通知が前記通信装置を通知対象とするプッシュ通知であると前記判定手段により判定された場合に、前記第1通信手段とは少なくとも通信方式が異なる第2通信手段を用いて前記通信装置へプッシュ通知を送信する送信手段とを有することを特徴とする中継装置。
  11. 前記通信装置から前記識別情報を受信する第2受信手段を有し、
    前記保持手段は、前記第2受信手段により受信された前記識別情報を保持することを特徴とする請求項10に記載の中継装置。
  12. 前記第2通信手段は、前記第1通信手段よりも小さい消費電力で動作可能であることを特徴とする請求項10又は11に記載の中継装置。
  13. 前記第1通信手段は、HTTP/2に従って通信を行うことを特徴とする請求項10乃至12のいずれか1項に記載の中継装置。
  14. 前記識別情報は、サービスを識別するサービス属性IDと、前記通信装置を識別する識別子とを含むことを特徴とする請求項10乃至13のいずれか1項に記載の中継装置。
  15. 通信装置の制御方法であって、
    記通信装置を通知対象として送信されるプッシュ通知を識別するための識別情報を、中継装置に送信する送信工程と、
    サーバ装置により送信されるプッシュ通知のうち前記識別情報に対応するプッシュ通知の送信先が前記中継装置となるように前記サーバ装置に設定させるための情報を提供する提供工程と、
    前記送信工程における前記中継装置への前記識別情報の送信および前記提供工程における前記情報の提供の後に、前記通信装置の動作モードを、前記中継装置を介さずに前記サーバ装置と通信可能な第1動作モードから、前記サーバ装置との接続に係る消費電力よりも小さい消費電力で接続可能な前記中継装置を介して前記サーバ装置と通信する第2動作モードに切り替えるための処理を実行する制御工程と、
    前記制御工程において実行される制御に応じて前記通信装置の動作モードが前記第2動作モードに切り替わった後に、前記サーバ装置から前記中継装置へのプッシュ通知の送信に応じて前記中継装置から前記通信装置へ送信されたプッシュ通知を受信する受信工程と、を有することを特徴とする通信装置の制御方法。
  16. 前記提供工程は、前記情報を前記中継装置又は前記サーバ装置へ提供することを特徴とする請求項15に記載の通信装置の制御方法。
  17. 継装置の制御方法であって、
    信装置を通知対象として送信されるプッシュ通知を識別するための識別情報を保持する保持工程と、
    サーバ装置により送信されるプッシュ通知のうち前記識別情報に対応するプッシュ通知の送信先が前記中継装置となるように前記サーバ装置に設定させるための情報を提供する提供工程と、
    前記提供工程において前記情報が提供された後に、前記サーバ装置により送信されたプッシュ通知を第1通信手段を用いて受信する受信工程と、
    前記受信工程において受信されたプッシュ通知が前記通信装置を通知対象とするプッシュ通知であるかを、前記保持工程において保持された前記識別情報に基づいて判定する判定工程と、
    前記受信工程において受信されたプッシュ通知が前記通信装置を通知対象とするプッシュ通知であると前記判定工程において判定された場合に、前記第1通信手段とは少なくとも通信方式が異なる第2通信手段を用いて前記通信装置へプッシュ通知を送信する送信工程と、を有することを特徴とする中継装置の制御方法。
  18. 前記通信装置から前記識別情報を受信する第2受信工程を有し、
    前記保持工程は、前記第2受信工程において受信された前記識別情報を保持することを特徴とする請求項17に記載の中継装置の制御方法。
  19. 求項1乃至9の何れか1項に記載の通信装置、又は請求項10乃至14の何れか1項に記載の中継装置としてコンピュータを機能させるためのプログラム。
JP2015133927A 2015-07-02 2015-07-02 通信装置および中継装置およびそれらの制御方法、プログラム Active JP6552303B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015133927A JP6552303B2 (ja) 2015-07-02 2015-07-02 通信装置および中継装置およびそれらの制御方法、プログラム
US15/196,747 US10015746B2 (en) 2015-07-02 2016-06-29 Communication apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015133927A JP6552303B2 (ja) 2015-07-02 2015-07-02 通信装置および中継装置およびそれらの制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2017016482A JP2017016482A (ja) 2017-01-19
JP2017016482A5 JP2017016482A5 (ja) 2018-08-09
JP6552303B2 true JP6552303B2 (ja) 2019-07-31

Family

ID=57684430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015133927A Active JP6552303B2 (ja) 2015-07-02 2015-07-02 通信装置および中継装置およびそれらの制御方法、プログラム

Country Status (2)

Country Link
US (1) US10015746B2 (ja)
JP (1) JP6552303B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6584171B2 (ja) 2015-07-02 2019-10-02 キヤノン株式会社 通信装置、通信方法及びプログラム
JP6532341B2 (ja) 2015-07-28 2019-06-19 キヤノン株式会社 通信装置、その制御方法、およびプログラム
US11147719B2 (en) * 2015-11-16 2021-10-19 Hill-Rom Services, Inc. Incontinence detection systems for hospital beds
US10291682B1 (en) * 2016-09-22 2019-05-14 Juniper Networks, Inc. Efficient transmission control protocol (TCP) reassembly for HTTP/2 streams

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4258473B2 (ja) * 2005-01-31 2009-04-30 ブラザー工業株式会社 サーバ装置及びコンテンツ提供システム
US8478360B2 (en) * 2008-03-03 2013-07-02 Qualcomm Incorporated Facilitating power conservation in wireless client terminals
JP5906677B2 (ja) * 2010-11-08 2016-04-20 ブラザー工業株式会社 通信システム、通信装置、中継装置の制御プログラム、および中継装置の制御方法
JP2014146876A (ja) 2013-01-28 2014-08-14 Nec Corp メッセージ配信システムおよびメッセージ配信方法
US9363669B2 (en) * 2013-04-12 2016-06-07 Blackberry Limited Methods and systems for server-initiated activation of device for operation with server
JP2015001784A (ja) * 2013-06-13 2015-01-05 富士通株式会社 情報処理システム、情報処理装置、及び情報処理プログラム
JP6334940B2 (ja) 2014-02-12 2018-05-30 キヤノン株式会社 通信装置、通信装置の制御方法およびプログラム
KR20150138735A (ko) * 2014-06-02 2015-12-10 삼성전자주식회사 전자 장치의 비콘 부가 서비스 방법 및 그 전자 장치
US10743255B2 (en) * 2014-07-25 2020-08-11 Apple Inc. Power optimization modes for communication between device and server
US10069719B2 (en) * 2015-06-16 2018-09-04 Samsung Electronics Co., Ltd. Method and apparatus for multipath media delivery

Also Published As

Publication number Publication date
JP2017016482A (ja) 2017-01-19
US10015746B2 (en) 2018-07-03
US20170006546A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
US10194371B2 (en) Communication apparatus and control method of communication apparatus
EP2699024B1 (en) Near Field Communication Device
JP6552303B2 (ja) 通信装置および中継装置およびそれらの制御方法、プログラム
US9974104B2 (en) Wireless communication apparatus and method for seamlessly communicating data by setting up and switching between multiple networks
JP6480677B2 (ja) 通信装置及びその制御方法、コンピュータプログラム
US10108383B2 (en) Communication device communicating target data with external device according to near field communication
JP2013517659A (ja) 電子機器及び電子機器の動作方法
EP2699023B1 (en) Near Field Communication Device
US10159041B2 (en) Communication apparatus, method of controlling the same, and non-transitory computer-readable storage medium
JP2016225949A (ja) 通信装置、通信装置の制御方法及びプログラム
US10181096B2 (en) Communication apparatus, method for controlling communication apparatus, and storage medium
US20180227979A1 (en) Communication apparatus, control method, and storage medium
CN107277743B (zh) 通信***、通信装置和控制方法
JP6512875B2 (ja) 通信装置、通信装置の制御方法及びプログラム
US11729289B2 (en) Push message communication apparatus
JP6702916B2 (ja) 通信装置、外部装置、通信装置の制御方法、外部装置の制御方法、及び、プログラム
EP2950606A1 (en) Communication device, method for controlling communication device, and program
EP3821577A1 (en) Security information exchange between a client and a server
US9467935B2 (en) Communication apparatus and control method thereof
KR102059372B1 (ko) 무선 네트워크에서 가상 도킹을 가능하게 하기 위한 방법 및 장치
JP2020088712A (ja) 通信装置およびその制御方法
JP2016181934A (ja) 通信装置
JP6577718B2 (ja) 通信装置、通信装置の制御方法及びプログラム
TW201505463A (zh) 推送通知方法、系統以及無線通信裝置
JP2017076866A (ja) 通信装置、その制御方法、及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180628

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190516

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190603

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190702

R151 Written notification of patent or utility model registration

Ref document number: 6552303

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151