JP6873660B2 - 情報処理装置、通信装置、プログラム及び制御方法 - Google Patents

情報処理装置、通信装置、プログラム及び制御方法 Download PDF

Info

Publication number
JP6873660B2
JP6873660B2 JP2016228397A JP2016228397A JP6873660B2 JP 6873660 B2 JP6873660 B2 JP 6873660B2 JP 2016228397 A JP2016228397 A JP 2016228397A JP 2016228397 A JP2016228397 A JP 2016228397A JP 6873660 B2 JP6873660 B2 JP 6873660B2
Authority
JP
Japan
Prior art keywords
information
information processing
search
processing device
communication
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
JP2016228397A
Other languages
English (en)
Other versions
JP2018085657A (ja
JP2018085657A5 (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 JP2016228397A priority Critical patent/JP6873660B2/ja
Priority to KR1020170155318A priority patent/KR102281467B1/ko
Priority to US15/819,077 priority patent/US10440222B2/en
Priority to EP17203119.7A priority patent/EP3328034B1/en
Priority to CN201711179725.1A priority patent/CN108108134B/zh
Publication of JP2018085657A publication Critical patent/JP2018085657A/ja
Priority to US16/576,542 priority patent/US10848640B2/en
Publication of JP2018085657A5 publication Critical patent/JP2018085657A5/ja
Application granted granted Critical
Publication of JP6873660B2 publication Critical patent/JP6873660B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/327Initiating, continuing or ending a single-mode communication; Handshaking therefor
    • H04N1/32765Initiating a communication
    • H04N1/32771Initiating a communication in response to a request, e.g. for a particular document
    • H04N1/32776Initiating a communication in response to a request, e.g. for a particular document using an interactive, user-operated device, e.g. a computer terminal, mobile telephone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1226Discovery of devices having required properties
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1292Mobile client, e.g. wireless printing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00281Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a telecommunication apparatus, e.g. a switched network of teleprinters for the distribution of text-based information, a selective call terminal
    • H04N1/00307Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a telecommunication apparatus, e.g. a switched network of teleprinters for the distribution of text-based information, a selective call terminal with a mobile telephone apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/0035User-machine interface; Control console
    • H04N1/00405Output means
    • H04N1/00408Display of information to the user, e.g. menus
    • H04N1/00413Display of information to the user, e.g. menus using menus, i.e. presenting the user with a plurality of selectable options
    • H04N1/00416Multi-level menus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32106Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file
    • H04N1/32122Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file in a separate device, e.g. in a memory or on a display separate from image data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0048Type of connection
    • H04N2201/0055By radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0048Type of connection
    • H04N2201/006Using near field communication, e.g. an inductive loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3204Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a user, sender, addressee, machine or electronic recording medium
    • H04N2201/3207Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a user, sender, addressee, machine or electronic recording medium of an address
    • H04N2201/3208Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to a user, sender, addressee, machine or electronic recording medium of an address of an e-mail or network address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、情報処理装置、通信装置、プログラム及び制御方法に関するものである。
外部の装置と通信する情報処理装置が知られている。このような情報処理装置は、通信を開始する前に、通信相手となる装置(情報処理装置が通信可能な装置)を検索する処理を実行する。特許文献1には、マルチキャスト検索やユニキャスト検索によって、情報処理装置が通信可能な装置を発見する情報処理装置が記載されている。
特開2012−39416号公報
ところで、情報処理装置は一般に、ユニキャスト検索処理によって、自身が属しているサブネットの外部の装置を発見することが可能だが、ユニキャスト検索処理の実行には検索対象の装置を特定するための特定情報を必要とする。
特許文献1の情報処理装置は、ユニキャスト検索処理に用いる特定情報(IPアドレス)を、マルチキャスト検索処理によって取得している。しかしながら、情報処理装置は一般に、マルチキャスト検索処理では、自身が属しているサブネットの内部の装置しか発見することができない。そのため、結果として、特許文献1の情報処理装置は、ユニキャスト検索処理であっても、自身が属しているサブネットの外部の装置を発見することできないという課題が有る。そこで、本発明は、自身が属しているサブネットの外部の装置を発見することが可能な情報処理装置を提供することを目的とする。
上記課題を解決するため、本発明の情報処理装置は、
近距離無線通信を実行する第1通信部と、前記近距離無線通信より高速な通信を実行する第2通信部と、を有する情報処理装置であって、
ユーザから所定の指示を受け付ける指示受付手段と、
前記第1通信部によって、前記情報処理装置の外部の装置から、前記装置を特定するための特定情報を受信する処理を、前記指示受付手段により前記所定の指示が受け付けられる前から開始する受信手段と、
前記受信手段により受信された前記特定情報をメモリに保存する保存手段と、
前記受け付け手段により前記所定の指示が受け付けられた場合、前記情報処理装置が属するサブネット内の、前記情報処理装置が通信可能な装置を検索可能な第1検索処理を実行する第1検索手段と、
前記受け付け手段により前記所定の指示が受け付けられた場合、前記保存手段により保存された前記特定情報を用いて、前記情報処理装置が属するサブネットの外部の、前記情報処理装置が通信可能な装置を検索可能な第2検索処理を実行する第2検索手段と、
前記第1検索手段及び前記第2検索手段によって発見された装置のうちいずれかの装置と、前記第2通信部によって通信する通信手段と、
を有し、
前記第2検索手段によって前記第2検索処理が実行された場合、前記第2検索処理に用いられた前記特定情報の送信元の装置が発見されることを特徴とする。
また、本発明の通信装置は、
無線通信を実行する通信部を有する通信装置であって、
前記無線通信による接続を新たに実行しない状態であることを示す第1の情報及び、前記通信装置が前記通信装置の外部の装置と前記近距離無線通信によって接続している状態で送信されることができず、且つ前記近距離無線通信による接続を実行可能な状態であることを示す第2の情報を、前記通信部によって送信可能な送信手段を有し、
前記送信手段は、前記通信装置が前記通信装置の外部の装置と前記近距離無線通信によって接続している場合、前記通信部によって前記第1の情報を送信し、前記通信装置が前記通信装置の外部の装置と前記近距離無線通信によって接続していない場合、前記通信部によって前記第2の情報を送信し、
前記第1の情報又は前記第2の情報が、情報処理装置によって取得される場合、前記情報処理装置は、前記通信装置を特定するための特定情報を取得し、
前記特定情報を取得した前記情報処理装置は、前記特定情報を用いて、前記情報処理装置が属するサブネットの外部の、前記情報処理装置が通信可能な装置を検索可能な検索処理を実行し、
前記情報処理装置によって前記検索処理が実行された場合、前記検索処理に用いられた前記特定情報の送信元の装置が発見されることを特徴とする。
また、本発明の制御方法は、
近距離無線通信を実行する第1通信部と、前記近距離無線通信より高速な通信を実行する第2通信部と、を有する情報処理装置と、
前記近距離無線通信を実行する第3通信部を有する通信装置と、を含む通信システムの制御方法であって、
前記第3通信部によって、前記通信装置を特定するための特定情報を、前記情報処理装置に送信する送信ステップと、
前記第1通信部によって、前記通信装置から、前記特定情報を受信する受信ステップと、
前記受信ステップにより受信された前記特定情報をメモリに保存する保存ステップと、
前記情報処理装置が属するサブネット内の、前記情報処理装置が通信可能な装置を検索可能な第1検索処理を実行する第1検索ステップと、
前記保存ステップにより保存された前記特定情報を用いて、前記情報処理装置が属するサブネットの外部の、前記情報処理装置が通信可能な装置を検索可能な第2検索処理を実行する第2検索ステップと、
前記第1検索ステップ及び前記第2検索ステップによって発見された装置のうちいずれかの装置と、前記第2通信部によって通信する通信ステップと、を有し、
前記第2検索ステップによって、前記特定情報が用いられた前記第2検索処理が実行された場合、前記通信装置が発見されることを特徴とする。
情報処理装置が、自身が属しているサブネットの外部の装置を発見することが可能となる。
情報処理装置と通信装置のハードウェア構成部を示す図である。 通信装置が備える近距離通信部の詳細を示す図である。 1つのサブネットで構成されるネットワークに属する通信システムを示す図である。 複数のサブネットで構成されるネットワークに属する通信システムを示す図である。 近距離通信部が通信装置の周辺にブロードキャストするアドバタイズ情報の構造の一例 近距離通信部の消費電力を示す図である。 近距離通信部によるアドバタイズ情報の送信処理と受信処理を示す図である。 情報処理装置が自身と異なるサブネットに属する通信装置を検索する際に各装置が実行する処理を示すシーケンス図である。 情報処理装置が、アドバタイズ情報を取得した際に実行する処理を示すフローチャートである。 情報処理装置が、情報処理装置の通信先となる装置を検索する際に実行する処理を示すフローチャートである。 通信装置がアドバタイズ情報を送信する際に実行する処理を示すフローチャートである。 情報処理装置が、アドバタイズ情報を取得した際に実行する処理を示すフローチャートである。 それぞれのタイプのアドバタイズ情報のペイロードの内容を示す図である。 検索指示を受け付けるための画面の一例を示す図である。
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本発明の範囲に入ることが理解されるべきである。
(第1実施形態)
本実施形態の通信システムに含まれる情報処理装置及び通信装置について説明する。情報処理装置として、本実施形態ではスマートフォンを例示しているが、これに限定されず、携帯端末、ノートPC、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置として、本実施形態ではプリンタを例示しているが、これに限定されず、情報処理装置と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ等にも適用可能である。その他、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機にも適用可能である。
まず、本実施形態の情報処理装置と、本実施形態の通信装置のハードウェア構成部について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を例に記載するが、装置間で通信を行うことが可能な装置に関して適用可能なものであり、特にこの図のとおりに機能や構成を限定するものではない。情報処理装置101は、本実施形態の情報処理装置である。情報処理装置101は、入力インタフェース102、CPU103、ROM104、RAM105、外部記憶装置106、出力インタフェース107、表示部108、通信部109、近距離通信部110、撮影装置111等のハードウェア構成部を有する。
入力インタフェース102は、物理キーボードやボタン、タッチパネル等を介してユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。
CPU103は、システム制御部であり、情報処理装置101の全体を制御する。
ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(以下、OSという。)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。
RAM105は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成される。なお、RAM105は、図示しないデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、情報処理装置101の設定情報や情報処理装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
外部記憶装置106は、印刷実行機能を提供するアプリケーション(以降、印刷アプリと記載する)を備えている。また、外部記憶装置106は、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム、通信部109を介して接続している通信装置151との間で送受信する情報送受信制御プログラム等の各種プログラムを備えている。これらのプログラムが使用する各種情報を保存している。また、通信部109を介して他の情報処理装置やインターネットから得た画像データも保存している。
出力インタフェース107は、表示部108がデータの表示や情報処理装置101の状態の通知を行うための制御を行うインタフェースである。
表示部108は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や情報処理装置101の状態の通知を行う。なお、表示部108をタッチパネルで構成しても良い。その場合、情報処理装置101は、数値入力キー、モード設定キー、決定キー、取り消しキー、電源キー等のキーを備えるソフトキーボードを表示部108に表示させることで、表示部108を介してユーザからの入力を受け付けても良い。
通信部109は、通信装置151等の装置と接続して、データ通信を実行するための構成である。例えば、通信部109は、通信装置151内のアクセスポイント(不図示)に接続可能である。通信部109と通信装置151内のアクセスポイントが接続することで、情報処理装置101と通信装置151は相互に通信可能となる。なお、通信部109は無線通信で通信装置151とダイレクトに通信しても良いし、情報処理装置101や通信装置151の外部に存在する外部アクセスポイント(アクセスポイント131)を介して通信しても良い。無線通信方式としては、例えば、Wi−Fi(WirelessFidelity)(商標登録)が挙げられる。また、アクセスポイント131としては、例えば、無線LANルーター等の機器などが挙げられる。なお、本実施形態において、情報処理装置101と通信装置151とが外部アクセスポイントを介さずにダイレクトに接続する方式をダイレクト接続方式という。また、情報処理装置101と通信装置151とが外部アクセスポイントを介して接続する方式をインフラストラクチャー接続方式という。また、通信部109は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウェアにより、アクセスポイントとして動作してもよい。また、本実施形態では、通信部109は、近距離通信部110の実行する通信(近距離無線通信)より長距離及び高速な通信を可能とする。
近距離通信部110は、通信装置151等の装置と近距離で無線接続して、データ通信を実行するための構成であり、通信部109とは異なる通信方式によって通信を行う。近距離通信部110は、通信装置151内の近距離通信部157と接続可能である。なお、本実施形態では、近距離通信部110の無線通信方式として、Bluetooth Low Energy(登録商標)が用いられるものとする。なお、以下においてBluetooth Low EnergyをBLEという。そのため、近距離通信部110は、BLE規格によって定義されるGATT(Generic Attribute Profile)通信によって、他の近距離通信部と通信する。なお、近距離通信部110が利用する通信方式は、BLEに限定されず、例えばNFC(Near Field Communication)やBluetooth Classic(登録商標)等の他の通信方式であっても良い。
撮影装置111は撮影素子で撮影した画像をデジタルデータに変換する装置である。デジタルデータは一度RAM105に格納する。その後、CPU154が実行するプログラムで所定の画像フォーマットに変換し、画像データとして外部記憶装置106に保存する。
通信装置151は、本実施形態の通信装置である。通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、通信部156、近距離通信部157、入力インタフェース158、出力インタフェース159、表示部160、等を有する。
通信部156は、通信装置151内部のアクセスポイントとして、情報処理装置101等の装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、情報処理装置101の通信部109に接続可能である。なお、通信部156は無線通信で情報処理装置101とダイレクトに通信しても良いし、アクセスポイント131を介して通信しても良い。通信方式としては、例えば、Wi−Fi(商標登録)が挙げられる。また、通信部156は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウェアにより、アクセスポイントとして動作してもよい。
RAM153は、バックアップ電源を必要とするDRAM等で構成される。なお、RAM153は、図示しないデータバックアップ用の電源が供給されることによってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、RAM153は、CPU154の主メモリとワークメモリとしても用いられ、情報処理装置101等から受信した印刷情報を一旦保存するための受信バッファや各種の情報を保存する。
ROM152は、CPU154が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。本実施形態では、ROM152に格納されている各制御プログラムは、ROM152に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。また、通信装置151の設定情報や通信装置151の管理データ等の電源供給がされていない場合も保持する必要があるデータを格納するメモリエリアもROM152に設けられている。
CPU154は、システム制御部であり、通信装置151の全体を制御する。
プリントエンジン155(画像形成部)は、RAM153に保存された情報や情報処理装置101等から受信した印刷情報に基づき、インク等の記録剤を用いて紙等の記録媒体上に画像形成し、印刷結果を出力する。この時、情報処理装置101等から送信される印刷情報は、送信データ量が大きく、高速な通信が求められるため、近距離通信部157よりも高速に通信可能な通信部156(高速通信部)を介して受信する。
入力インタフェース158は、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースであり、物理キーボードやボタン、タッチパネル等で構成される。なお、後述の出力インタフェース159と入力インタフェース158とを同一の構成とし、画面の出力とユーザからの操作の受け付けを同一の構成で行うような形態としても良い。出力インタフェース159は、表示部160がデータの表示や通信装置151の状態の通知を行うための制御を行うインタフェースである。
表示部160は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や通信装置151の状態の通知を行う。なお、表示部160上に、数値入力キー、モード設定キー、決定キー、取り消しキー、電源キー等のキーを備えるソフトキーボードを設置することで、表示部160を介してユーザからの入力を受け付けても良い。
近距離通信部157の詳細を図2に示す。近距離通信部157は、情報処理装置101等の装置と近距離で無線接続するための構成である。本実施形態では、近距離通信部157の無線通信方式として、BLEが用いられる。そのため、近距離通信部157は、BLE規格によって定義されるGATT通信によって、情報処理装置の外部の装置が備える近距離通信部と通信する。近距離通信部157とCPU154は、I2C等のバスインターフェースを介して通信を行う。また、近距離通信部157には、CPU201と記憶領域202とROM203とRAM204が含まれる。記憶領域202は、CPU154からアクセスを受け付けることが可能な記憶領域である。また、記憶領域202は、近距離通信部110を介して情報処理装置101からもアクセスを受け付けることが可能である。RAM204は、バックアップ電源を必要とするDRAM等で構成される。なお、RAM204は、図示しないデータバックアップ用の電源が供給されることによってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、RAM204は、CPU201の主メモリとワークメモリとしても用いられる。ROM203は、CPU201が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。なお、近距離通信部110も、近距離通信部157と同様の構成を有していても良い。なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
本実施形態では、通信装置151がペリフェラルとして動作し、情報処理装置101がセントラルとして動作する。なお、ペリフェラルである通信装置151は、後述のアドバタイズ情報をブロードキャストするアドバタイザとしても動作する。また、セントラルである情報処理装置101は、アドバタイズ情報を受信するイニシエータとしても動作する。
ここでは、例として情報処理装置101と通信装置151との処理分担を上記のように示したが、特にこの分担形態に限らず他の形態であってもよい。
ここで、BLE規格におけるアドバタイズ情報の送信及びGATT通信の開始要求の受信の処理について説明する。本実施形態では、上述したように近距離通信部157がスレーブ機器として動作するため、近距離通信部157が上記処理を行うものとする。
近距離通信部157は、2.4GHzの周波数帯を40チャネル(0〜39ch)に分割して通信を行う。近距離通信部157は、そのうち、37〜39番目のチャネルをアドバタイズ情報の送信及びGATT通信の開始要求の受信に利用し、0〜36番目のチャネルをBLE接続後のデータ通信(GATT通信)に利用している。図6では、縦軸が近距離通信部157の消費電力を、横軸が時間を示しており、1つのチャネルを利用してアドバタイズ情報を送信する際の消費電力を各処理別に示している。Tx605は、アドバタイズ情報をブロードキャストする処理である送信処理における総消費電力を、Rx606は、GATT通信の開始要求を受信するための受信器を有効にしておく処理である受信処理における総消費電力を示している。送信電力602は送信処理による瞬間消費電力を示している。また、受信電力603は受信処理による瞬間消費電力を示している。また、マイコン動作電力601は、近距離通信部157内のマイコンが動作している場合の瞬間消費電力を示している。なお、Tx605とRx606の前後や間にもマイコンが動作しているのは、送信・受信処理の実行や停止のためには事前にマイコンが起動している必要があるからである。また、アドバタイズ情報の送信を複数チャネルで行う場合は、アドバタイズ情報の送信を行うチャネルの数だけ消費電力が増えることになる。また、マイコンが動作を行っておらず、近距離通信部157が省電力状態となっている間は、スリープ電力604が近距離通信部157の瞬間消費電力となる。なお、スリープ電力604は、後述の図7における省電力時間に近距離通信部157によって消費される電力である。このように、近距離通信部157は、所定のチャネルを用いて送信処理を行った後、同一のチャネルを用いて一定時間受信処理を行うことで、情報処理装置101からGATT通信の開始要求が送信されるのを待つ。
また、近距離通信部157は、図7に示すように、アドバタイズ情報の送信処理と受信処理を、チャネル別に3回繰り返した後、マイコンの動作を停止させ一定時間省電力状態になる。以下、所定のチャネルによるアドバタイズ情報の送信処理と受信処理の組み合わせをアドバタイズと言う。また、所定のチャネルによってアドバタイズ情報を送信する時間間隔をアドバタイズ間隔という。このように、近距離通信部157は、アドバタイズ間隔毎に省電力状態となることで、消費電力を抑制して動作を続けることが可能である。なお、1回目のアドバタイズを行ってから省電力状態になるまでに繰り返すアドバタイズの回数は、3回以下であれば任意に変更可能である。
図5は、近距離通信部157が通信装置151の周辺にブロードキャストするアドバタイズ情報の構造の一例である。
近距離通信部157は、電力の供給が開始されると初期化処理を行い、アドバタイジング状態となる。近距離通信部157は、アドバタイジング状態となると、アドバタイズ間隔に基づいて定期的にアドバタイズ情報を周辺にブロードキャストする。アドバタイズ情報とは、基本的なヘッダ情報(当該アドバタイズ情報を送信する装置を識別するための識別情報等)を含む信号であり、ヘッダ501とペイロード502から構成される。情報処理装置101は、このアドバタイズ情報を受信することで、通信装置151の存在を認識することができる。さらに、情報処理装置101は、通信装置151にGATT通信の開始要求を送信することで通信装置151とBLE接続することができる。
ヘッダ501は、アドバタイズ情報のタイプやペイロード502の大きさの情報などを格納する領域である。アドバタイズ情報のタイプとして、ADV_IND、ADV_DIRECT_IND、ADV_NONCONN_IND、ADV_SCAN_IND、SCAN_REQ、SCAN_RSPの6種類がある。
ADV_INDのタイプであるアドバタイズ情報は、不特定多数のセントラルに向けて発されるアドバタイズ情報である。ペリフェラルは、ADV_INDのタイプであるアドバタイズ情報に対するConnect Request(接続要求)に対しては、その送信元がいずれのセントラルであっても応答し、当該送信元とのBLE接続を確立する。なお、セントラルは、ADV_INDのタイプのアドバタイズ情報を受信した場合、SCAN_REQのタイプのアドバタイズ情報を、ペリフェラルに送信しても良い。ペリフェラルは、ADV_INDのタイプのアドバタイズ情報に対する応答として、セントラルからSCAN_REQのタイプのアドバタイズ情報を受信すると、当該セントラルに対してSCAN_RSPのタイプのアドバタイズ情報を送信する。これにより、ペリフェラルは、ADV_INDのタイプのアドバタイズ情報に格納しきれない情報を、SCAN_RSPのタイプのアドバタイズ情報としてセントラルに対して送信することができる。
一方、ADV_NONCONN_INDのタイプであるアドバタイズ情報は、ペリフェラルからセントラルに対して一方的に情報を提供するためのアドバタイズ情報である。ペリフェラルは、ADV_NONCONN_INDのタイプであるアドバタイズ情報に対するConnect Requestに対しては、その送信元がいずれのセントラルであっても応答しない。すなわち、ペリフェラルは、ADV_NONCONN_INDのタイプであるアドバタイズ情報を送信している状態では、新たにBLE接続を確立しない。また、ペリフェラルは、ADV_NONCONN_INDのタイプのアドバタイズ情報に対する応答として、セントラルからSCAN_REQのタイプのアドバタイズ情報を受信しても、SCAN_RSPのタイプのアドバタイズ情報は送信しない。
また、ADV_SCAN_INDのタイプのアドバタイズ情報は、ADV_NONCONN_INDのタイプのアドバタイズ情報と同様、ペリフェラルからセントラルに対して一方的に情報を提供するためのアドバタイズ情報である。ペリフェラルは、ADV_SCAN_INDのタイプであるアドバタイズ情報に対するConnect Requestに対しては、その送信元がいずれのセントラルであっても応答しない。すなわち、ペリフェラルは、ADV_SCAN_INDのタイプであるアドバタイズ情報を送信している状態では、新たにBLE接続を確立しない。しかし、ADV_NONCONN_INDのタイプのアドバタイズ情報と異なり、ADV_SCAN_INDのタイプのアドバタイズ情報に対しては、セントラルは、SCAN_REQのタイプのアドバタイズ情報を応答することができる。すなわち、ペリフェラルは、ADV_SCAN_INDのタイプのアドバタイズ情報に対する応答として、セントラルからSCAN_REQのタイプのアドバタイズ情報を受信した場合、SCAN_RSPのタイプのアドバタイズ情報を送信する。
ADV_DIRECT_INDのタイプのアドバタイズ情報については説明を省略する。
なお、ペリフェラルは、いずれかのセントラルとBLE接続を確立している状態では、ADV_NONCONN_IND及びADV_SCAN_INDのタイプのアドバタイズ情報は送信できるが、ADV_INDのタイプのアドバタイズ情報は送信できない。すなわち、ペリフェラルは、ADV_IND、ADV_NONCONN_IND及びADV_SCAN_INDのタイプのアドバタイズ情報の全てを送信できるのは、いずれのセントラルともBLE接続を確立していない状態である場合である。
ペイロード502は、識別情報としてのデバイス名503や搭載プロファイル情報、通信装置151とBLE接続するための接続情報504、アドバタイズ情報の送信電力(Tx Power)505等の情報を格納する。なお、通信装置の識別情報506をアドバタイズ情報に含めても良い。通信装置の識別情報506としては、通信装置のMACアドレスや、通信装置のサービス情報、通信装置内のアクセスポイントのSSID、パスワード等が該当する。なお、アドバタイズ情報には、上述の情報以外の種々の情報が含まれていても良い。なお、本実施形態では、ペイロード502には、後述のユニキャスト検索処理で、アドバタイズ情報の送信元の通信装置を特定するための特定情報が含まれるものとする。特定情報は、具体的には、アドバタイズ情報の送信元の通信装置のIPアドレスであるものとするが、後述のユニキャスト検索処理に利用できる情報であればこれに限定されない。
図13は、それぞれのタイプのアドバタイズ情報のペイロード502の内容である。ADV_INDのタイプのアドバタイズ情報は、当該アドバタイズ情報の送信元のペリフェラル(アドバタイザ)のアドレスであるアドレス1301と、データ1302をペイロード502に含む。ADV_NONCONN_INDのタイプのアドバタイズ情報は、当該アドバタイズ情報の送信元のペリフェラル(アドバタイザ)のアドレスであるアドレス1303と、データ1304をペイロード502に含む。SCAN_REQのタイプのアドバタイズ情報は、当該アドバタイズ情報の送信元のセントラル(イニシエータ)のアドレスであるアドレス1305と、当該アドバタイズ情報の送信先のペリフェラル(アドバタイザ)のアドレスであるアドレス1306を含む。SCAN_RSPのタイプのアドバタイズ情報は、当該アドバタイズ情報の送信元のペリフェラル(アドバタイザ)のアドレスであるアドレス1307と、データ1308をペイロード502に含む。ADV_SCAN_INDのタイプのアドバタイズ情報は、当該アドバタイズ情報の送信元のペリフェラル(アドバタイザ)のアドレスであるアドレス1309と、データ1310をペイロード502に含む。
アドバタイズ情報に含まれるアドレスを参照することで、アドバタイズ情報を参照する装置は、当該アドバタイズ情報の送信元や送信先を特定することができる。なお、本実施形態では、ペリフェラルとして動作する通信装置151は、BLE機能が有効化されていれば、ADV_IND、ADV_NONCONN_IND又はADV_SCAN_INDのタイプのアドバタイズ情報をブロードキャストしているものとする。そして、それらのアドバタイズ情報に含まれる、データ1302やデータ1304、データ1310に、特定情報が含まれるものとする。なお、この形態に限定されず、ADV_INDのタイプのアドバタイズ情報には特定情報が含まれず、当該アドバタイズ情報の後に送信されるSCAN_RSPのタイプのアドバタイズ情報に特定情報が含まれる形態としても良い。また、ADV_SCAN_INDのタイプのアドバタイズ情報には特定情報が含まれず、当該アドバタイズ情報の後に送信されるSCAN_RSPのタイプのアドバタイズ情報に特定情報が含まれる形態としても良い。
ここで、本実施形態の課題を説明する。まずは、図3に示すような1つのサブネットで構成されるネットワークに属する通信システムにおいて、情報処理装置101が、通信装置151を検索する形態を説明する。図3に示す通信システムでは、通信装置151と情報処理装置101がそれぞれアクセスポイント302に直接接続して、サブネット301を形成している。なお、サブネットとは、ネットワークの単位である。本実施形態では、親機として動作する1つのアクセスポイントと、そのアクセスポイントに接続しており、子機として動作する装置の集合を1つのサブネットとみなす。また、通信装置151と情報処理装置101がアクセスポイント302に接続する方法は限定されないが、ここでは、通信部109や通信部156を介して、WiFi規格にて無線接続しているものとする。また、アクセスポイント302は、アクセスポイント131と同様の外部アクセスポイントである。
情報処理装置101は、自身と通信可能な通信装置を検索する場合、一般には、マルチキャスト検索処理を実行する。マルチキャスト検索処理とは、具体的には、当該処理を実行する装置が属するサブネット内の複数の装置に、アクセスポイントを介して問い合わせを行い、当該装置と通信可能な通信装置を検索する処理である。言いかえれば、マルチキャスト検索処理とは、一度に複数の装置に検索用の情報を送信する処理である。情報処理装置101は、マルチキャスト検索処理によって、自身が属するサブネットに属する装置(自身が属するサブネットの内部の装置)を検索可能である。マルチキャスト検索処理は、例えば、BonjourやLLMNR等のプロトコルに基づいて行われる。
図3に示す通信システムにおいては、情報処理装置101はマルチキャスト検索処理により、同一のサブネットに属する通信装置151を特定することができ、以後、アクセスポイント302を介して、通信装置151と通信を行うことができる。具体的には例えば、情報処理装置101は、通信装置151に印刷を実行させるための印刷ジョブ等を通信装置151に送信することができる。
次に図4に示すような、複数のサブネットで構成されるネットワークに属する通信システムにおいて、情報処理装置101が、通信装置151を検索する形態を説明する。図4に示す通信システムでは、通信装置151がアクセスポイント402に直接接続し、サブネット401を形成している。また、情報処理装置101がアクセスポイント412に直接接続しサブネット411を形成している。そして、アクセスポイント402とアクセスポイント412が、例えばインターネット回線を介した接続により、通信可能な状態となっている。なお、アクセスポイント402とアクセスポイント412は、例えばLAN等によってダイレクトで接続していても良い。しかしながら、アクセスポイント402とアクセスポイント412がダイレクトで接続しても、どちらかのアクセスポイントが親機となり、もう一方のアクセスポイントの子機となるわけではない。また、図3と同様、通信装置151や情報処理装置101は、通信部109や通信部156を介して、WiFi規格にて各アクセスポイントと無線接続しているものとする。また、アクセスポイント402とアクセスポイント412は、アクセスポイント131と同様の外部アクセスポイントである。
図4のような、複数のサブネットで構成されるネットワークに属する通信システムにおいても、サブネット同士が通信可能な構成となっていれば、複数のサブネットそれぞれに含まれる装置同士で通信することは可能である。具体的には、例えば、情報処理装置101は、通信装置151を検索により発見(ディスカバリー)した後、アクセスポイント402とアクセスポイント412を介して、通信装置151に情報を送信することが可能である。
ここで、上述したように、情報処理装置101は、通信可能な通信装置151を検索する場合は、一般には、マルチキャスト検索処理を実行する。しかしながら、図4に示すような複数のサブネットで構成される通信システムにおいては、情報処理装置101は、マルチキャスト検索処理では、通信装置151を発見することができないことがある。これは、マルチキャスト検索処理では、一般に、当該処理を実行する装置が属するサブネット以外のサブネットに属する装置を検索することはできないためである。
すなわち、複数のサブネットで構成される通信システムにおいて情報処理装置101は、通信装置151が自身と異なるサブネットに属していても、通信装置151を発見さえできれば通信装置151と通信できる。その一方で、情報処理装置101は、マルチキャスト検索処理では、自身と異なるサブネットに属する通信装置151を発見することができないことがあるという課題がある。
そこで、本実施形態では、複数のサブネットで構成される通信システムにおいて、情報処理装置101が、自身と異なるサブネットに属する通信装置151を発見するための制御を実行する形態を説明する。具体的には、情報処理装置101は、通信装置151が近距離通信部157によって送信している特定情報を用いて、ユニキャスト検索処理を行う。ユニキャスト検索処理とは、具体的には、当該処理を実行する装置が属するネットワーク内の特定の装置に、アクセスポイントを介して問い合わせを行い、当該特定の装置を検索する処理である。言いかえれば、ユニキャスト検索処理とは、予め特定された単一の装置に検索用の情報を送信する処理である。ユニキャスト検索処理では、検索対象の装置を特定するために、検索対象の装置のIPアドレス等の情報(特定情報)が用いられる。なお、情報処理装置101は、ユニキャスト検索処理によって、自身が属するサブネット以外のサブネットに属する装置(自身が属するサブネットの外部の装置)も検索可能である。
これにより、情報処理装置101は、自身と異なるサブネットに属する通信装置151を発見することができる。さらに、情報処理装置101は、特定情報のスキャンを、ユーザから情報処理装置101の通信先となる装置の検索指示を受け付ける前から実行し、スキャンによって得た特定情報を適宜用いて、検索指示を受け付けた後の検索処理を実行する。これにより、情報処理装置101は、検索指示を受け付けた後のタイミングでは通信装置151が特定情報の送信を止めてしまっている場合にも、通信装置151をユニキャスト検索によって発見することができる。また、情報処理装置101は、検索指示を受け付けた後のタイミングでは情報処理装置101が通信装置151による特定情報の送信範囲外に位置する場合にも、通信装置151をユニキャスト検索によって発見することができる。
また、本実施形態では、ユニキャスト検索に必要な特定情報を、近距離無線通信(ここではBLE)によって取得している。これにより、情報処理装置101は、自身と異なるサブネットに属する通信装置151の特定情報を容易に(例えば、ユーザの入力を受け付けたりすることなく)取得することが可能である。
図8は、本実施形態において情報処理装置101が自身と異なるサブネットに属する通信装置151を検索する際に各装置が実行する処理を示すシーケンス図である。なお、各装置が実行する処理は、実際には、各装置のCPUが、各装置のROM、RAM等の記憶領域に格納された各種プログラムを各装置のRAMに展開し、展開されたプログラムを実行することにより実現される。
まず、通信装置151は、近距離通信部157により、アドバタイズ情報の送信(S801)を実行する。通信装置151は、このとき送信されるアドバタイズ情報のタイプは、ADV_IND、ADV_NONCONN_IND又はADV_SCAN_INDであるものとする。また、このとき送信されるアドバタイズ情報には、特定情報が含まれているものとする。なお例えば、このとき送信されるアドバタイズ情報のタイプがADV_INDやADV_SCAN_INDである場合は、特定情報が含まれなくても良い。その場合、当該アドバイタイズ情報を受信した情報処理装置101は、SCAN_REQのタイプのアドバタイズ情報を通信装置151に送信し、その後、通信装置151は、特定情報が含まれるSCAN_RSPのタイプのアドバタイズ情報を送信する。これにより、情報処理装置101は、特定情報を通信装置151から取得することができる。
続いて、情報処理装置101は、通信装置151から受信したアドバタイズ情報を解析し、当該アドバタイズ情報に含まれる特定情報をRAM105等のメモリに保存する(S802)。
なお、このとき、通信装置151以外にも、情報処理装置101の外部の装置がアドバタイズ情報を送信している場合は、情報処理装置101は、当該アドバタイズ情報を取得して、それに含まれる特定情報をメモリに保存する。
その後、情報処理装置101は、ユーザから、情報処理装置101の通信先となる装置の検索指示を受け付ける指示受付ステップを実行する(S803)。具体的には例えば、情報処理装置101は、まずユーザから、印刷対象の画像データの選択及び、選択された画像データの印刷を行うためのアイコンの押下を受け付ける。その後、情報処理装置101は、図14に示すような、印刷設定の入力を受け付けたり、印刷ジョブの送信先の通信装置の設定を受け付けたりするための画面を表示部108に表示する。そして、情報処理装置101は、当該画面において、ユーザから「プリンタを選択」ボタンの押下を受け付けることで、検索指示を受け付ける。なお、情報処理装置101は、図14に示す画面において、「プリント」ボタンの押下を受け付けることで、「プリンタを選択」ボタンの押下を介して選択された通信装置に対して、印刷対象の画像データに基づく印刷ジョブを送信する。
続いて、情報処理装置101は、マルチキャスト検索処理を実行する(S804)。具体的には、情報処理装置101は、自身が直接接続しているアクセスポイント412に対し、マルチキャスト検索要求を送信する(S805)。マルチキャスト検索要求には、例えば、情報処理装置101が探している装置の条件(サービス情報等)が含まれている。ここでは、情報処理装置101は、画像形成機能(プリンタ機能)を有している装置(印刷を実行可能な装置)を検索の条件としている。
続いて、アクセスポイント412は、マルチキャスト検索要求を受信した場合、自身に接続している装置に対しマルチキャスト検索要求を転送し、当該検索要求に合致するかどうかの問い合わせを行う(S806)。図4の通信システムでは、アクセスポイント412に接続している装置は、情報処理装置101以外ではアクセスポイント402だけであるため、アクセスポイント402に対して問い合わせを行う。しかしながら、アクセスポイント402は、自身と異なるサブネットに属する装置によるマルチキャスト検索要求を受け付けないため、応答を返さない。
続いて、情報処理装置101は、ユニキャスト検索処理を実行する(S807)。具体的には、情報処理装置101は、自身が直接接続しているアクセスポイント412に対し、ユニキャスト検索要求を送信する(S808)。ユニキャスト検索要求には、例えば、情報処理装置101が探している装置の条件(サービス情報等)が含まれている。ここでは、マルチキャスト検索要求と同様、情報処理装置101は、画像形成機能(プリンタ機能)を有している装置を検索の条件としている。また、ユニキャスト検索要求には、検索対象の装置を特定するための情報が含まれている。ここでは、当該情報として、S802でメモリに保存した特定情報が用いられる。これにより、情報処理装置101は、検索対象の装置として通信装置151を特定して、ユニキャスト検索処理を実行することができる。
続いて、アクセスポイント412は、ユニキャスト検索要求を受信した場合、ユニキャスト検索要求の宛先(検索対象の装置)を確認し、ユニキャスト検索要求の経路選択(ルーティング)を行う。ここでは、検索対象の装置である通信装置151はアクセスポイント402に接続しているため、アクセスポイント402に対してユニキャスト検索要求を転送する(S809)。
続いて、アクセスポイント402は、通信装置151に対してユニキャスト検索要求を転送し、当該検索要求に合致するかどうかの問い合わせを行う(S810)。通信装置151は、ユニキャスト検索要求を受信した場合、当該ユニキャスト検索要求に合致する(情報処理装置101が探している装置の条件に合致する)か否かを判定する(S811)。ここでは、通信装置151は、画像形成機能のサービスを提供可能であり、且つ特定情報に含まれるIPアドレスが通信装置151のIPアドレスであるため、問い合わせに対して応答する(S812)。この応答は、アクセスポイント402及び412を介して情報処理装置101に転送される(S813、S814)。なお、応答には例えば、応答の送信元の装置の識別情報(名前、機種名、IPアドレス、MACアドレス等)や、当該装置が提供可能なサービスの情報、当該装置が利用するポートの番号等が含まれる。
応答を受信することで、情報処理装置101は、自身が属するネットワーク上において通信装置151を発見する。そして、情報処理装置101は、ユーザから受け付けた検索指示に対する応答として、マルチキャスト検索処理及びユニキャスト検索処理によって発見された装置のリストを表示する表示制御ステップを実行する(S815)。ここでは、通信装置151のみが発見されているため、通信装置151の識別情報(名前、機種名、IPアドレス、MACアドレス等)がリストに表示される。なお、マルチキャスト検索処理及びユニキャスト検索処理によって複数の装置が発見されていた場合は、複数の装置がリストに表示される。
なお、情報処理装置101は、複数台の通信装置から、それぞれの特定情報を含むアドバタイズ情報を受信していた場合、それぞれの特定情報をメモリに保存する。そして、情報処理装置101は、保存した複数の特定情報のそれぞれを用いて、複数回のユニキャスト検索処理を行う。
図9は、本実施形態において情報処理装置101が、アドバタイズ情報を取得した際に実行する処理を示すフローチャートである。なお、図9に示すフローチャートは、例えば、CPU103がROM104や外部記憶装置106等に格納されたプログラムをRAM105に読み出して実行することにより実現される。また、図9に示すフローチャートは、例えば、情報処理装置101のBLE機能が有効化された場合に開始される。
まず、S901では、CPU103は、所定のアドバタイズ情報を受信したか否かを判定する。なお、所定のアドバタイズ情報とは、特定情報を含むアドバタイズ情報である。CPU103は、受信したアドバタイズ情報が所定のアドバタイズ情報であるか否かの判定を、例えば、受信したアドバタイズ情報を解析して、特定情報が含まれるか否かを判定することで行っても良い。また、例えば、受信したアドバタイズ情報のペイロードに、所定の識別情報が含まれるか否かを判定することで行っても良い。
CPU103は、所定のアドバタイズ情報を受信したと判定した場合、S902にて、当該所定のアドバタイズ情報を、RAM105等のメモリに保存する。なお、CPU103は、このときアドバタイズ情報全てではなく、アドバタイズ情報のうち少なくとも特定情報を保存すればよい。一方、CPU103は、所定のアドバタイズ情報を受信していないと判定した場合、再度S901の処理を行うことで、所定のアドバタイズ情報を受信するのを待つ。
図10は、本実施形態において情報処理装置101が、情報処理装置101の通信先となる装置を検索する際に実行する処理を示すフローチャートである。なお、図10に示すフローチャートは、例えば、CPU103がROM104や外部記憶装置106等に格納されたプログラムをRAM105に読み出して実行することにより実現される。また、図10に示すフローチャートは、例えば、情報処理装置101が、情報処理装置101の通信先となる装置の検索指示をユーザから受け付けた場合に開始される。
まず、S1001では、CPU103は、マルチキャスト検索処理を実行する。具体的には、CPU103は、情報処理装置101が直接接続しているアクセスポイント412に対し、マルチキャスト検索要求を送信する。
続いて、S1002では、CPU103は、S1001で実行したマルチキャスト検索要求に対する応答があったか否かを判定する。CPU103は、S1001で実行したマルチキャスト検索要求に対する応答がなかったと判定した場合、S1003にて、マルチキャスト検索を実行してから所定の時間t1が経過したか否かを判定する。CPU103は、所定の時間t1が経過したと判定した場合、S1006に進み、所定の時間t1が経過していないと判定した場合、再度S1002を実行して応答を待つ。
一方、CPU103は、S1001で実行したマルチキャスト検索要求に対する応答があったと判定した場合、S1004にて、受信した応答の送信元の装置の情報をRAM105等のメモリに保存する。なお、応答には例えば、応答の送信元の装置の識別情報(名前、機種名、IPアドレス、MACアドレス等)や、当該装置が提供可能なサービスの情報、当該装置が利用するポートの番号等が含まれる。そのため、CPU103は、それらの情報をRAM105等のメモリに保存する。
次に、S1004にて、CPU103は、マルチキャスト検索を実行してから所定の時間t2が経過したか否かを判定する。なお、t1とt2は同じ時間であってもそうでなくても構わない。CPU103は、所定の時間t2が経過したと判定した場合、S1006に進み、所定の時間t2が経過していないと判定した場合、再度S1002を実行して応答を待つ。
S1006では、CPU103は、ユニキャスト検索処理を実行する。具体的には、CPU103は、情報処理装置101が直接接続しているアクセスポイント412に対し、ユニキャスト検索要求を送信する。このとき、CPU103は、図9のフローチャートで説明した処理によって取得した特定情報を用いて、ユニキャスト検索処理を実行する。また、CPU103は、特定情報を複数取得していた場合は、その中のいずれかを用いてユニキャスト検索処理を実行する。なお、図9に示すフローチャートで説明した処理によって、いずれの特定情報も取得できていない場合は、S1006〜S1010の処理を省略し、ユニキャスト検索処理を実行しなくても良い。
続いて、S1007では、CPU103は、S1006で実行したユニキャスト検索要求に対する応答があったか否かを判定する。CPU103は、S1006で実行したユニキャスト検索要求に対する応答がなかったと判定した場合、S1008にて、ユニキャスト検索を実行してから所定の時間t3が経過したか否かを判定する。CPU103は、所定の時間t3が経過したと判定した場合、S1011に進み、所定の時間t3が経過していないと判定した場合、再度S1007を実行して応答を待つ。
一方、CPU103は、S1006で実行したユニキャスト検索要求に対する応答があったと判定した場合、S1009にて、受信した応答の送信元の装置の情報をRAM105等のメモリに保存する。なお、上述したように応答には例えば、応答の送信元の装置の識別情報(名前、機種名、IPアドレス、MACアドレス等)や、当該装置が提供可能なサービスの情報、当該装置が利用するポートの番号等が含まれる。そのため、CPU103は、それらの情報をRAM105等のメモリに保存する。
次に、S1010にて、CPU103は、取得済みの特定情報のうち、ユニキャスト検索に用いていない特定情報があるか否かを判定する。CPU103は、ユニキャスト検索に用いていない特定情報があると判定した場合、S1006に進み、ユニキャスト検索に用いていない特定情報のうちいずれかを用いてユニキャスト検索を実行する。一方、CPU103は、ユニキャスト検索に用いていない特定情報がないと判定した場合、S1011に進む。
S1011では、CPU103は、マルチキャスト検索処理及びユニキャスト検索処理の検索結果を表示部108に表示する。具体的には、CPU103は、S1004及びS1009にて保存した情報を参照して、マルチキャスト検索処理及びユニキャスト検索処理によって発見された装置に関する情報のリストを表示部108に表示する。具体的には、CPU103は、マルチキャスト検索処理及びユニキャスト検索処理によって発見された装置の識別情報(名前、機種名、IPアドレス、MACアドレス等)をリスト化して表示する。なお、マルチキャスト検索処理及びユニキャスト検索処理によって発見された装置が無い場合は、装置を発見できなかった旨をユーザに通知するための画面を表示部108に表示する。
なお、情報処理装置101は、表示部108に検索結果を表示した後は、ユーザからの入力を受け付け、検索結果に含まれる識別情報のうちいずれかをユーザに選択させる(選択受付ステップ)。そして、選択された識別情報に対応する装置を、印刷ジョブの送信先の通信装置として特定する。そして、情報処理装置101は、ユーザから印刷ジョブ送信指示を受け付けた場合に、予めユーザによって選択されている画像データに基づいて作成された印刷ジョブを、印刷ジョブの送信先となる通信装置に送信する。これにより、ユーザは、所望の通信装置に、印刷を実行させることができる。
このような形態とすることで、情報処理装置101は、自身と異なるサブネットに属する装置を発見し、発見した装置と通信することができる。
なお、上述では、マルチキャスト検索処理とユニキャスト検索処理を実行し終わった後に、表示部108に検索結果を表示するものとしたが、この形態に限定されない。例えば、1つ目の通信装置が発見された段階で、表示部108に、発見された通信装置を含む検索結果を表示しても良い。そして、情報処理装置101は、その後新たに通信装置を発見する毎に、発見した通信装置を検索結果のリストに追加して表示しても良い。
また、上述では、検索指示の受付(S803)の後に情報処理装置101がアドバタイズ情報を受信した場合の処理について記載していないが、情報処理装置101は、検索指示の受付の後もアドバタイズ情報のスキャンを実行しているものとする。すなわち、情報処理装置101は、検索指示の受付の後も、アドバタイズ情報を受信した場合には、それに含まれる特定情報を適宜RAM105等のメモリに保存し、ユニキャスト検索を実行するタイミングで適宜それを使用する。
また、情報処理装置101は、表示部108に検索結果を表示した(S814)後も、アドバタイズ情報のスキャンを実行しても良い。その場合、情報処理装置101は、アドバタイズ情報を受信して、それに含まれる特定情報をRAM105等のメモリに保存する毎に、その特定情報を用いたユニキャスト検索を実行する。そして、情報処理装置101は、新たに通信装置を発見する毎に、発見した通信装置を検索結果のリストに追加して表示する。
また、上述では、情報処理装置101は、ユーザから検索指示を受け付ける前からアドバタイズ情報のスキャンを実行する形態としているが、この形態に限定されない。例えば、ユーザから検索指示を受け付けた場合にアドバタイズ情報のスキャンを実行する形態としても良い。その場合、図9のフローチャートは、ユーザから検索指示を受け付けた場合に開始される。
また、上述では、情報処理装置101は、マルチキャスト検索処理を実行しているが、マルチキャスト検索処理の代わりにブロードキャスト検索処理を実行しても良い。
また、本実施形態では、情報処理装置101は、ユーザから検索指示を受け付けた場合、マルチキャスト検索処理とユニキャスト検索処理の両方を実行するものとした。これにより、情報処理装置101は、自身が属するサブネットに属する通信装置と、自身が属さないサブネットに属する通信装置の両方を発見することができる。なお、一般には、情報処理装置101は、自身が属するサブネットに属する通信装置と通信することが多いため、例えば、マルチキャスト検索処理により通信装置が発見できた場合には、ユニキャスト検索処理を実行しないような形態としても良い。また、マルチキャスト検索処理とユニキャスト検索処理の両方を実行する形態では、マルチキャスト検索処理とユニキャスト検索処理の順番は限定されない。
また、上述では、情報処理装置101は、すでにメモリに保存されている特定情報がある場合にはユニキャスト検索を実行する形態としたが、この形態に限定されない。例えば、すでにメモリに保存されている特定情報を含むアドバタイズ情報の送信元が、マルチキャスト検索によって発見された場合は、当該送信元を検索するためのユニキャスト検索を実行しなくても良い。なお、当該アドバタイズ情報の送信元が、マルチキャスト検索によって発見されたかどうかの判定は、当該アドバタイズ情報に含まれるアドレスの情報と、マルチキャスト検索に対する応答に含まれる識別情報とを参照することで実行できる。
また、例えば、情報処理装置101は、アドバタイズ情報を受信した場合に、当該アドバタイズ情報の送信元が属しているサブネットと、自身が属しているサブネットとの比較を行っても良い。そして、情報処理装置101は、それらが同一である場合には、当該アドバタイズ情報に関する情報を保存しなくても良い。すなわち、情報処理装置101は、アドバタイズ情報の送信元が属しているサブネットと、自身が属しているサブネットが同一である場合には、当該アドバタイズ情報に含まれる特定情報を用いたユニキャスト検索処理を実行しなくても良い。なお、この形態では、アドバタイズ情報には、当該アドバタイズ情報の送信元が属するサブネットを特定するための情報が格納されているものとする。
また、情報処理装置101は、情報処理装置101の電源がオフされたタイミングで、特定情報を削除するものとする。しかし、特定情報を削除するタイミングはこれに限定されない。例えば、ユニキャスト検索処理を行う毎に、ユニキャスト検索処理に使用した検索情報を削除する形態としても良い。また、例えば、印刷を実行するための画面が表示されなくなった場合や、印刷を実行するためのアプリケーションの動作が停止された場合等に、特定情報を削除しても良い。
(第2実施形態)
上述したように、通信装置151は、情報処理装置101とBLE接続を確立するためには、ADV_INDのタイプのアドバタイズ情報を送信する必要がある。そのため例えば、通信装置151は、BLE接続を確立して情報処理装置101とGATT通信することで実現可能な機能を有している場合は、アドバタイザ状態においてADV_INDのタイプのアドバタイズ情報を送信することが好ましい。しかしながら、通信装置151は、BLE接続を確立している間は、ADV_INDのタイプのアドバタイズ情報を送信することができない。そこで、本実施形態では、BLE接続を確立している場合とそうでない場合とで、送信するアドバタイズ情報のタイプを変更する形態について説明する。
なお、本実施形態では、第1実施形態と同様の通信システムが用いられるものとし、第1実施形態と同様の構成については説明を省略する。
図11は、本実施形態において通信装置151がアドバタイズ情報を送信する際に実行する処理を示すフローチャートである。なお、図10に示すフローチャートは、例えば、CPU154がROM152等に格納されたプログラムをRAM153に読み出して実行することにより実現される。また、図10に示すフローチャートは、例えば、通信装置151のBLE機能が有効化された場合に開始される。
まず、S1101にて、CPU154は、アドバタイズ情報の送信を開始する。本実施形態では、通信装置151は、ADV_INDのタイプのアドバタイズ情報を送信可能である。また、通信装置151は、ADV_NONCONN_IND及び/又はADV_SCAN_INDのタイプのアドバタイズ情報を送信可能である。このとき、CPU154は、通信装置151がまだ他の装置とBLE接続を確立していない状態であるため、ADV_INDのタイプのアドバタイズ情報の送信を開始する。なお、本実施形態では、このとき送信が開始されるADV_INDのタイプのアドバタイズ情報には、特定情報が含まれるものとする。
次に、S1102にて、CPU154は、Connect Request(接続要求)を受信したか否かを判定する。CPU154は、Connect Requestを受信していないと判定した場合、再度S1102を行い、Connect Requestを受信するまでADV_INDのタイプのアドバタイズ情報の送信を続ける。一方、CPU154は、Connect Requestを受信したと判定した場合、S1103に進み、受信したConnect Requestを送信した装置と通信装置151との間でBLE接続を確立する。また、CPU154は、通信装置151がBLE接続を確立するため、ADV_INDのタイプのアドバタイズ情報の送信を停止する。
S1104では、CPU154は、ADV_NONCONN_INDのタイプのアドバタイズ情報の送信を開始する。言いかえれば、CPU154は、通信装置151がBLE接続を確立した場合は、ADV_INDのタイプのアドバタイズ情報を送信している状態から、ADV_NONCONN_INDのタイプのアドバタイズ情報を送信している状態に切り替わる。なお、本実施形態では、このとき送信が開始されるADV_NONCONN_INDのタイプのアドバタイズ情報には、特定情報が含まれるものとする。
上述したように、CPU154は、通信装置151がBLE接続を確立していても、ADV_NONCONN_INDのタイプのアドバタイズ情報を送信することは可能である。そのため、S1104の処理により、通信装置151は、通信装置151がBLE接続を確立した場合にも、特定情報を通信装置151の外部の装置(情報処理装置101等)に送信することができる。ひいては、通信装置151がBLE接続を確立した場合にも、通信装置151の外部の装置は、ユニキャスト検索にて通信装置151を発見することができる。
その後、S1105では、CPU154は、通信装置151によるBLE接続が切断されたか否かを判定する。CPU154は、通信装置151によるBLE接続が切断されていないと判定された場合、再度S1105を行い、BLE接続が切断されるまで、ADV_NONCONN_INDのタイプのアドバタイズ情報の送信を続ける。一方、CPU154は、通信装置151によるBLE接続が切断されたと判定された場合、S1106に進む。
S1106では、CPU154は、ADV_NONCONN_INDのタイプのアドバタイズ情報を送信している状態から、ADV_INDのタイプのアドバタイズ情報を送信している状態に切り替わる。これにより、CPU154は、他の装置とのBLE接続を再度実行することが可能な状態となる。
このように、本実施形態では、通信装置151は、他の装置とのBLE接続を確立していない状態では、ADV_INDのタイプのアドバタイズ情報を送信する。このような形態とすることで、通信装置151は、他の装置とのBLE接続を確立し、他の装置とのGATT通信を実行することができる。また、通信装置151は、他の装置とのBLE接続を確立している状態では、ADV_NONCONN_INDのタイプのアドバタイズ情報を送信する。このような形態とすることで、通信装置151は、他の装置とのBLE接続を確立した後も、特定情報を外部に送信することが可能となる。
なお、情報処理装置101の処理は、第1実施形態と同様である。通信装置151が上述したように動作することで、情報処理装置101は、受信するアドバタイズ情報が、ADV_INDのタイプであっても、ADV_NONCONN_INDのタイプであっても、特定情報を取得して、ユニキャスト検索処理に利用できる。
また、上述では、通信装置151は、他の装置とのBLE接続を確立している状態では、ADV_NONCONN_INDのタイプのアドバタイズ情報を送信するものとしたが、この形態に限定されない。例えば、通信装置151は、他の装置とのBLE接続を確立している状態では、特定情報を含むADV_SCAN_INDのタイプのアドバタイズ情報を送信しても良い。また、例えば、通信装置151は、他の装置とのBLE接続を確立している状態では、特定情報を含まないADV_SCAN_INDのタイプのアドバタイズ情報を送信しても良い。そして、情報処理装置101からSCAN_REQのタイプのアドバタイズ情報を受信した場合に、特定情報を含むSCAN_RSPのタイプのアドバタイズ情報を送信しても良い。
(第3実施形態)
本実施形態では、同一の送信元のアドバタイズ情報に含まれる特定情報を逐次更新して管理することで、保存するデータ量を削減できる形態について説明する。
なお、本実施形態では、第1実施形態乃至第2実施形態と同様の通信システムが用いられるものとし、第1実施形態乃至第2実施形態と同様の構成については説明を省略する。
図12は、本実施形態において情報処理装置101がアドバタイズ情報を取得した際に実行する処理を示すフローチャートである。なお、図12に示すフローチャートは、例えば、CPU103がROM104や外部記憶装置106等に格納されたプログラムをRAM105に読み出して実行することにより実現される。また、図12に示すフローチャートは、例えば、情報処理装置101のBLE機能が有効化された場合に開始される。
まず、S1201では、CPU103は、所定のアドバタイズ情報を受信したか否かを判定する。なお、所定のアドバタイズ情報とは、特定情報を含むアドバタイズ情報である。CPU103は、受信したアドバタイズ情報が所定のアドバタイズ情報であるか否かの判定を、例えば、受信したアドバタイズ情報を解析して、特定情報が含まれるか否かを判定することで行っても良い。また、例えば、受信したアドバタイズ情報のペイロードに、所定の識別情報が含まれるか否かを判定することで行っても良い。
CPU103は、所定のアドバタイズ情報を受信していないと判定した場合、再度S1201の処理を行うことで、所定のアドバタイズ情報を受信するのを待つ。
一方、CPU103は、所定のアドバタイズ情報を受信したと判定した場合、S1202にて、受信したアドバタイズ情報の送信元が、すでにメモリに保存されている特定情報を含んでいたアドバタイズ情報の送信元と同一か否かを判定する。なお、CPU103は、アドバタイズ情報自体を保存している場合は、受信したアドバタイズ情報の送信元と、保存済みのアドバタイズ情報の送信元を比較すればよい。また、CPU103は、各アドバタイズ情報に含まれるアドレスの情報(アドレス1301、1303、1307等)を参照することで、各アドバタイズ情報の送信元を特定することができる。CPU103は、受信したアドバタイズ情報の送信元が、すでにメモリに保存されている特定情報を含んでいたアドバタイズ情報の送信元と同一でないと判定した場合、S1203に進む。CPU103は、S1203では、受信したアドバタイズ情報をRAM105等のメモリに新たに保存する。なお、CPU103は、このときアドバタイズ情報全てではなく、アドバタイズ情報のうち少なくとも特定情報及びアドレスの情報を保存すればよい。
一方、CPU103は、受信したアドバタイズ情報の送信元が、すでにメモリに保存されている特定情報を含んでいたアドバタイズ情報の送信元と同一であると判定した場合、S1204に進む。CPU103は、S1204では、受信したアドバタイズ情報をRAM105等のメモリに保存するとともに、当該アドバタイズ情報と同一の送信元と判定されたアドバタイズ情報をRAM105等のメモリから削除する。すなわち、CPU103は、すでにメモリに保存されているアドバタイズ情報を、送信元が同一の新たなアドバタイズ情報に関する情報に更新する。なお、CPU103は、上述と同様に、このときアドバタイズ情報全てではなく、アドバタイズ情報のうち少なくとも特定情報及びアドレスの情報を保存乃至更新すればよい。このような形態とすることで、メモリに保存するデータ量を削減することができる。また、例えば、第2実施形態のようにして、同一の通信装置からタイプの異なるアドバタイズ情報が送信されているような場合も、タイプ毎に別々に特定情報を保存することなく、送信元ごとにまとめて特定情報を管理することができる。また、例えば、通信装置のIPアドレスが変更された等の理由により通信装置が送信する特定情報が更新された場合に、情報処理装置101が管理している特定情報も更新することができる。すなわち、更新後の特定情報を用いてユニキャスト検索処理を実行することができる。
なお、CPU103は、すでにメモリに保存されている特定情報が複数ある場合は、複数の特定情報それぞれを含む複数のアドバタイズ情報の送信元のいずれかと、所定のアドバタイズ情報の送信元が同一であるかを判定する。そして、CPU103は、すでにメモリに保存されている複数の特定情報のうち、送信元が同一であると判定されたアドバタイズ情報に含まれていた特定情報を更新する。
(その他の実施形態)
上述では、情報処理装置101は、BLE規格のアドバタイズ情報を受信することで、特定情報を取得する形態であったが、これに限定されない。例えば、情報処理装置101は、すでに通信装置151とBLE接続を確立している状態であれば、GATT通信によって特定情報を取得しても良い。また、BLE規格に限らず、他の通信規格によって特定情報を取得しても良い。
上述の実施形態に記載されている、情報処理装置101によって実行される各処理は、情報処理装置101に予め搭載されているOSによって実現されても良いし、情報処理装置101にインストールされるアプリケーションプログラムによって実現されても良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワークや各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理でも実現可能である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、1つのCPUで全ての処理を行う形態に限らず、複数のCPUが適宜連携をしながら処理を行う形態としてもよい。また、上述した処理のうち、1部の処理を1つのCPUが実行し、その他の処理を複数のCPUが連携しながら処理を行う形態としても良い。また、上述した処理のうち、1部の処理を1つのCPUが実行し、その他の処理を、当該1つのCPU以外のCPUが処理を行う形態としても良い。
101 情報処理装置
131 アクセスポイント
151 通信装置

Claims (15)

  1. 近距離無線通信を実行する第1通信部と、前記近距離無線通信より高速な通信を実行する第2通信部と、を有する情報処理装置であって、
    ユーザから所定の指示を受け付ける指示受付手段と、
    前記第1通信部によって、前記情報処理装置の外部の装置から、前記装置を特定するための特定情報を受信する処理を、前記指示受付手段により前記所定の指示が受け付けられる前から開始する受信手段と、
    前記受信手段により受信された前記特定情報をメモリに保存する保存手段と、
    前記受け付け手段により前記所定の指示が受け付けられた場合、前記情報処理装置が属するサブネット内の、前記情報処理装置が通信可能な装置を検索可能な第1検索処理を実行する第1検索手段と、
    前記受け付け手段により前記所定の指示が受け付けられた場合、前記保存手段により保存された前記特定情報を用いて、前記情報処理装置が属するサブネットの外部の、前記情報処理装置が通信可能な装置を検索可能な第2検索処理を実行する第2検索手段と、
    前記第1検索手段及び前記第2検索手段によって発見された装置のうちいずれかの装置と、前記第2通信部によって通信する通信手段と、
    を有し、
    前記第2検索手段によって前記第2検索処理が実行された場合、前記第2検索処理に用いられた前記特定情報の送信元の装置が発見されることを特徴とする情報処理装置。
  2. 前記保存手段は、前記受信手段が複数の前記特定情報を受信した場合、複数の前記特定情報を前記メモリに保存し、
    前記第2検索手段は、前記メモリに複数の前記特定情報が保存されている場合、複数の前記特定情報それぞれを用いて、複数回、前記第2検索処理を実行することを特徴とする請求項1に記載の情報処理装置。
  3. 前記保存手段は、前記受信手段によって受信された第1の前記特定情報の送信元の装置と、前記メモリにすでに保存されている第2の前記特定情報の送信元の装置が同一である場合、前記メモリにすでに保存されている前記第2の前記特定情報を、前記第1の前記特定情報に更新することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記第2検索手段は、前記第1検索手段により、前記メモリにすでに保存されている所定の前記特定情報の送信元の装置が発見された場合、前記所定の前記特定情報を用いた前記第2検索処理を実行しないことを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記第2検索手段は、前記メモリに前記特定情報が保存されていない場合には、前記第2検索処理を実行しないことを特徴とする請求項1〜4のいずれか1項に記載の情報処理装置。
  6. 前記第1検索手段及び前記第2検索手段によって発見された装置に関する情報を表示部に表示する表示制御手段と、
    前記第1検索手段及び前記第2検索手段によって発見された装置に関する情報のうち、いずれかの情報の選択をユーザから受け付ける選択受付手段と、を更に有し、
    前記通信手段は、前記第1検索手段及び前記第2検索手段によって発見された装置のうち、前記ユーザから選択された情報に対応する装置と、前記第2通信部によって通信することを特徴とする請求項1〜5のいずれか1項に記載の情報処理装置。
  7. 前記第1検索手段及び前記第2検索手段は、印刷を実行可能な装置を検索することを特徴とする請求項1〜6のいずれか1項に記載の情報処理装置。
  8. 前記通信手段は、前記第1検索手段及び前記第2検索手段によって発見された装置のうちいずれかの装置に、当該装置に印刷を実行させるための印刷ジョブを前記第2通信部によって送信することを特徴とする請求項7に記載の情報処理装置。
  9. 前記第1通信部は、Bluetooth Low Energy(登録商標)によって近距離無線通信を実行することを特徴とする請求項1〜8のいずれか1項に記載の情報処理装置。
  10. 前記第2通信部は、Wi−Fi(商標登録)によって通信を実行することを特徴とする請求項1〜9のいずれか1項に記載の情報処理装置。
  11. 前記第1検索処理は、マルチキャスト検索処理又はブロードキャスト検索処理であり、前記第2検索処理は、ユニキャスト検索処理であることを特徴とする請求項1〜10のいずれか1項に記載の情報処理装置。
  12. 前記特定情報は、前記特定情報の送信元の装置のIPアドレスであることを特徴とする請求項1〜11のいずれか1項に記載の情報処理装置。
  13. 近距離無線通信を実行する第1通信部と、前記近距離無線通信より高速な通信を実行する第2通信部と、を有する情報処理装置であって、
    ユーザから所定の指示を受け付ける指示受付手段と、
    前記第1通信部によって、前記情報処理装置の外部の装置から、前記装置を特定するための特定情報を受信する処理を、前記指示受付手段により前記所定の指示が受け付けられる前から開始する受信手段と、
    前記受信手段により受信された前記特定情報をメモリに保存する保存手段と、
    前記受け付け手段により前記所定の指示が受け付けられた場合、前記情報処理装置が通信可能な装置を、マルチキャスト検索処理又はブロードキャスト検索処理によって検索する第1検索手段と、
    前記受け付け手段により前記所定の指示が受け付けられた場合、前記情報処理装置が通信可能な装置を検索可能な第2検索処理を、前記保存手段により保存された前記特定情報を用いたユニキャスト検索処理によって検索する第2検索手段と、
    前記第1検索手段及び前記第2検索手段によって発見された装置のうちいずれかの装置と、前記第2通信部によって通信する通信手段と、
    を有し、
    前記ユニキャスト検索処理が実行された場合、前記ユニキャスト検索処理に用いられた前記特定情報の送信元の装置が発見されることを特徴とする情報処理装置。
  14. 近距離無線通信を実行する第1通信部と、前記近距離無線通信より高速な通信を実行する第2通信部と、を有する情報処理装置の制御方法であって、
    ユーザから所定の指示を受け付ける指示受付ステップと、
    前記第1通信部によって、前記情報処理装置の外部の装置から、前記装置を特定するための特定情報を受信する処理を、前記所定の指示が受け付けられる前から開始する受信ステップと、
    前記受信ステップにより受信された前記特定情報をメモリに保存する保存ステップと、
    前記所定の指示が受け付けられた場合、前記情報処理装置が属するサブネット内の、前記情報処理装置が通信可能な装置を検索可能な第1検索処理を実行する第1検索ステップと、
    前記所定の指示が受け付けられた場合、前記保存ステップにより保存された前記特定情報を用いて、前記情報処理装置が属するサブネットの外部の、前記情報処理装置が通信可能な装置を検索可能な第2検索処理を実行する第2検索ステップと、
    前記第1検索ステップ及び前記第2検索ステップによって発見された装置のうちいずれかの装置と、前記第2通信部によって通信する通信ステップと、
    を有し、
    前記第2検索ステップによって前記第2検索処理が実行された場合、前記第2検索処理に用いられた前記特定情報の送信元の装置が発見されることを特徴とする制御方法。
  15. 請求項1〜13のいずれか1項に記載の情報処理装置の各手段として、コンピュータを機能させるためのプログラム。
JP2016228397A 2016-11-24 2016-11-24 情報処理装置、通信装置、プログラム及び制御方法 Active JP6873660B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2016228397A JP6873660B2 (ja) 2016-11-24 2016-11-24 情報処理装置、通信装置、プログラム及び制御方法
KR1020170155318A KR102281467B1 (ko) 2016-11-24 2017-11-21 정보 처리장치, 기억매체 및 제어방법
US15/819,077 US10440222B2 (en) 2016-11-24 2017-11-21 Information processing apparatus, storage medium, and control method
EP17203119.7A EP3328034B1 (en) 2016-11-24 2017-11-22 Information processing apparatus, storage medium, and control method
CN201711179725.1A CN108108134B (zh) 2016-11-24 2017-11-23 信息处理装置、存储介质以及控制方法
US16/576,542 US10848640B2 (en) 2016-11-24 2019-09-19 Information processing apparatus, and control method for executing search processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016228397A JP6873660B2 (ja) 2016-11-24 2016-11-24 情報処理装置、通信装置、プログラム及び制御方法

Publications (3)

Publication Number Publication Date
JP2018085657A JP2018085657A (ja) 2018-05-31
JP2018085657A5 JP2018085657A5 (ja) 2020-01-09
JP6873660B2 true JP6873660B2 (ja) 2021-05-19

Family

ID=60484132

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016228397A Active JP6873660B2 (ja) 2016-11-24 2016-11-24 情報処理装置、通信装置、プログラム及び制御方法

Country Status (5)

Country Link
US (2) US10440222B2 (ja)
EP (1) EP3328034B1 (ja)
JP (1) JP6873660B2 (ja)
KR (1) KR102281467B1 (ja)
CN (1) CN108108134B (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7179520B2 (ja) * 2018-07-31 2022-11-29 キヤノン株式会社 通信装置、制御方法、及びプログラム
JP7298138B2 (ja) * 2018-11-27 2023-06-27 ブラザー工業株式会社 画像処理プログラム及び端末装置
JP2020145557A (ja) * 2019-03-05 2020-09-10 キヤノン株式会社 プログラム、情報処理装置、および制御方法
JP2020204840A (ja) * 2019-06-14 2020-12-24 キヤノン株式会社 情報処理装置、制御方法及びプログラム
US12225262B2 (en) 2021-08-12 2025-02-11 Dish Network L.L.C. System and method for generating a video signal

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8170480B1 (en) * 2002-02-25 2012-05-01 Hewlett-Packard Development Company, L.P. Bypassing bluetooth discovery for devices in a special list
US8170481B2 (en) * 2008-03-24 2012-05-01 Intel Corporation Techniques for discovering services provided in a wireless network
KR101500333B1 (ko) * 2008-09-08 2015-03-09 삼성전자주식회사 블루투스 통신 장치 탐색 방법 및 장치
JP5300562B2 (ja) * 2009-03-31 2013-09-25 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
US9021084B2 (en) * 2009-10-22 2015-04-28 Xerox Corporation Network device discovery
JP2012039416A (ja) 2010-08-06 2012-02-23 Konica Minolta Business Technologies Inc 情報処理装置、同装置による検索方法及び検索プログラム
US20120287460A1 (en) 2011-05-09 2012-11-15 Mcmillin Lyle Bruce Methods and systems of mobile discovery and printing configuration
US9319828B2 (en) 2013-06-24 2016-04-19 Csr Technology Inc. Wireless communication methods and devices
WO2015092484A1 (en) 2013-12-17 2015-06-25 Sony Corporation Method and apparatus for facilitating use of services available via wireless connection
US9674643B2 (en) 2014-03-17 2017-06-06 Intel IP Corporation Method, apparatus, and computer readable medium for switching between lower energy and higher energy wireless communication techniques
JP2016012910A (ja) 2014-06-06 2016-01-21 キヤノン株式会社 通信装置および制御方法およびプログラム
CN107077306B (zh) 2014-10-23 2020-04-03 惠普发展公司,有限责任合伙企业 打印设备发现
JP6740618B2 (ja) * 2015-02-25 2020-08-19 株式会社リコー 情報処理装置、通信システム、通信方法
US9949063B2 (en) 2015-06-01 2018-04-17 Apple Inc. Bluetooth low energy triggering NAN for further discovery and connection

Also Published As

Publication number Publication date
JP2018085657A (ja) 2018-05-31
CN108108134B (zh) 2021-07-09
US10848640B2 (en) 2020-11-24
EP3328034B1 (en) 2022-03-30
EP3328034A1 (en) 2018-05-30
US10440222B2 (en) 2019-10-08
US20180146113A1 (en) 2018-05-24
US20200014819A1 (en) 2020-01-09
CN108108134A (zh) 2018-06-01
KR102281467B1 (ko) 2021-07-26
KR20180058635A (ko) 2018-06-01

Similar Documents

Publication Publication Date Title
JP6184580B1 (ja) 情報処理装置、制御方法およびプログラム
JP6745628B2 (ja) 情報処理装置、制御方法、及びプログラム
JP7536843B2 (ja) 通信装置、制御方法、及びプログラム
JP7528182B2 (ja) 通信システム、制御方法、及びプログラム
JP6776055B2 (ja) 通信装置及びプログラム
US10848640B2 (en) Information processing apparatus, and control method for executing search processing
JP7690544B2 (ja) 情報処理装置、通信装置、制御方法及びプログラム
CN117135766A (zh) 通信装置、控制方法和存储介质
JP2023173885A (ja) 通信装置、制御方法、及びプログラム
JP2023173888A (ja) 通信装置、制御方法、及びプログラム
KR102617025B1 (ko) 정보 처리 장치 및 제어 방법
EP4161158A1 (en) Information processing apparatus, method for controlling the same, and storage medium
JP6852124B2 (ja) 情報処理装置、制御方法、プログラム
JP2025006815A (ja) 通信装置、制御方法、及びプログラム
JP2023173889A (ja) 通信装置、制御方法、及びプログラム
JP2025006814A (ja) 通信装置、制御方法、及びプログラム
JP2025052799A (ja) 情報処理装置、方法およびプログラム
JP2023173887A (ja) 通信装置、制御方法、及びプログラム
JP2024035307A (ja) 情報処理装置、制御方法およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191122

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201126

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: 20210323

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210421

R151 Written notification of patent or utility model registration

Ref document number: 6873660

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151