(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-11
(45)【発行日】2024-01-19
(54)【発明の名称】画像処理装置、その制御方法及びプログラム
(51)【国際特許分類】
H04N 1/00 20060101AFI20240112BHJP
G03G 21/00 20060101ALI20240112BHJP
【FI】
H04N1/00 127A
H04N1/00 838
G03G21/00 388
G03G21/00 386
(21)【出願番号】P 2019230918
(22)【出願日】2019-12-20
【審査請求日】2022-12-05
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】森谷 昭浩
【審査官】橋爪 正樹
(56)【参考文献】
【文献】特開2014-075084(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 1/00
G03G 21/00
G06F 13/00
(57)【特許請求の範囲】
【請求項1】
受信したチャット
サービスのトークルームを示す情報と受信したユーザに対応する情報に基づいて、前記ユーザを送信元として、受信した画像データを前記トークルームに表示するよう制御するチャットサーバと通信する画像処理装置であって、
前記チャットサービスにユーザがログインするための認証情報を
前記チャットサーバに送信することによって、前記チャットサーバで生成される、ユーザに対応する所定の情報を受信する受信手段と、
前記受信手段が受信した前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶する記憶手段と、
原稿の画像を読み取って、前記画像に基づく画像データを生成する読取手段と、
前記チャット
サービスのトークルームを指定する指定手段と、
前記画像データと前記指定手段が指定したトークルームを示す情報と前記所定の情報とを
前記チャットサーバに送信する
送信手段とを有することを特徴とする画像処理装置。
【請求項2】
前記記憶手段
が、前記受信手段が受信した前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶し
ている場合、前記送信手段は前記画像データと前記指定手段が指定したトークルームを示す情報と前記所定の情報とを
前記チャットサーバに送信し、
前記記憶手段は前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶していない場合、前記送信手段は前記画像データと前記指定手段が指定したトークルームを示す情報と前記所定の情報とは異なる情報とを
前記チャットサーバに送信することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記所定の情報とは異なる情報は、前記チャットサーバで生成された情報で
あることを特徴とする請求項2に記載の画像処理装置。
【請求項4】
トークルームを示す情報を表示する表示手段と、
前記表示手段が表示するトークルームを示す情報を選択する選択手段とをさらに有し、
前記表示手段は前記指定手段が前記チャット
サービスのトークルームを示す情報が指定することによって、前記指定
されたトークルームを示す情報を所定の画面に表示することを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。
【請求項5】
前記所定の画面が前記表示手段に表示されているときに、ユーザにより実行指示が入力されることによって、前記読取手段は前記原稿の画像を読み取って、画像データを生成することを特徴とする請求項4に記載の画像処理装置。
【請求項6】
前記指定手段
は前記チャットサーバのトークルー
ムと指定されたトークルームに含まれるユーザから、メンションするユーザを指定することを特徴とする請求項1乃至5の何れか1項に記載の画像処理装置。
【請求項7】
前記読取手段が前記画像データを生成したことに従って、前記送信手段は画像データと前記トークルームを示す情報と前記所定の情報を前記チャットサーバに送信することを特徴とする請求項1乃至6の何れか1項に記載の画像処理装置。
【請求項8】
前記チャットサーバと通信するための情報を設定する設定手段をさらに有し、
前記送信手段は、前記チャットサーバと通信するための情報を用いて、前記画像データと前記トークルームを示す情報を前記チャットサーバに送信することを特徴とする請求項1乃至7の何れか1項に記載の画像処理装置。
【請求項9】
前記チャットサーバと通信するための情報は、前記チャットサーバのURLであることを特徴とする請求項8に記載の画像処理装置。
【請求項10】
前記送信手段はHTTP通信でデータを送信することを特徴とする請求項1乃至9の何れか1項に記載の画像処理装置。
【請求項11】
受信したチャット
サービスのトークルームを示す情報と受信したユーザに対応する情報に基づいて、前記ユーザを送信元として、受信した画像データを前記トークルームに表示するよう制御するチャットサーバと通信する画像処理装置の制御方法であって、
前記チャットサービスにユーザがログインするための認証情報を
前記チャットサーバに送信することによって、前記チャットサーバで生成される、ユーザに対応する所定の情報を受信する受信工程と、
前記受信工程で受信した前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶する記憶工程と、
原稿の画像を読み取って、前記画像に基づく画像データを生成する読取工程と、
前記チャット
サービスのトークルームを指定する指定工程と、
前記画像データと前記指定工程で指定されたトークルームを示す情報と前記所定の情報とを
前記チャットサーバに送信する
送信工程とを有することを特徴とする画像処理装置の制御方法。
【請求項12】
前記記憶工程
で前記受信工程が受信した前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶し
ている場合、前記送信工程で前記画像データと前記指定工程で指定したトークルームを示す情報と前記所定の情報とを
前記チャットサーバに送信し、
前記記憶工程で前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶していない場合、前記送信工程で前記画像データと前記指定工程で指定したトークルームを示す情報と前記所定の情報とは異なる情報とを
前記チャットサーバに送信することを特徴とする請求項1
1に記載の画像処理装置の制御方法。
【請求項13】
前記所定の情報とは異なる情報は、前記チャットサーバで生成された情報で
あることを特徴とする請求項12に記載の画像処理装置の制御方法。
【請求項14】
トークルームを示す情報を表示する表示工程と、
前記表示工程で表示するトークルームを示す情報を選択する選択工程とをさらに有し、
前記表示工程は前記指定工程で前記チャット
サービスのトークルームを示す情報が指定されることによって、前記指定
されたトークルーム
を示す情報を所定の画面に表示することを特徴とする請求項11乃至13の何れか1項に記載の画像処理装置の制御方法。
【請求項15】
前記所定の画面が前記表示工程で表示されているときに、ユーザにより実行指示が入力されることによって、前記読取工程で前記原稿の画像を読み取って、画像データを生成することを特徴とする請求項14に記載の画像処理装置の制御方法。
【請求項16】
前記指定工程
は前記チャットサーバのトークルー
ムと指定されたトークルームに含まれるユーザから、メンションするユーザを指定することを特徴とする請求項11乃至15の何れか1項に記載の画像処理装置の制御方法。
【請求項17】
前記読取工程で前記画像データを生成したことに従って、前記送信工程で画像データと前記トークルームを示す情報と前記所定の情報を前記チャットサーバに送信することを特徴とする請求項11乃至16の何れか1項に記載の画像処理装置の制御方法。
【請求項18】
前記チャットサーバと通信するための情報を設定する設定工程をさらに有し、
前記送信工程で、前記チャットサーバと通信するための情報を用いて、前記画像データと前記トークルームを示す情報を前記チャットサーバに送信することを特徴とする請求項11乃至17の何れか1項に記載の画像処理装置の制御方法。
【請求項19】
前記チャットサーバと通信するための情報は、前記チャットサーバのURLであることを特徴とする請求項18に記載の画像処理装置の制御方法。
【請求項20】
前記送信工程はHTTP通信でデータを送信することを特徴とする請求項11乃至19の何れか1項に記載の画像処理装置の制御方法。
【請求項21】
請求項1乃至10の何れか1項に記載の画像処理装置の各手段をコンピュータが実行するためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
画像処理装置、その制御方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、原稿の画像をスキャンすることによって生成した画像データを共有するために、ネットワーク上にあるファイルサーバに、生成した画像データを送信する画像処理装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ユーザがインターネットで公開されているチャットサービスを使用して、スキャンして生成した画像データをチャットサービスのトークルームで表示する場合、以下のような課題がある。例えば、特許文献1のように、生成した画像データをSMB通信等でファイルサーバに送信する画像処理装置では、チャットサービスのトークルームを指定することができず、ユーザが所望のトークルームで画像データを表示することができない。
【0005】
また、どのユーザが画像処理装置で生成された画像データを表示させたかをトークルームに表示するために、画像処理装置が画像処理装置にログインするためのユーザの識別情報とチャットサービスのユーザの認証情報を対応づけて記憶することが考えられる。
【0006】
チャットサービスのユーザの認証情報を多数のユーザが使用する画像処理装置が記憶している場合、チャットサービスで使用される認証情報が流出する可能性がある。
【0007】
チャットサービスで使用される認証情報は、他のサービスでも使用される可能性があるため、ログインするための認証情報が流出すると、チャットサービス以外のサービスでも不正にログインされる可能性がある。
【0008】
本発明は上記課題に鑑みなされたもので、画像処理装置でスキャンして生成された画像データの表示が、どのユーザから行われたものかを判別可能にしつつ、チャットサービスの認証情報が流出する可能性を低減することを目的とする。
【課題を解決するための手段】
【0009】
本発明の画像処理装置は、受信したチャットサービスのトークルームを示す情報と受信したユーザに対応する情報に基づいて、前記ユーザを送信元として、受信した画像データを前記トークルームに表示するよう制御するチャットサーバと通信する画像処理装置であって、前記チャットサービスにユーザがログインするための認証情報を前記チャットサーバに送信することによって、前記チャットサーバで生成される、ユーザに対応する所定の情報を受信する受信手段と、前記受信手段が受信した前記所定の情報を前記認証情報に代えて、前記画像処理装置にユーザがログインするための識別情報に対応づけて記憶する記憶手段と、原稿の画像を読み取って、前記画像に基づく画像データを生成する読取手段と、 前記チャットサービスのトークルームを指定する指定手段と、前記画像データと前記指定手段が指定したトークルームを示す情報と前記所定の情報とを前記チャットサーバに送信する送信手段とを有することを特徴とする。
【発明の効果】
【0010】
画像処理装置でスキャンして生成された画像データの表示が、どのユーザから行われたものかを判別可能にしつつ、チャットサービスの認証情報が流出する可能性を低減することができる。
【図面の簡単な説明】
【0011】
【
図2】MFP101のハードウェア構成の一例を示す図
【
図3】モバイル端末200のハードウェア構成の一例を示す図
【
図4】メッセージアプリサーバ300のハードウェア構成の一例を示す図
【
図5】ボットサーバ400のハードウェア構成の一例を示す図
【
図6】MFP101がスキャンして生成したファイルをメッセージアプリサーバ300に送信するシーケンスの一例を示す図
【
図7】MFP101で実行されるスキャンtoチャット処理の一例を示すフローチャート
【
図8】MFP101がスキャンして生成したファイルを、ボットサーバ400を介して、メッセージアプリサーバ300に送信するシーケンスの一例を示す図
【
図9】スキャンtoチャット処理の一例を示すフローチャート
【
図10】ボットサーバ400が画像データをメッセージアプリサーバ300に送信する際の処理の一例を示すフローチャート
【
図11】メッセージアプリサーバ内のファイル構造の一例を示す図
【
図12】メッセージアプリのメッセージ画面の一例を示す図
【
図14】MFP101の操作部116に表示されるホーム画面の一例を示す図
【
図15】スキャンtoチャット処理の画面遷移の一例を示す図
【
図16】IDとトークン情報を対応づけの一例を示す図
【
図17】MFP101がテーブル1600を作成するシーケンスの一例を示す図
【
図18】MFP101がテーブル1600を作成する処理の一例を示すフローチャート
【発明を実施するための形態】
【0012】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施例において示す構成は一例であり本発明は図示された構成に限定されるものではない。
【実施例1】
【0013】
図1は、本発明のシステム構成の一例を示す図である。本実施例のシステム構成は、端末装置の一例であるモバイル端末200とネットワーク100を介して通信可能な画像処理装置であるMFP(Multi Function Peripheral)101とメッセージアプリサーバ300から構成される。また、ボットサーバ400もネットワーク100を介して接続され、通信可能である。メッセージアプリサーバ300は、MFP101、モバイル端末200から送信されたメッセージや画像データを受信し、ユーザ操作によりモバイル端末200や不図示のPC上に表示するチャットサービス(メッセージサービス)を管理するチャットサーバである。ボットサーバ400は、MFP101と接続するメッセージアプリサーバ300にインストールされているボットアプリに対応する情報(ボットトークン情報)との紐づけを行い、MFP101からの要求をメッセージアプリサーバ300に転送する。なお、本実施例のネットワーク100は、インターネットでもよいし、LAN(Local Area Network)でもよい。また、ネットワーク100は、有線でも無線でもよい。
【0014】
図2は、MFP101のハードウェア構成の一例を示す図である。MFP101はCPU111、ROM112、RAM113、ストレージ114、操作部I/F115、操作部116、読取部I/F117、読取部118、印刷部I/F119、印刷部120、無線通信部I/F121、無線通信部122を備える。また、MFP101はFAX部I/F123、FAX通信部124、通信部I/F125、通信部126を備える。
【0015】
CPU111を含む制御部110は、MFP101全体の動作を制御する。CPU111は、ROM112又はストレージ114に記憶された制御プログラムをRAM113に読み出して、読取制御や印刷制御などの各種制御を行う。ROM112は、CPU111で実行可能な制御プログラムを格納する。また、ROM112は、ブートプログラムやフォントデータなども格納する。RAM113は、主記憶メモリであり、ワークエリア、ROM112及びストレージ114に格納された各種制御プログラムを展開するための一時記憶領域として用いられる。ストレージ114は、画像データ、印刷データ、各種プログラム、及び各種設定情報を記憶する。本実施例ではストレージ114としてフラッシュメモリを想定しているが、SSD(Solid State Drive)やHDD(Hard Disc Drive)などの補助記憶装置を用いるようにしても良い。また、eMMC(embedded Multi Media Card)を用いるようにしても良い。
【0016】
なお、本実施例のMFP101は、1つのCPU111が1つのメモリ(RAM113)を用いて後述するフローチャートに示す各処理を実行するものとするが、これに限るものではない。例えば複数のCPU、RAM、ROM、及びストレージを協働させて後述するフローチャートに示す各処理を実行することもできる。また、ASICやFPGA等のハードウェア回路を用いて一部の処理を実行するようにしてもよい。
【0017】
操作部I/F115は、例えばタッチパネルのような表示部やハードキーを含む操作部116と制御部110を接続する。操作部116は、ユーザに対して情報を表示したり、ユーザからの入力を検出したりする。
【0018】
読取部I/F117は、例えばスキャナのような読取部118と制御部110を接続する。読取部118は原稿の画像を読み取って、CPU111がその画像をバイナリーデータなどの画像データに変換する。読取部118によって読み取られた画像に基づき生成された画像データは、外部装置に送信されたり、記録紙上に印刷されたりする。
【0019】
印刷部I/F119は、例えばプリンタのような印刷部120と制御部110を接続する。CPU111は、RAM113に記憶された画像データ(印刷データ)を印刷部I/F119を介して印刷部120に転送する。印刷部120は、転送された画像データに基づく画像を給紙カセットから給送された記録紙に印刷する。
【0020】
無線通信部I/F121は、無線通信部122を制御する為のI/Fで制御部110と無線経由で外部の無線機器(ここではモバイル端末102)と接続する。
【0021】
制御部110は、FAX部I/F123により、ファクシミリのようなFAX通信部124を制御する事で公衆回線網107に接続される。FAX部I/F123は、FAX通信部124を制御する為のI/Fで、ファクシミリ通信用のモデムやNCUを制御する事で公衆回線網への接続、ファクシミリ通信プロトコルの制御などを行う事が可能となる。
【0022】
通信部I/F125は、制御部110とネットワーク100を接続する。通信部I/F125は、通信部126がネットワーク100上の外部装置に画像データや装置内部の各種情報を送信したり、ネットワーク100上の情報処理装置から印刷データやネットワーク100上の情報を受信したりする。ネットワーク100を介した送受信の方法としては、電子メールを用いての送受信や、その他のプロトコル(例えば、FTPやSMB、WEBDAV等)を用いたファイル送信を行うことができる。さらに、モバイル端末200、メッセージアプリサーバ300、ボットサーバ400からのHTTP通信によるアクセスで、画像データや各種設定データをネットワーク100で送受信する事もできる。
【0023】
図3はモバイル端末200のハードウェア構成の一例を示す図である。なお、本実施形態のモバイル端末200はスマートフォンやタブレットPC等の装置を想定しているが、Wi-Fi通信が可能な情報処理装置であれば他の装置であってもよい。
【0024】
CPU207はROM208が記憶している制御プログラムを読み出して、モバイル端末200の動作を制御するための様々な処理を実行する。ROM208は、制御プログラムを記憶している。RAM209は、CPU207の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD210は、写真や電子文書等の様々なデータを記憶する。
【0025】
操作パネル201は、ユーザのタッチ操作を検出可能なタッチパネル機能を備え、OSやEメール送信アプリケーションが提供する各種画面を表示する。また、操作パネル201は、メッセージアプリサーバ300に記憶されている情報を確認するために使用される。ユーザは操作パネル201にタッチ操作を入力することで、モバイル端末200に所望の操作指示を入力することができる。なお、モバイル端末200は不図示のハードウェアキーを備えていて、ユーザはこのハードウェアキーを用いてモバイル端末200に操作指示を入力することができる。
【0026】
カメラ204はユーザの撮像指示に応じて撮像する。カメラ204で撮像された写真は、HDD210の所定の領域に記憶される。また、QRコード(登録商標)解析が可能なプログラムを用いて、カメラ204で読み取ったQRコードから情報を取得することも可能である。
【0027】
モバイル端末200はNFC通信部205、Bluetooth(登録商標)通信部206、無線LAN通信部211を介して各種周辺機器とデータの授受を行うことができる。モバイル端末200のBluetooth通信部206はBluetooth(登録商標)Low Energyに対応していてもよい。端末が普及し始めている。
【0028】
図4はメッセージアプリサーバ300のハードウェア構成の一例を示す図である。CPU301はROM302が記憶している制御プログラムを読み出して、メッセージアプリサーバ300の動作を制御するための様々な処理を実行する。ROM302は、制御プログラムを記憶している。RAM303は、CPU301の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD305は、メッセージ、画像、チャンネル情報等の様々なデータを記憶する。通信部304を介してモバイル端末200、MFP101など各種機器とデータの授受を行うことができる。なお、通信部304はEthernet(登録商標)を用いた有線の通信を行ってもいいし、Wi-Fiのような無線通信を行ってもよい。
【0029】
図5はボットサーバ400のハードウェア構成の一例を示す図である。CPU401はROM402が記憶している制御プログラムを読み出して、メッセージアプリサーバの動作を制御するための様々な処理を実行する。ROM403は、制御プログラムを記憶している。RAM402は、CPU401の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD405は、メッセージ、画像データ、チャンネル情報等の様々なデータを記憶する。通信部404を介してモバイル端末200、MFP101、メッセージアプリサーバ300など各機種とデータの送受信を行うことができる。
【0030】
図14は、MFP101の操作部116に表示されるホーム画面の一例を示す図である。操作部116は、操作画面を表示するタッチパネル601とLED610、611からなる。タッチパネル601は、指示手段であり、ユーザからの指示を受け付ける受付手段としても機能するし、画面を表示する表示手段としても機能する。ユーザは、タッチパネル601上に表示される画面を指やスタイラス等のオブジェクトで直接タッチし、表示された画面に基づく各機能の実行を指示する。
【0031】
図14に示すタッチパネル601は、ホーム画面608を表示している。ホーム画面608は、MFP101の各機能の実行を指示する為の最初の画面で、コピー、ファクス、スキャン、メディアプリント、などMFP101が実行する各機能の為の各種設定を行う画面表示を選択する為の画面である。
【0032】
状況確認ボタン605は、MFP101の状態を確認する画面(状況確認画面)を表示するためのオブジェクトである。不図示の状況確認画面より送信履歴やジョブの実行履歴を表示する事が可能となる。
【0033】
スキャンtoチャットボタン602は、スキャンtoチャット処理の設定画面を表示するためのオブジェクトである。スキャンtoチャットボタン602がユーザにより選択されると、
図15の設定画面704が操作部116に表示される。スキャンtoチャット処理については、
図6、7で詳細に説明する。
【0034】
スキャンボタン603は、MFP101からスキャン選択画面(不図示)を表示するためのオブジェクトである。スキャン選択画面は、電子メール送信(Eメール)、SMB、FTP、HTTPによるファイル送信、インターネットファクス(Iファクス)送信、などの送信機能を選択するための画面である。表示された送信機能を示すオブジェクトにタッチする事で各送信機能の設定画面を表示する。
【0035】
アドレス帳ボタン604は、ユーザに選択されることにより、MFP101のアドレス帳画面400を表示する為のオブジェクトである。LED610及びLED611はMFP101の状態をユーザに通知するものである。LED610は、電子メールや印刷ジョブの受信中や実行中に点灯し、LED611はMFP101に何らかのエラーが発生した際に点灯する。ストップボタン606は、各種操作のキャンセルを実行するためのオブジェクトであり、操作部116では、常時表示されるオブジェクトである。HOMEボタン607は、ホーム画面608を表示するためにオブジェクトで、操作部116では、常時表示されるオブジェクトである。メニューボタン612は使用言語などの環境設定や各機能の設定を行う為の画面を表示するためのオブジェクトである。チャット登録ボタン609は、MFP101のユーザ認証情報とメッセージアプリサーバ300のユーザ認証情報の紐づけ設定を行う画面を表示するためのオブジェクトである。チャット登録ボタン609がユーザにより選択されると、
図13の設定画面1501が操作部116に表示される。チャット登録処理については、
図17、18で詳細に説明する。
【0036】
図16はIDとトークン情報を対応づけの一例を示す図である。
図16のテーブル1600では、ユーザID1601とユーザトークン情報1602、デバイスID1603とボットトークン情報が対応づけて登録されている。このテーブル1600は、MFP101のストレージ114に記憶されている。このテーブル1600において、デバイスID1603と対応づけられているボットトークン情報1604は、不図示の入力画面においてユーザにより入力されることにより、登録される。また、ボットトークン情報1604はメッセージアプリサーバ300が生成するランダムに組み合わされた文字列であり、メッセージアプリサーバ300にインストールされている1つのボットアプリに対応する情報である。ユーザがPC等でメッセージアプリサーバ300に、ボットトークン情報1604を取得する要求を送信し、PC上で取得したボットトークン情報1604を表示することで、ユーザがそのボットトークン情報1604を確認しながら、MFP101に登録する。
【0037】
ここで、ユーザID1601やデバイスID1603はMFP101に記憶されている情報であり、ユーザID1601はMFP101を使用するユーザごとに設定されているユーザの識別情報である。デバイスID1603はMFPごとに設定されているデバイスの識別情報である。ユーザID1601はMFP101にログインするためのユーザアカウントを生成する際にユーザにより設定された識別情報であり、デバイスID1603は工場出荷時に設定されたMFP101固有の識別情報である。
【0038】
なお、本実施例ではテーブル情報は、
図18のフローによって生成され、MFP101内ストレージ114格納されているが、ボットサーバ400のHDD405に記憶されても良い。ボットサーバ400を含む例については、実施例2にて説明する。
【0039】
ここで、ユーザがインターネットで公開されているチャットサービスを使用して、スキャンして生成した画像データをチャットサービスのトークルームで表示する場合、以下のような課題がある。例えば、特許文献1のように、生成した画像データをSMB通信等でファイルサーバに送信する画像処理装置では、チャットサービスのトークルームを指定することができず、ユーザが所望のトークルームで画像データを表示することができない。
【0040】
また、どのユーザが画像処理装置で生成された画像データを表示させたかをトークルームに表示するために、画像処理装置が画像処理装置にログインするためのユーザの識別情報とチャットサービスのユーザの認証情報を対応づけて記憶することが考えられる。
【0041】
チャットサービスのユーザの認証情報を多数のユーザが使用する画像処理装置が記憶している場合、チャットサービスで使用される認証情報が流出する可能性がある。
【0042】
チャットサービスで使用される認証情報は、他のサービスでも使用される可能性があるため、ログインするための認証情報が流出すると、チャットサービス以外のサービスでも不正にログインされる可能性がある。上記課題を解決するために、以下の処理を実行する。
【0043】
図17は、MFP101がテーブル1600を生成するシーケンスの一例を示す図である。本シーケンスはホーム画面608よりチャット登録ボタン609を押下されることで開始される。
【0044】
S1701において、ユーザは操作部116に表示されている
図13の設定登録画面1501を介して、ユーザID1601とパスワードを入力する。なお、MFP101が使用される際にユーザID1601とパスワードを用いてユーザ認証する構成であった場合、認証されたユーザID1601をRAM113に記憶しておくことで、本処理S1701は省略することが可能である。
【0045】
S1702において、ユーザはMFP101に対し、操作部116を介してメッセージサービスのログインIDとパスワードを入力する。ここで入力されたメッセージサービスのログインIDは、例えばメールアドレス等の他人が見てどのユーザのIDかがわかるような情報である。また、メッセージサービスのログインIDとパスワードは、例えばWEBメールサービスやクラウドストレージサービスや他のメッセージサービス等でも使用されている可能性がある。そのため、このメッセージサービスのログインIDとパスワードが流出することは望ましくない。
【0046】
S1703において、MFP101のCPU111はメッセージアプリサーバ300に対してHTTP通信でユーザトークン情報1602と、ボットトークン情報1604の取得要求を行う。具体的には、MFP101より入力されたログインIDとパスワードからユーザトークン情報1602、ボットトークン1604を生成して返却することの要求を示す情報をメッセージアプリサーバ300に送信する。ここで、送信されるコマンドの一例は「HTTP GET https://message.com/api/oath.access」である。このコマンドに記載されているURL「https://message.com/api/oath.access」は、メッセージアプリサーバ300にアクセスするためのURLである。このURLにS1702にて入力されたログインIDとパスワードを送信することで、メッセージアプリサーバ300はトークン生成処理であるS1704を実行する。
【0047】
S1704において、メッセージアプリサーバ300のCPU301は通信部304を介して受信したユーザIDとパスワードに基づいて、ユーザトークン情報1602、ボットトークン情報1604を生成する。なお、ここでユーザトークン情報1602とボットトークン情報1604が生成されるのは、S1703で受信したログインIDとパスワードの組み合わせがメッセージアプリサーバ300にユーザの認証情報として登録(記憶)されている場合である。S1703で受信したログインIDとパスワードの組み合わせがメッセージアプリサーバ300にユーザの認証情報として登録(記憶)されていない場合は、トークン情報の生成も、送信もされない。
【0048】
ここで生成されるユーザトークン情報はランダムに組み合わされた文字列であり、人が見ても何を示す文字列であるか、どのユーザを示す文字列かは理解することはできない。また、ボットトークン情報も同様にンダムに組み合わされた文字列である。
【0049】
S1705において、メッセージアプリサーバ300のCPU301は通信部304を制御し、HTTP通信のレスポンス情報として、MFP101にユーザトークン情報1602、ボットトークン情報1604を送信する。
【0050】
S1706において、MFP101のCPU111は1600に示されるように、受信したユーザトークン情報1602とS1701で入力されたユーザID1601と紐づけてストレージ114に保存する。また、ボットトークン情報1604とデバイスID1602とを紐づけてストレージ114に保存する。S1706の処理が終了したら、CPU111はRAM113に記憶されているメッセージサービスのログインIDとパスワードを削除する。ここでは削除する例を説明したが、MFP101がS1702で入力されたメッセージサービスのログインIDとパスワードを記憶していない状態になるのであれば、どのような処理でも構わない。
【0051】
なお、本実施理例では、MFP101がストレージ114にテーブル1600を記憶している例を説明するが、その場合デバイスIDは1つしかない。そのため、受信したボットトークン情報をデバイスIDに対応づけることはせずに、チャンネルリスト取得用のトークンとしてストレージ114に記憶し、後述する
図6のS901の処理でメッセージアプリサーバ300に送信されてもよい。
【0052】
図18はMFP101がテーブル1600を生成する処理の一例を示すフローチャートである。本フローはホーム画面608にてチャット登録ボタン609が選択されることで開始される。また、
図13はMFP101が本フロー実施時に操作部116のタッチパネル601に表示される画面を示す図であり、併せて説明する。
【0053】
S1801において、MFP101のCPU111はタッチパネル601にユーザID1601を受け付ける画面である入力画面1501を表示する。
【0054】
S1802において、MFP101のCPU111は操作部116を介して入力画面1501のログインボタン1502が選択されたか否かを判定する。ログインボタン1502が選択されていない時は、スキップボタン1503が選択されたと判定する。ログインボタン1502が選択されたと判定した場合は、S1803に進む。そうでない場合は、S1804に進む。
【0055】
S1803において、MFP101のCPU111は入力されているユーザID1601とパスワードをRAM113に記憶する。
【0056】
S1804において、MFP101のCPU111はメッセージサービスの認証情報を入力するための入力画面1504をタッチパネル601に表示し、ログインIDとパスワードの入力を受け付ける。
【0057】
S1805において、MFP101のCPU111は操作部116を介して確定ボタン1505の選択を検知すると、入力されているログインIDとパスワードをRAM113に記憶し、S1804の処理に移る。
【0058】
S1806において、MFP101のCPU111は入力された入力画面1504に入力されたログインIDとパスワードを、メッセージアプリサーバ300にユーザトークン情報1602、ボットトークン情報1604の取得要求を行う。具体的には、入力画面1504に入力されたログインIDとパスワードと、ユーザトークン情報1602、ボットトークン情報1604を要求することを示す情報をメッセージアプリサーバ300に送信する。
【0059】
S1807において、MFP101のCPU111はメッセージアプリサーバ300よりユーザトークン情報1602、ボットトークン情報1604の取得に成功したか否かを判断する。取得成功と判断した場合、S1810に進む。取得失敗と判断した場合、S1808に進む。
【0060】
S1808において、MFP101のCPU111はタッチパネル601に取得失敗の旨を示す画面(不図示)を表示する。画面1506は取得成功時のメッセージが図示されているが、本画面に表示されているメッセージを取得失敗の旨に変更して表示する。
【0061】
S1809において、MFP101のCPU111はタッチパネル601に表示されている戻るボタン(不図示)の選択を検知すると、表示されている画面を初期画面である入力1501に変更し、S1801に戻る。
【0062】
S1810において、MFP101のCPU111はRAM113に記憶されているユーザID1601と受信したユーザトークン情報1602を用いてテーブル情報を作成し、ストレージ114に記憶する。メッセージアプリサーバ300は、ユーザトークン情報1602を元に、ワークスペースにおけるユーザを特定することが可能である。そのため、MFP101からの投稿時、ユーザトークン情報1602を使用することで、メッセージアプリサーバ300において管理されるユーザとして投稿を処理することが出来る。
【0063】
S1811において、MFP101のCPU111はデバイスID1603と受信したボットトークン情報1604を用いてテーブル情報を作成し、ストレージ114に記憶する。MFP101へログインするためのユーザID1601を持たないユーザの場合、ボットトークン情報1604を使用することで、ゲストユーザとしての投稿が可能となる。その際、チャットルームの投稿は、ゲストユーザ(ボットユーザ)からの投稿として処理されてもいいし、そのユーザが入力した認証情報に対応するアカウントからの投稿として処理してもいい。また、MFP101のCPU111は結果表示画面1506をタッチパネル601に表示する。
【0064】
S1812において、MFP101のCPU111は操作部116を介して戻るボタン1507の押下を検知することで、表示画面をホーム画面608に遷移させ処理を終了する。
【0065】
図6はMFP101がスキャンして生成したファイルをメッセージアプリサーバ300に送信するシーケンスの一例を示す図である。
図6のシーケンスは
図15の設定画面704のチャンネル選択ボタン713が選択されたことに従って、開始される。
【0066】
S901において、MFP101のCPU111は通信部126を制御して、メッセージアプリサーバ300にHTTP通信でチャンネルリスト情報の要求を行う。具体的には、MFP101に登録されたボットトークン情報と、そのボットトークン情報が示すワークスペース内のチャンネルリストを要求することを示す情報をメッセージアプリサーバ300に送信する。ここで、送信されるコマンドの一例は、「HTTP GET https://message.com/api/channels.list」である。このコマンドに記載されているURL「https://message.com/api/channels.list」は、メッセージアプリサーバ300にアクセスするためのURLである。このURLにボットトークン情報を送信することで、メッセージアプリサーバ300はボットトークン情報に対応するワークスペースとボットアプリを検索する。なお、ボットトークン情報はMFP101の操作部116に表示された
図13の入力画面1501を介して入力される。
【0067】
ここで、ワークスペースとは、メッセージアプリ内で複数のユーザが属する組織のようなものである。また、チャンネルはワークスペース内のチャットルームのようなものである。ここでいうチャットルームとは、チャットルームに参加している複数のお互いにユーザがメッセージを送受信し、会話のようにやりとりするための仕組みである。また、本実施例では、チャンネルをチャットルームとして説明するが複数のユーザがメッセージを送受信し、会話のようにやりとりするための仕組みであればこれに限るものではない。例えば、グループチャットやルーム、トークルーム、グループのようなものでものよい。
【0068】
ここで、ボットアプリとは、MFP101をメッセージアプリ内のユーザとして登録し、メッセージや画像データを投稿するためのアプリケーションであり、メッセージアプリサーバ300にインストールされている。ボットアプリを指定して画像データをメッセージアプリサーバ300に送信することで、そのボットアプリが送信された画像データをメッセージアプリで投稿する。また、メッセージアプリサーバ300のHDD305には、ボットアプリとボットトークンが対応づけて記憶され、また、ボットアプリとワークスペースが対応づけられている。よって、メッセージアプリサーバ300は、MFP101からボットトークン情報を受信することで、そのボットトークン情報に対応付けられているボットアプリに対応づけられているワークスペースの情報を返信することができる。なお、ボットトークン情報とボットアプリとワークスペースが直接対応づけられていてもよい。これにより、多数のワークスペースの中から、事前に登録されたボットトークン情報に対応するワークスペース(ユーザが画像データを送りたいワークスペース)を選択することができる。
【0069】
S902において、メッセージアプリサーバ300のCPU301は、通信部304を介して受信したボットトークン情報を参照し、ボットトークン情報に対応するワークスペース情報、ボットアプリをHDD305内で検索する。
【0070】
S903において、メッセージアプリサーバ300のCPU301はMFP101から通信部304を介して受信したボットトークン情報に基づいて、URLへのアクセスが許可されたものであるか確認する。許可されていればボットトークン情報に対応するワークスペースに含まれるチャンネルリスト情報を生成する。チャンネルリスト情報とは、チャンネル情報を示す配列情報である。チャンネル情報は、チャンネルIDと、チャンネルの名前、そのチャンネルに参加しているユーザを示す情報、アーカイブチャンネルか否かなどの設定を示すチャンネル設定値を含む。
【0071】
S904において、メッセージアプリサーバ300のCPU301は通信部304を制御し、HTTP通信のレスポンス情報として、MFP101にチャンネルリスト情報を送信する。
【0072】
S905において、MFP101のCPU111は受信したチャンネルリスト情報に含まれるチャンネル情報に基づいて、チャンネル選択画面714を生成する。そして、MFP101のCPU111はユーザによってチャンネル選択ボタン713が選択されることによって、操作部116のタッチパネル601にチャンネル選択画面714を表示し、ユーザの操作を待つ。チャンネル選択画面715は、
図15の説明で後述する。
【0073】
S906において、MFP101のCPU111はチャンネル選択画面714で少なくともチャンネルが選択され、戻るボタン715が選択されたことにより投稿先のチャンネルの情報を確定する。
【0074】
S907において、MFP101のCPU111は操作部116を介してスキャン実行指示を受け付ける。
【0075】
S908において、MFP101のCPU111はスキャン実行指示を受けた際の、スキャン設定でスキャンする。
【0076】
S909において、MFP101のCPU111はスキャンした画像をスキャン設定で設定された形式の画像データを生成する。なお、スキャン設定は不図示のスキャンtoチャットの詳細設定画面でユーザに指定されたスキャン設定を使用する。なお、スキャン設定は
図15の送信設定画面712で送信設定と一緒に表示され、設定されてもよい。
【0077】
S910において、MFP101のCPU111は通信部126を介して、メッセージアプリサーバ300に、S906で選択された投稿先チャンネルの情報、ファイル形式、S909で生成された画像データ、ユーザトークン情報をHTTP通信で送信する。MFP101に登録されたユーザトークン情報を用いることで、送信先のワークスペースに参加するユーザとしてメッセージアプリサーバ300に送信する。また、ここで送信されるユーザトークン情報は、設定画面704を表示しているときにMFP101にログインしているユーザに対応するユーザトークン情報である。なお、どのユーザのユーザトークン情報を送信するかを、操作部116に表示した画面でユーザに選択させてもよい。その際、ユーザはMFP101のユーザIDを選択する。
【0078】
なお、ファイル形式は、スキャンtoチャットの送信設定画面712でユーザに指定されたファイル形式を使用する。
【0079】
S911において、メッセージアプリサーバ300のCPU301は、S910で受信したユーザトークン情報で登録されているワークスペース情報、ボットアプリ、チャットサービスのユーザ情報を検索する。そして、受信した画像データとチャンネル情報で指定されたチャンネルを紐づけて記憶し、ユーザトークン情報で指定されたユーザを投稿元(送信元)のアカウントとして記憶する。また、投稿先のユーザが指定されている場合は、さらに受信した画像データとチャンネルと投稿先のユーザを対応づけて記憶する。これにより、ユーザがモバイル端末200上のメッセージアプリを起動し、先のチャンネルの会話の内容を確認するためにチャンネルを指定すると、受信した画像データが投稿された画面が表示される。
【0080】
S912において、メッセージアプリサーバ300のCPU301は、投稿が成功したか否かに対応する結果をHTTP通信のレスポンス情報としてMFP101に送信する。なお、投稿が成功した場合MFP101のCPU111は操作部116に投稿が成功した旨の通知を表示するようにしてもいい。また、投稿が失敗した場合、MFP101のCPU111は操作部116に投稿が失敗した旨の通知を表示するようにしてもいい。また、投稿が成功した時はなにも通知を表示せずに、失敗した時だけ投稿が失敗した旨の通知を表示するようにしてもいい。
【0081】
図7は、MFP101で実行されるスキャンtoチャット処理の一例を示すフローチャートである。CPU111がROM112に記憶されたプログラムをRAM113に読み出し、実行することで
図7のフローチャートの処理は実行される。また、
図7のフローはMFP101の電源がオンになったことによって開始される。
【0082】
S1001において、CPU111はスキャンtoチャットボタン602が選択されたか否かを判定する。選択されたと判定した場合、S1002に進む。そうでない場合、S1001に戻る。
【0083】
S1002において、CPU111はスキャンtoチャット画面704を操作部116のタッチパネル601に表示する。ここで、
図15を用いて、スキャンtoチャットボタン602が選択された場合の画面遷移を説明する。
【0084】
図15はスキャンtoチャット処理の画面遷移の一例を示す図である。ホーム画面608に表示されているスキャンtoチャットボタン602が選択されたことによって、スキャンtoチャット画面704が操作部116のタッチパネル601に表示される。
【0085】
スキャンtoチャット画面704には、宛先確認ボタン705が表示されている。宛先確認ボタン705には、スキャンして生成した画像データの投稿先として設定されている宛先の数が表示される。
図15の例では、投稿先であるチャンネルが1件選択されている例を説明する。複数の宛先が選択された場合、設定された投稿先の数が宛先数として表示される。
【0086】
宛先確認ボタン705が選択されると、スキャンtoチャット宛先確認画面706が表示される。スキャンtoチャット宛先確認画面706には、チャンネル選択ボタン713が選択されることによって設定された送信設定投稿先が表示される。投稿先ボタン707には、その時点で設定されている投稿先の数が表示され、ユーザにより選択されることにより、設定されている投稿先(宛先)が表示される宛先確認画面706が表示される。また、投稿先ボタン707が設定されることにより、不図示の詳細画面が表示され、設定されている投稿先の詳細が表示される。
【0087】
なお、本実施例ではスキャンtoチャット宛先確認画面706には1つの投稿先しか表示されていないが、これに限るものではない。例えば、MFP101がメッセージアプリサーバ300から複数の投稿先を設定することで、スキャンtoチャット宛先確認画面706に複数の投稿先ボタンを表示することができる。
【0088】
なお、スキャンtoチャット画面704にて、リセット708が選択された場合、設定された情報をクリアする。このとき、設定された宛先情報はクリアされる。また、スキャンtoチャット画面704にて、白黒スタートボタン709とカラースタートボタン710が選択された場合、スキャンして送信する処理を開始する。
【0089】
送信設定ボタン711が選択されると、送信設定画面712が表示される。この画面では送信ファイル設定717などの送信設定の変更、確認が可能である。
【0090】
チャンネル選択ボタン713が選択されるとチャンネル選択画面714が表示される。このチャンネル選択画面714に表示されるチャンネルやユーザは、MFP101がメッセージアプリサーバ300から受信したチャンネルリスト情報に基づいて表示される。この画面では投稿先チャンネルの選択とそのチャンネルに属するどのユーザに通知するかを選択することが可能である。つまり、投稿するチャンネルとメンションする相手を選択することができる。チャンネルボタンが選択されることで、そのチャンネルに所属するユーザがプルダウンで表示される。この画面では、チャンネルとユーザの両方を選択してもいいし、そのチャンネルに所属するすべてのユーザに向けて投稿するために、チャンネルのみを選択してもいい。また、複数のチャンネルを選択してもいいし、1つのチャンネルを選択し、そのチャンネルの中の複数のユーザを選択できるようになってもいい。また、複数のチャンネルを選択し、それぞれに所属する別々のユーザを選択できるようになっていてもいい。
【0091】
戻るボタン715が選択されると、チャンネル選択内容が保持され、スキャンtoチャット画面704が再び表示される。このとき、投稿先欄716には投稿先である選択されたチャンネル名と通知するユーザの名称である「投稿先:チャンネル3@ユーザ1」が表示される。また、MFP101のCPU111はこの時設定されたチャンネルとユーザに基づく投稿先をRAM113、もしくはストレージ114に記憶する。
【0092】
ユーザ名718は、現在MFP101にログインしている「ユーザ名」又は、「ゲスト」が表示される。具体的には、現在MFP101にログイン中のユーザID1601に紐づくユーザトークン1602がテーブル1600に登録されている場合「ユーザ名」が表示される。テーブル1600に登録されていない場合、表示は「ゲスト」となる。
【0093】
ここで、
図7のフローに説明を戻す。S1002において、CPU111は
図15のスキャンtoチャット画面704を操作部116に表示する。S1003にて、CPU111はチャンネル選択ボタン713が選択されることを検知する。
【0094】
S1004において、CPU111はチャンネル選択ボタンが選択されたことに従い、事前に登録されたボットトークン情報を用いて、HTTP通信でチャンネル情報を要求することを示す情報をメッセージアプリサーバ300に送信する処理を実行する。
【0095】
S1005において、CPU111はS1004で送信したチャンネル取得要求に対して、メッセージアプリサーバ300からチャンネル情報を受信したか否か判定する。具体的には、HTTP通信のレスポンスにおけるステータスコードがエラーである場合や、レスポンスのボディ情報に情報取得できないことを示すパラメータが含まれている場合にチャンネルリスト情報を受信していないと判定する。受信したと判定した場合、S1008に進む。そうでない場合、S1006に進む。
【0096】
S1006において、CPU111はチャンネルリスト情報を受信できなかった旨を示す情報をチャンネル選択画面714に表示する。この時、チャンネル選択画面714には、チャンネルやユーザの選択肢は表示されない。
【0097】
S1007において、CPU111は戻るボタン715が選択されたか否かを判定する。選択されたと判定した場合、S1002に戻る。そうでない場合、S1006に戻る。
【0098】
S1008において、CPU111は、メッセージアプリサーバ300から受信したチャンネル情報等が表示されるチャンネル選択画面714を操作部116のタッチパネル601に表示する。
【0099】
S1009において、CPU111は操作部116のタッチパネル601を介して、チャンネル選択画面で選択された投稿先(チャンネル、または、チャンネルとユーザ)が確定か否かを検知する。確定の場合はS1010へ遷移し、投稿チャンネルリスト情報を更新する。確定していない場合はS1008へ遷移する。確定検知の方法は、戻るボタン715が選択されたか否かである。戻るボタン715が選択されたことによって、確定されたと検知する。なお、操作部116の画面上に確定ボタンが表示される画面構成の場合、確定ボタンの選択によって、同様の遷移を行う。
【0100】
S1010において、CPU111は操作部116に
図15のスキャンtoチャット画面704を表示し、S1009で確定した投稿先で投稿先欄716の表示を更新する。このとき、投稿先のチャンネルと合わせて、通知したいユーザの情報も表示する。
【0101】
S1011において、CPU111は操作部116に表示された白黒スタートキー709もしくはカラースタートキー710が選択されたか否かを判定する。選択されたと判定した場合、S1012に進む。そうでない場合、S1011に戻る。
【0102】
S1012において、CPU111はスキャン設定に基づいて読取部118を制御し、原稿の画像を読み取り、画像データを生成する。スキャン設定は不図示のスキャンtoチャットの詳細設定画面でユーザに指定されたスキャン設定を使用する。
【0103】
S1013において、CPU111はS1012で生成された画像データを送信設定画面で設定されたファイル形式717に変換する。
【0104】
S1014において、CPU111は投稿パラメータを生成する。投稿パラメータには、投稿先のチャンネル、ファイル形式、ファイル名、投稿コメントが含まれる。ファイル形式は送信設定で設定したファイル形式717に該当するものが設定される。投稿コメントは、通知したいユーザ情報の先頭にアットマーク「@」をつけた文字を生成する。ファイル名は、送信設定で指定されたファイル名を指定する。
【0105】
S1015において、CPU111はMFP101にログインしているユーザのユーザID1601に紐づくユーザトークン情報1602が存在しているか、テーブル1600より参照する。ユーザトークン情報1602が登録されている場合、S1016に進み、登録されていない場合、S1017に進む。ユーザID1601に紐づくユーザトークン情報1602が存在していない場合とは、ユーザがホーム画面608のチャット登録ボタン609を選択し、
図13の画面にてMFP101の認証情報とメッセージサービスの認証情報を登録していない場合である。
【0106】
S1016において、ユーザトークン情報1602を使用することで、メッセージアプリサーバ300にHTTP通信のPOSTメソッドで、S1013で生成されたファイルと投稿パラメータ、ユーザトークン情報を送信する。MFP101にログインしているユーザが、あらかじめ
図13の入力画面でメッセージサービス上のログインID、パスワードを入力している場合、取得されたユーザトークン情報が送信される。S1017において、メッセージアプリサーバ300にHTTP通信のPOSTメソッドで、S1013で生成されたファイルと投稿パラメータ、ボットトークン情報を送信する。MFP101にログインしているユーザが、あらかじめ
図13の入力画面でメッセージサービス上のログインID、パスワードを入力していない場合、デバイスに対応づけられているボットトークン情報が送信される。
【0107】
これらのデータ(画像データを変換したファイルや投稿パラメータ)をメッセージアプリサーバ300に送信することで、メッセージアプリサーバ300は、受信したファイルを受信したチャンネルの受信したユーザに対して投稿されるように制御する。
【0108】
S1018にて、CPU111はメッセージアプリサーバ300から投稿結果を受信し、操作部116のタッチパネル601に表示する。本実施例により、ユーザはMFP101からメッセージアプリサーバのチャンネルへ容易にファイルを投稿できる。
【0109】
S1016、S1017の処理で画像データを変換したファイルや投稿パラメータがメッセージアプリサーバ300に送信されることによって、モバイル端末200の操作パネル201に表示される画面の一例を、
図12を用いて説明する。
【0110】
本実施例では、
図7のS1015のように、ログインしているユーザのユーザIDにユーザトークン情報が対応づいていない時は、ボットトークン情報がメッセージアプリサーバに送信される。これにより、メッセージサービスの認証情報を登録していないユーザでもメッセージサービス上の画面、スキャンして生成した画像データを表示させることができる。この場合、メッセージアプリ画面1201のメッセージ1204は「MFP」というボットアプリにより投稿されたように表示される。
【0111】
図12はメッセージアプリのメッセージ画面の一例を示す図である。
図12のメッセージアプリ画面1201は、モバイル端末200でメッセージアプリが起動され、MFP101においてS1015の処理が実行されることによって表示される。また、モバイル端末200はメッセージアプリサーバ300と通信している。
【0112】
ユーザがモバイル端末200でメッセージアプリを起動し、そのユーザのアカウントのIDとパスワードを入力してログインすることで、そのユーザ専用の画面が表示される。
【0113】
メッセージ1204は、「ユーザ1」というメッセージサービス上のアカウントを持つユーザが、MFP101でスキャンして生成した画像データと、投稿パラメータをメッセージアプリサーバ300に送信することによって表示(投稿)されるメッセージである。
図12の例では、投稿パラメータのうちの投稿のチャンネルとして「チャンネル1」が指定され、ユーザとしてチャンネル1に所属する「ユーザ3」が指定されている例を示す。また、投稿パラメータのファイル名として「資料.pdf」が指定され、コメントとして「送ります。」が指定されている例でもある。なお、ファイル名やコメントは不図示のスキャンtoチャットの詳細設定画面でユーザにより指定される。
【0114】
また、メッセージアプリ画面1201では、ログインしたユーザが参加しているチャンネル、グループとユーザが表示される。また、相手情報(1202)とメッセージのやり取りが表示される(1203)。投稿の際に、ユーザ名の先頭に「@」を付けたコメントを付与することで、投稿の相手がチャンネルの中でも特に指定ユーザに知らせたいことを示す(1204)。
図12の場合、ユーザ3は投稿が受信されたことを、メッセージアプリの閲覧端末に応じて、チャンネルに所属する他のメンバーよりもはやく投稿に気づくことができる。ユーザ3の閲覧するモバイル端末200がスマートフォンの場合、アイコン通知機能やバイブレーション、着信音でユーザ通知する。ユーザ3がデスクトップ端末でメッセージアプリを利用する場合は、デスクトップ通知機能などでユーザに通知する。また、本画面を表示するにあたって、メッセージアプリサーバ300は、
図11に記載のデータ構造から必要な情報を検索し表示する。たとえば、メッセージ1204の投稿は、やりとり内容505の「発言3+ファイル1」に該当しており、ファイル1の名称などの属性情報を504から取得し、メッセージ上に、ファイルアイコンの形で表示している。このファイルアイコンをユーザが選択すると、ファイル504に属したファイル1を取得することができる。なお、ここでこのチャンネルに投稿されたファイルはアイコンで表示されているが、そのファイルのプレビュー画像を表示するようにしてもよい。
【0115】
このようにMFP101から送信した画像データであっても、メッセージサービス上のアカウントで投稿することによって、誰からの投稿であるかを容易に判断することができる。
【0116】
図11はメッセージアプリサーバ内のファイル構造の一例を示す図である。このファイル構造は、メッセージアプリサーバ300のHDD305に記憶されており、
図12の画面は、このファイル構造に基づいて表示される。メッセージアプリサーバ300はワークスペースという一番大きなまとまりの中にチャンネル、グループ、ユーザ、ファイル等の小さなまとまりを持ちデータを管理する。チャンネル501はワークスペースのメンバー全員が参加でき、投稿された内容はすべて誰でも検索できる種類のチャットルームである。グループ502は全メンバーに公開すべきでないディスカッションのためのチャンネルで閲覧と参加には招待が必要となるものである。ユーザ503はこのワークスペースに参加しているユーザである。ファイル504は添付されたファイルが保存されている。さらに、チャンネル、グループ、ユーザでのやり取りの内容505がそれぞれに紐づいて記憶されている。例えば、チャンネル1にはチャンネル1に参加しているユーザが紐づいて記憶され、また、チャンネル1でやりとりされたメッセージや画像データもチャンネル1に紐づけて記憶されている。このように記憶されていることで、チャンネル選択画面714でチャンネルが選択されたときに、指定されたチャンネル情報に対応するユーザを表示することができる。そのチャンネルに参加しているユーザを表示することができる。
【0117】
上記処理を実行することで、画像処理装置でスキャンして生成された画像データの表示が、どのユーザから行われたものかを判別可能にしつつ、チャットサービスの認証情報が流出する可能性を低減することができる。
【実施例2】
【0118】
実施例1では、MFP101がメッセージアプリサーバ300に直接、画像データや投稿パラメータを送信する例を説明した。本実施例では、MFP101はボットサーバ400を介して、画像データや投稿パラメータをメッセージアプリサーバ300に送信する例を説明する。本実施例では、テーブル1600がボットサーバ400のHDD405に記憶されている。
【0119】
図8は、MFP101がスキャンして生成したファイルを、ボットサーバ400を介して、メッセージアプリサーバ300に送信するシーケンスの一例を示す図である。
【0120】
S1101において、MFP101のCPU111はボットサーバ400に対して、デバイスIDをパラメータとして、HTTP通信でチャンネルリスト情報の要求を行う。
【0121】
S1102において、ボットサーバ400のCPU401はメッセージアプリサーバ300に、受信したデバイスID1603に対応するボットトークン情報1604を利用して、HTTP通信でチャンネルリスト情報の要求することを示す情報を送信する。このトークン情報は、S1101で受信したデバイスID1603に対応するものが取得される。
【0122】
S1103において、メッセージアプリサーバ300のCPU301は、ボットトークン情報1604から登録されているワークスペース情報、ボットアプリを検索する。
【0123】
S1104において、メッセージアプリサーバ300のCPU301は、アプリ情報から実行されたURLが許可されたものであるか確認し、許可されていればワークスペースに属するチャンネルのリスト情報を生成する。チャンネルのリスト情報とは、チャンネル情報の配列情報である。チャンネル情報は、チャンネルIDと、チャンネルの名前、チャンネルに属するメンバーIDのリスト、アーカイブチャンネルか否かなどの設定値を含む。
【0124】
S1105において、メッセージアプリサーバ300のCPU301は、通信部304を制御して、ボットサーバ400にHTTP通信のレスポンス情報として、チャンネルリスト情報を送信する。
【0125】
S1106において、ボットサーバ400のCPU401は、S1105で受信した、チャンネルリスト情報をMFP101にHTTP通信のレスポンスとして送信する。
【0126】
S1107~S1111の処理は
図6のS905~S909の処理と同様な処理のため説明を割愛する。
【0127】
S1112において、MFP101のCPU111はデバイスID1603とユーザID1601、投稿先チャンネルの情報、ファイル形式等を示す情報や画像データをHTTP通信でボットサーバ400に送信する。
【0128】
S1113において、ボットサーバ400のCPU401は受信した投稿先チャンネルの情報、ファイル形式を示す情報、画像データをメッセージアプリサーバ300に送信する処理を実行する。その際、認証情報としてデバイスID1603に対応するボットトークン情報1604、もしくはユーザID1601に対応するユーザトークン情報1602を付与して送信を行う。ここで、CPU401は、HDD405に記憶されているデバイスID1603もしくはユーザID1601とトークン情報とが対応づけられたテーブル1600を参照して、送信するトークン情報を決定する。
図8は、ユーザトークン情報1602を使用してファイル投稿を実施した例となる。
【0129】
S1114の処理はS911の処理と同様の処理であるため、説明を割愛する。
【0130】
S1115において、メッセージアプリサーバ300のCPU301は、投稿が成功したか否かに対応する結果をHTTP通信のレスポンス情報としてボットサーバ400に送信する。
【0131】
S1116において、ボットサーバ400のCPU401は、投稿が成功したか否かに対応する結果をHTTP通信のレスポンス情報としてMFP101に送信する。なお、投稿が成功した場合MFP101のCPU111は操作部116に投稿が成功した旨の通知を表示するようにしてもいい。また、投稿が失敗した場合、MFP101のCPU111は操作部116に投稿が失敗した旨の通知を表示するようにしてもいい。また、投稿が成功した時はなにも通知を表示せずに、失敗した時だけ投稿が失敗した旨の通知を表示するようにしてもいい。
【0132】
また、本実施例においては、チャンネルリストを取得としたが、アクセス制限付きのグループリスト、個別投稿のユーザリストも同様の方法で投稿することができる。
【0133】
図9は、スキャンtoチャット処理の一例を示すフローチャートである。CPU111がROM112に記憶されたプログラムをRAM113に読み出し、実行することで
図9のフローチャートの処理は実行される。また、
図9のフローはMFP101の電源がオンになったことによって開始される。
【0134】
S1301~S1303の処理はS1001~S1003の処理と同様の処理であるため、説明を省略する。
【0135】
S1304にて、CPU111はMFP101にログインしているMFP101のデバイスID1603を取得して、ボットサーバ400にHTTP通信でチャンネル情報取得要求とデバイスID1603を送信する。
【0136】
S1305~S131の処理はS1005~S1014の処理と同様の処理であるため、説明を省略する。
【0137】
S1315において、CPU111はMFP101にログインしているユーザのユーザID1601、もしくはMFP101のデバイスID1603と、S1313で生成されたファイルと投稿パラメータを送信する。なお、本実施例においては、ログインしているユーザIDやデバイスIDをボットサーバ400との通信に使用しているが、一意に決まる識別子であればテナントIDなどを利用することもできる。
【0138】
図10は、ボットサーバ400が画像データをメッセージアプリサーバ300に送信する際の処理の一例を示すフローチャートである。CPU401がROM402に記憶されたプログラムをRAM403に読み出し、実行することで
図10のフローチャートの処理は実行される。また、
図10のフローはボットサーバ400の電源がオンになったことによって開始される。
【0139】
S1401において、CPU401はMFP101からデバイスID1603もしくはユーザID1601と、メッセージアプリサーバ300へのファイル投稿要求を受信したか否かを判定する。受信したと判定した場合、S1402に進む。そうでない場合、S1401に戻る。
【0140】
S1402において、CPU401はMFP101から受信したIDをキーとして、テーブル1600で対応するトークン情報が存在するかを参照する。S1403において、CPU401はIDに対応するユーザトークン情報1602があると判断した場合、S1404に進む。そうでない場合、S1405に進む。
【0141】
S1404において、CPU401はS1401でMFP101から受信したファイル投稿要求を、S1403で特定したユーザトークン情報1602を用いることでメッセージアプリサーバ300へ送信する。送信に対してメッセージアプリサーバ300から返ってきた情報はMFP101に送信する。
【0142】
S1405にて、CPU401はIDに対応するボットトークン情報1604があると判断した場合、S1406に進む。そうでない場合、S1407に進む。
【0143】
S1406において、CPU401はS1401でMFP101から受信したファイル投稿要求を、S1403で特定したボットトークン情報1604を用いることでメッセージアプリサーバ300へ送信する。送信に対してメッセージアプリサーバ300から返ってきた情報はMFP101に送信する。
【0144】
S1407にて、CPU401はS1401で受信したリクエストの返答として、実行エラーを示す情報をMFP101に送信する。
【0145】
なお、
図10のフローは、
図8のシーケンスのS1112で送信されたユーザIDもしくはデバイスIDとファイル投稿要求を受信した時の例を説明した。S1101の処理で送信されたユーザIDもしくはデバイスIDと投稿先チャンネル要求を受信した時にも
図10と同様のフローで処理する。つまり、受信したデバイスIDもしくはユーザIDに対応するトークン情報があるときは、そのトークン情報と投稿先チャンネル情報とファイル(画像データ)をメッセージアプリサーバ300に送信する。受信したデバイスIDもしくはユーザIDに対応するトークン情報がないときは、MFP101にエラーを示す情報を送信する。
【0146】
本実施例により、メッセージアプリサーバ300のインタフェース仕様が変更された場合でも、MFP101のプログラムをアップロードすることなく、ボットサーバのプログラムを更新するだけで、実現が可能になる。また、複数のMFPがある職場において、各MFPに対して個別にトークン設定を行わなくても、ファイル投稿を実施することができる。
【0147】
<その他の実施の形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0148】
101 MFP
300 メッセージアプリサーバ
400 ボットサーバ
111 CPU
118 読取部