(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-12
(45)【発行日】2024-07-23
(54)【発明の名称】画像処理装置、その制御方法及びプログラム
(51)【国際特許分類】
H04L 51/046 20220101AFI20240716BHJP
H04L 67/02 20220101ALI20240716BHJP
G06F 21/33 20130101ALI20240716BHJP
G06Q 50/10 20120101ALI20240716BHJP
【FI】
H04L51/046
H04L67/02
G06F21/33
G06Q50/10
(21)【出願番号】P 2019230919
(22)【出願日】2019-12-20
【審査請求日】2022-12-05
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】長谷川 貴一
【審査官】速水 雄太
(56)【参考文献】
【文献】特開2019-050529(JP,A)
【文献】特開2014-104625(JP,A)
【文献】特開2014-241111(JP,A)
【文献】特開2018-200602(JP,A)
【文献】特開2018-041386(JP,A)
【文献】米国特許出願公開第2016/0050326(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-12/66
41/00-101/695
G06F 21/33
G06Q 50/10
(57)【特許請求の範囲】
【請求項1】
画像データを取得する取得手段と、
チャットサーバに、当該チャットサーバが提供するチャットサービスにユーザがログインするための認証情報を送信することによって
前記ユーザに対応しないチャンネルを含むチャンネル情報を受信する受信手段と、
受信された前記チャンネル情報に含まれるチャンネルのうち、前記ユーザに対応しな
いチャンネルを表示せずに、前記ユーザに対応す
るチャンネルを表示する表示手段と
、
前記画像データを送信する送信手段と
を有することを特徴とする
画像処理装置。
【請求項2】
前記表示手段が表示した前記チャンネルから前記ユーザによるチャンネルの選択を受け付ける受付手段
を有し、
前記送信手段は、選択された前記チャンネル
のチャンネル情報と、前記画像データとを前記チャットサーバに送信す
る
ことを特徴とする請求項1に記載の
画像処理装置。
【請求項3】
前記表示手段は
、チャンネルが選択されることによって、選択された当該チャンネ
ルを表示することを特徴とする請求項2に記載の
画像処理装置。
【請求項4】
前記送信手段は
、前記チャットサーバがインストールしているアプリケーションに対応する情報を当該チャットサーバに送信し、
前記受信手段は、
前記送信手段により前記アプリケーションに対応する情報が前記チャットサーバに送信されたことにより、前記アプリケーションに対応づけられて記憶されているグループに含まれるチャンネル
のチャンネル情報
を前記チャットサーバから受信
し、
前記送信手段は、前記グループに含まれるチャンネルのうちユーザに選択されたチャンネルのチャンネル情報と前記画像データとを前記チャットサーバに送信する
ことを特徴とする請求項2または3に記載の
画像処理装置。
【請求項5】
前記アプリケーションに対応する情報は、前記
画像処理装置に記憶されている情報であって、当該アプリケーションに対応付けられて記憶されているトークン情報であることを特徴とする請求項4に記載の
画像処理装置。
【請求項6】
前記アプリケーションは、前記グループに対応づけられたボットアプリケーションであって、対応付けられた当該グループに含まれるチャンネルにメッセージや画像データを投稿するためにユーザとして登録されたアプリケーションであることを特徴とする請求項4または5に記載の
画像処理装置。
【請求項7】
前記取得手段が前記画像データを取得したことに従って、前記送信手段は当該画像データと前記
ユーザにより選択された前記チャンネルのチャンネ
ル情報と前記アプリケーションに対応する情報とを、前記チャットサーバに送信することを特徴とする請求項4乃至6の何れか1項に記載の
画像処理装置。
【請求項8】
前記受付手段は、前記ユーザにより選択されたチャンネルに含まれるユーザから、メンションするユーザの選択を受け付けることを特徴とする請求項2乃至7の何れか1項に記載の
画像処理装置。
【請求項9】
前記認証情報を記憶する記憶手段をさらに有し、
前記チャットサーバに、前記チャットサービスにユーザがログインするための前記認証情報を送信することによって、前記チャンネル情報とは異なる情報であって前記ユーザに対応する所定の情報とを前記受信手段は受信し、
前記記憶手段は、前記所定の情報と、当該ユーザが前記
画像処理装置にログインするための識別情報と
を対応づけて記憶したことに従って、
前記認証情報を記憶していない状態に
する
ことを特徴とする請求項1乃至8の何れか1項に記載の
画像処理装置。
【請求項10】
前記所定の情報は、前記チャットサービスのアカウントに対応する情報であることを特徴とする請求項9に記載の
画像処理装置。
【請求項11】
前記取得手段は、原稿の画像を読み取って、当該原稿の画像に基づく前記画像データを生成することによって当該画像データを取得することを特徴とし、
前記ユーザによる1回の実行指示に基づいて、前記原稿の画像の読み取り及び、当該読み取りにより生成された前記画像データの送信を行うことを特徴とする請求項1乃至10の何れか1項に記載の
画像処理装置。
【請求項12】
画像データを取得する取得工程と、
チャットサーバに、当該チャットサーバが提供するチャットサービスにユーザがログインするための認証情報を送信することによって
前記ユーザに対応しないチャンネルを含むチャンネル情報を受信する受信工程と、
受信された前記チャンネル情報に含まれるチャンネルのうち、前記ユーザに対応しな
いチャンネルを表示せずに、前記ユーザに対応す
るチャンネルを表示する表示工程と
、
前記画像データを送信する送信工程と
を有することを特徴とする
画像処理装置の制御方法。
【請求項13】
前記表示工程が表示した前記チャンネルから前記ユーザによるチャンネルの選択を受け付ける受付工程
を有し、
前記送信工程は、選択された前記チャンネル
のチャンネル情報と、前記画像データとを前記チャットサーバに送信す
る
ことを特徴とする請求項12に記載の
画像処理装置の制御方法。
【請求項14】
前記表示工程は
、チャンネルが選択されることによって、選択された当該チャンネ
ルを表示することを特徴とする請求項13に記載の
画像処理装置の制御方法。
【請求項15】
前記送信工程は
、前記チャットサーバがインストールしているアプリケーションに対応する情報を前記チャットサーバに送信し、
前記受信工程は、
前記送信工程により前記アプリケーションに対応する情報が前記チャットサーバに送信されたことにより、前記アプリケーションに対応づけられて記憶されているグループに含まれるチャンネル
のチャンネル情報
を前記チャットサーバから受信
し、
前記送信工程は、前記グループに含まれるチャンネルのうちユーザに選択されたチャンネルのチャンネル情報と前記画像データとを前記チャットサーバに送信する
ことを特徴とする請求項13または14に記載の
画像処理装置の制御方法。
【請求項16】
前記アプリケーションに対応する情報は、前記
画像処理装置に記憶されている情報であって、当該アプリケーションに対応付けられて記憶されているトークン情報であることを特徴とする請求項15に記載の
画像処理装置の制御方法。
【請求項17】
前記アプリケーションは、前記グループに対応づけられたボットアプリケーションであって、対応付けられた当該グループに含まれるチャンネルにメッセージや画像データを投稿するためにユーザとして登録されたアプリケーションであることを特徴とする請求項15または16に記載の
画像処理の制御方法。
【請求項18】
前記取得工程が前記画像データを取得したことに従って、前記送信工程は当該画像データと前記
ユーザにより選択された前記チャンネルのチャンネ
ル情報と前記アプリケーションに対応する情報とを、前記チャットサーバに送信することを特徴とする請求項15乃至17の何れか1項に記載の
画像処理装置の制御方法。
【請求項19】
前記受付工程は、前記ユーザにより選択されたチャンネルに含まれるユーザから、メンションするユーザの選択を受け付けることを特徴とする請求項13乃至18の何れか1項に記載の
画像処理装置の制御方法。
【請求項20】
前記認証情報を記憶する記憶工程をさらに有し、
前記チャットサーバに、前記チャットサービスにユーザがログインするための前記認証情報を送信することによって、前記チャンネル情報とは異なる情報であって前記ユーザに対応する所定の情報を前記受信工程は受信し、
前記記憶工程は、前記所定の情報と、当該ユーザが前記
画像処理装置にログインするための識別情報と
を対応づけて記憶したことに従って、
前記認証情報を記憶していない状態に
する
ことを特徴とする請求項12乃至19の何れか1項に記載の
画像処理装置の制御方法。
【請求項21】
前記所定の情報は、前記チャットサービスのアカウントに対応する情報であることを特徴とする請求項20に記載の
画像処理装置の制御方法。
【請求項22】
前記取得工程は、原稿の画像を読み取って、当該原稿の画像に基づく前記画像データを生成することによって当該画像データを取得すること特徴とし、
前記ユーザによる1回の実行指示に基づいて、前記原稿の画像の読み取り及び、当該読み取りにより生成された前記画像データの送信を行うことを特徴とする請求項12乃至21の何れか1項に記載の
画像処理装置の制御方法。
【請求項23】
請求項1乃至11の何れか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の操作部116に表示されるホーム画面の一例を示す図
【
図7】各種IDとトークン情報を対応づけたテーブル601の一例を示す図
【
図8】MFP101が
図7のテーブル601を作成するシーケンスの一例を示す図
【
図9】MFP101が
図7のテーブル601を作成する一連のフローチャート
【
図11】スキャンtoチャット処理の画面遷移の一例を示す図
【
図12】MFP101がスキャンして生成したファイルをメッセージアプリサーバ300に送信するシーケンスの一例を示す図
【
図13】MFP101で実行されるスキャンtoチャット処理の一例を示すフローチャート
【
図14】メッセージアプリのメッセージ画面の一例を示す図
【
図15】メッセージアプリサーバ内のファイル構造の一例を示す図
【
図16】MFP101がスキャンして生成したファイルを、ボットサーバ400を介して、メッセージアプリサーバ300に送信するシーケンスの一例を示す図
【
図17】ボットサーバ400を介して実行されるスキャンtoチャット処理の一例を示すフローチャート
【
図18】ボットサーバ400が画像データをメッセージアプリサーバ300に送信する際の処理の一例を示すフローチャート
【発明を実施するための形態】
【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】
ここで、ユーザがインターネットで公開されているチャットサービスを使用して、スキャンして生成した画像データをチャットサービスのトークルームで表示する場合、以下のような課題がある。特許文献1のように、生成した画像データをSMB通信等でファイルサーバに送信する画像処理装置では、チャットサービスのトークルームを指定することができず、ユーザが所望のトークルームで画像データを表示することができない。
【0030】
また、画像処理装置でチャットサービスのトークルームを指定する際に、ある組織内で使用されるトークルームをすべて表示すると、多数のトークルームの中から所望のトークルームを探して選択する場合があり、煩わしい。そのため、画像処理装置が画像処理装置にログインするためのユーザの識別情報とチャットサービスのユーザの認証情報を対応づけて記憶することが考えられる。
【0031】
チャットサービスのユーザの認証情報を多数のユーザが使用する画像処理装置が記憶している場合、チャットサービスで使用される認証情報が流出する可能性がある。
【0032】
チャットサービスで使用される認証情報は、他のサービスでも使用される可能性があるため、ログインするための認証情報が流出すると、チャットサービス以外のサービスでも不正にログインされる可能性がある。上記の課題を解決するために、以下の処理を実行する。
【0033】
図5はボットサーバ400のハードウェア構成の一例を示す図である。CPU401はROM402が記憶している制御プログラムを読み出して、メッセージアプリサーバの動作を制御するための様々な処理を実行する。ROM403は、制御プログラムを記憶している。RAM402は、CPU401の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD405は、メッセージ、画像データ、チャンネル情報等の様々なデータを記憶する。通信部404を介してモバイル端末200、MFP101、メッセージアプリサーバ300など各機種とデータの送受信を行うことができる。
【0034】
図6は、MFP101の操作部116に表示されるホーム画面の一例を示す図である。操作部116は、操作画面を表示するタッチパネル501とLED510、511からなる。タッチパネル501は、指示手段であり、ユーザからの指示を受け付ける受付手段としても機能するし、画面を表示する表示手段としても機能する。ユーザは、タッチパネル501上に表示される画面を指やスタイラス等のオブジェクトで直接タッチし、表示された画面に基づく各機能の実行を指示する。
【0035】
図6に示すタッチパネル501は、ホーム画面508を表示している。ホーム画面508は、MFP101の各機能の実行を指示する為の最初の画面で、コピー、ファクス、スキャン、メディアプリント、などMFP101が実行する各機能の為の各種設定を行う画面表示を選択する為の画面である。
【0036】
状況確認ボタン505は、MFP101の状態を確認する画面(状況確認画面)を表示するためのオブジェクトである。不図示の状況確認画面より送信履歴やジョブの実行履歴を表示する事が可能となる。
【0037】
スキャンtoチャットボタン502は、スキャンtoチャット処理の設定画面を表示するためのオブジェクトである。スキャンtoチャットボタン502がユーザにより選択されると、
図11の設定画面1004が操作部116に表示される。スキャンtoチャット処理については、
図12、
図13で詳細に説明する。
【0038】
チャット登録ボタン509は、MFP101で使用される認証情報とメッセージアプリサーバ300で使用される認証情報の紐づけ設定を行う画面を表示するためのオブジェクトである。ここで、MFP101で使用される認証情報とは、例えばMFP101にユーザがログインするために入力する情報であり、ユーザID(もしくはユーザ名)とパスワードの組み合わせからなっている。また、メッセージアプリサーバ300で使用される認証情報とは、メッセージサービスにユーザがログインするために入力する情報であり、ユーザID(もしくはユーザ名)とパスワードの組み合わせからなっている。
【0039】
チャット登録ボタン509がユーザにより選択されると、
図10の設定画面901が操作部116に表示される。チャット登録処理については、
図8、9で詳細に説明する。
【0040】
スキャンボタン503は、MFP101からスキャン選択画面(不図示)を表示するためのオブジェクトである。スキャン選択画面は、電子メール送信(Eメール)、SMB、FTP、HTTPによるファイル送信、インターネットファクス(Iファクス)送信、などの送信機能を選択するための画面である。表示された送信機能を示すオブジェクトにタッチする事で各送信機能の設定画面が表示される。
【0041】
アドレス帳ボタン504は、ユーザに選択されることにより、MFP101のアドレス帳画面を表示する為のオブジェクトである。LED510及びLED511はMFP101の状態をユーザに通知するものである。LED510は、電子メールや印刷ジョブの受信中や実行中に点灯し、LED511はMFP101に何らかのエラーが発生した際に点灯する。ストップボタン506は、各種操作のキャンセルを実行するためのオブジェクトであり、操作部116では、常時表示されるオブジェクトである。HOMEボタン507は、ホーム画面508を表示するためにオブジェクトで、操作部116では、常時表示されるオブジェクトである。メニューボタン512は使用言語などの環境設定や各機能の設定を行う為の画面を表示するためのオブジェクトである。
【0042】
図7は、MFP101で使用される認証情報とメッセージサービスで使用される認証情報の紐づけを記憶するテーブル601の一例を示す図である。本実施例においてテーブルは、
図8に示すシーケンスによってMFP101内ストレージ114に保持される。
【0043】
MFP-userID602は、MFP101にユーザがログインする際に必要な認証情報の一部(ユーザID)である。またAPP-userID603はメッセージサービス上のアカウントに対応する情報であり、ユーザごとに個別のAPP-userIDが対応づいている。トークン情報604はメッセージアプリサーバ300で管理されているワークスペースを指定するための情報である。例えば、MFP101がこのトークン情報604をメッセージアプリサーバ300に送信することで、MFP101はそのトークン情報604に対応するワークスペースの情報を取得することができる。
図7のテーブルでは、MFP-userID602とAPP-userID603とトークン情報604が対応づけて記憶されている。
【0044】
図8は、MFP101がテーブル601を生成するシーケンスの一例を示す図である。本シーケンスはホーム画面508に表示されるチャット登録ボタン509が選択されることで開始される。また、本シーケンスはMFP101のCPU111がROM112に記憶されたプログラムをRAM113に読み出すことで実行される。
【0045】
S701において、MFP101のCPU111は操作部116に表示されている、
図10の入力画面901を介して、MFP-userID602とパスワードを入力する。なお、MFP101が使用される際に入力されたMFP-userID602を用いてログインが必要な構成であった場合、入力されたMFP-userID602をRAM113に記憶しておくことで、S701は省略することが可能である。入力画面901のログインボタン902が選択されることでS702に進む。
【0046】
S702において、MFP101のCPU111は操作部116に表示されている、
図10の入力画面903を介して、ユーザの入力操作を受け付け、メッセージアプリサーバ300のログインIDとパスワードを入力し、RAM113に記憶する。ここで入力するログインIDは、APP-userID603とは別の情報である。入力画面903の確定ボタン904が選択されると、S703に進む。
【0047】
また、メッセージサービスのログインIDとパスワードは、例えばWEBメールサービスやクラウドストレージサービスや他のメッセージサービス等でも使用されている可能性がある。そのため、このメッセージサービスのログインIDとパスワードが流出することは望ましくない。
【0048】
S703において、MFP101のCPU111はメッセージアプリサーバ300に対してHTTP通信でトークン情報604の取得要求を行う。具体的には、S702で入力されたログインIDとパスワードからトークン情報を生成して返却することの要求を示す情報をメッセージアプリサーバ300に送信する。ここで、送信されるコマンドの一例は「HTTP GET https://message.com/api/oath.access」である。このコマンドに記載されているURL「https://message.com/api/oath.access」は、メッセージアプリサーバ300にアクセスするためのURLであり、ユーザにより事前にMFP101に登録されているURLである。このURLにS702にて入力されたログインIDとパスワードを送信することで、メッセージアプリサーバ300はトークン生成処理であるS704を実行する。
【0049】
S704において、メッセージアプリサーバ300のCPU301は通信部304を介して受信したログインIDとパスワードを用いて、トークン情報604を生成する。ここで生成されるトークン情報604は、メッセージアプリサーバ300内でAPP-userID603とワークスペースに対応づけられて記憶されている。そのため、メッセージアプリサーバ300がMFP101からトークン情報604を受信することで、APP-userID603とワークスペースを特定することができる。
【0050】
S705において、メッセージアプリサーバ300のCPU301は通信部304を制御し、HTTP通信のレスポンス情報として、MFP101にトークン情報604を送信する。
【0051】
S706において、MFP101のCPU111はメッセージアプリサーバ300に対してHTTP通信でAPP-userID603の取得要求を行う。具体的には、S705で得たトークン情報604に対応するAPP-userID603の要求を示す情報をメッセージアプリサーバ300に送信する。ここで、送信されるコマンドの一例は「HTTP GET https://message.com/api/users.identity」である。このコマンドに記載されているURLはS703で使用されているコマンドと同様に、メッセージアプリサーバ300にアクセスするためのURLである。このURLにトークン情報を送信することで、メッセージアプリサーバ300はトークン情報に対応するAPP-userID603を検索する処理であるS707を実行する。
【0052】
S707において、メッセージアプリサーバ300のCPU301は、通信部304を介して受信したトークン情報を参照し、トークン情報に含まれるAPP-userID603をHDD305内で検索する。
【0053】
S708において、メッセージアプリサーバ300のCPU301は通信部304を制御し、HTTP通信のレスポンス情報として、MFP101にAPP-userID603を送信する。
【0054】
S709において、MFP101のCPU111はテーブル601に示されるように、受信したトークン情報604とAPP-userID603を、S701で入力されたMFP-userID602と紐づけてストレージ114に保存する。このS709の処理が終了すると、S702で入力されたメッセージサービスのログインIDとパスワードをRAM113から削除する。
【0055】
図9はMFP101がテーブル601を生成するフローの一例を示す図である。本フローはホーム画面508にてチャット登録ボタン509が押下されることで開始される。また、
図9のフローは、MFP101のCPU111がROM112に記憶されたプログラムをRAM113に読み出すことで実行される。
【0056】
S801において、MFP101のCPU111はタッチパネル501にMFP-userID602を受け付ける画面である入力画面901を表示する。
【0057】
S802において、MFP101のCPU111は操作部116を介して入力画面901のログインボタン902の選択を検知すると、入力されているMFP-userID602をRAM113に記憶する。またCPU111は、メッセージアプリサーバ300のログインIDとパスワードを受け付けるための画面S903をタッチパネル501に表示する。
【0058】
S803において、MFP101のCPU111は操作部116を介して確定ボタン904の選択を検知すると、入力されているログインIDとパスワード情報をRAM113に記憶し、S804処理に移る。
【0059】
S804において、MFP101のCPU111は入力されたログインIDとパスワードを用いて、メッセージアプリサーバにAPP-userID603の取得要求を行う。
【0060】
S805において、MFP101のCPU111はメッセージアプリサーバよりAPP-userID603の取得に成功したか否かを判断する。取得成功と判断した場合、S808に進む。取得失敗と判断した場合、S806に進む。
【0061】
S806において、MFP101のCPU111はタッチパネル501に取得失敗の旨を表示する。完了画面905は取得成功時のメッセージが図示されているが、本画面に表示されているメッセージを取得失敗の旨に変更して表示する。
【0062】
S807において、MFP101のCPU111はタッチパネル501に表示されている不図示の戻るボタンの押下を検知すると、表示されている画面を初期画面である入力画面901に変更し、S801に戻る。
【0063】
S808において、MFP101のCPU111はRAM113に記憶されているMFP-userID602とAPP-userID603を用いてテーブルを作成し、ストレージ114に記憶する。また、MFP101は完了画面905をタッチパネル501に表示する。
【0064】
S809において、MFP101のCPU111は操作部116を介してボタン906の押下を検知することで、表示画面をホーム画面508に遷移させ、処理を終了する。
【0065】
図11はスキャンtoチャット処理の画面遷移の一例を示す図である。ホーム画面508に表示されているスキャンtoチャットボタン502が選択されたことによって、スキャンtoチャット画面1004がタッチパネル501に表示される。
【0066】
スキャンtoチャット画面1004には、宛先確認ボタン1005が表示されている。宛先確認ボタン1005には、スキャンして生成した画像データの投稿先として設定されている宛先の数が表示される。本実施例の宛先確認ボタン1005では、投稿先であるチャンネルが1件選択されている例を説明する。複数の宛先が選択された場合、設定された投稿先の数が宛先数として表示される。
【0067】
宛先確認ボタン1005が選択されると、スキャンtoチャットの宛先確認画面1006が表示される。スキャンtoチャットの宛先確認画面1006には、チャンネル選択ボタン1013が選択されることによって設定された送信設定投稿先が表示される。投稿先ボタン1007には、その時点で設定されている投稿先の数だけ表示され、ユーザにより選択されることにより、設定されている投稿先(宛先)が表示される宛先確認画面1006が表示される。また、投稿先ボタン1007が設定されることにより、不図示の詳細画面が表示され、設定されている投稿先の詳細が表示される。
【0068】
なお、本実施例ではスキャンtoチャットの宛先確認画面1006には1つの投稿先しか表示されていないが、これに限るものではない。例えば、MFP101がメッセージアプリサーバ300から複数の投稿先を設定することで、スキャンtoチャット宛先確認画面1006に複数の投稿先ボタンを表示することができる。
【0069】
なお、スキャンtoチャット画面1004にて、リセットボタン1008が選択された場合、設定された情報をクリアする。このとき、設定された宛先情報はクリアされる。また、スキャンtoチャット画面1004にて、白黒スタートボタン1009もしくはカラースタートボタン1010が選択された場合、スキャンして送信する処理を開始する。
【0070】
送信設定ボタン1011が選択されると、送信設定画面1012が表示される。この画面では送信ファイル設定1017などの送信設定の変更、確認が可能である。
【0071】
チャンネル選択ボタン1013が選択されるとチャンネル選択画面1014が表示される。このチャンネル選択画面1014に表示されるチャンネルやユーザは、MFP101がメッセージアプリサーバ300から受信したチャンネルリスト情報に基づいて表示される。本実施例では、受信したチャンネルリスト情報に含まれるチャンネルがすべて表示されるのではなく、MFP101にログインしているユーザが、メッセージサービス上で使用するアカウントが所属するチャンネルのみが表示される。
【0072】
このチャンネル選択画面1014では投稿先チャンネルの選択とそのチャンネルに属するどのユーザに通知するかを選択することが可能である。つまり、投稿するチャンネルとメンションする相手を選択することができる。チャンネルボタンが選択されることで、そのチャンネルに所属するユーザがプルダウンで表示される。この画面では、チャンネルとユーザの両方を選択してもいいし、そのチャンネルに所属するすべてのユーザに向けて投稿するために、チャンネルのみを選択してもいい。また、複数のチャンネルを選択してもいいし、1つのチャンネルを選択し、そのチャンネルの中の複数のユーザを選択できるようになってもいい。また、複数のチャンネルを選択し、それぞれに所属する別々のユーザを選択できるようになっていてもいい。
【0073】
戻るボタン1015が選択されると、チャンネル選択内容が保持され、スキャンtoチャット画面1004が再び表示される。このとき、投稿先欄1016には投稿先である選択されたチャンネル名と通知するユーザの名称である「投稿先:チャンネル3@ユーザ1」が表示される。また、MFP101のCPU111はこの時設定されたチャンネルとユーザに基づく投稿先をRAM113、もしくはストレージ114に記憶する。
【0074】
図12はMFP101がスキャンして生成したファイルをメッセージアプリサーバ300に送信するシーケンスの一例を示す図である。
図12のシーケンスは
図11のスキャンtoチャット画面1004のチャンネル選択ボタン1013が選択されたことに従って、開始される。なお本シーケンスでは、事前にストレージ114にユーザのMFP-userID602やトークン情報604が対応づけられて記憶されており、あるユーザがMFP101にログインしている状態から開始される。
【0075】
S1101において、MFP101のCPU111は通信部126を制御して、メッセージアプリサーバ300にHTTP通信でチャンネルリスト情報の要求を行う。具体的には、事前にユーザに対応づけて記憶されているトークン情報604とそのトークン情報604が示すワークスペース内のチャンネルリストを要求することを示す情報をメッセージアプリサーバ300に送信する。ここで、送信されるコマンドの一例は、「HTTP GET https://message.com/api/channels.list」である。このコマンドに記載されているURL「https://message.com/api/channels.list」は、メッセージアプリサーバ300にアクセスするためのURLである。このURLにトークン情報604を送信することで、メッセージアプリサーバ300はトークン情報604に対応するワークスペースとボットアプリを検索する。なお、トークン情報604はMFP101を使用しているユーザのMFP-userID602に紐づいて記憶されている。
【0076】
ここで、ワークスペースとは、メッセージアプリ内で複数のユーザが属する組織のようなものである。また、チャンネルはワークスペース内のチャットルームのようなものである。ここでいうチャットルームとは、チャットルームに参加している複数のお互いにユーザがメッセージを送受信し、会話のようにやりとりするための仕組みである。また、本実施例ではチャンネルをチャットルームとして説明するが、複数のユーザがメッセージを送受信し、会話のようにやりとりするための仕組みであれば、これに限るものではない。例えば、グループチャットやルーム、トークルーム、グループのようなものでものよい。
【0077】
ここで、ボットアプリとは、MFP101をメッセージアプリ内のユーザとして登録し、メッセージや画像データを投稿するためのアプリケーションであり、メッセージアプリサーバ300にインストールされている。ボットアプリを指定して画像データをメッセージアプリサーバ300に送信することで、そのボットアプリが送信された画像データをメッセージアプリで投稿する。また、メッセージアプリサーバ300のHDD305には、ボットアプリとトークンが対応づけて記憶され、また、ボットアプリとワークスペースが対応づけられている。よって、メッセージアプリサーバ300は、MFP101からトークン情報を受信することで、そのトークン情報に対応付けられているボットアプリに対応づけられているワークスペースの情報を返信することができる。なお、トークン情報とボットアプリとワークスペースが直接対応づけられていてもよい。これにより、多数のワークスペースの中から、事前に登録されたトークン情報604に対応するワークスペース(ユーザが画像データを送りたいワークスペース)を選択することができる。
【0078】
S1102において、メッセージアプリサーバ300のCPU301は、通信部304を介して受信したトークン情報604を参照し、トークン情報に含まれるワークスペース情報、ボットアプリをHDD305内で検索する。
【0079】
S1103において、メッセージアプリサーバ300のCPU301はMFP101から通信部304を介して受信したトークン情報604に基づいて、URLへのアクセスが許可されたものであるか確認する。許可されていればトークン情報に対応するワークスペースに含まれるチャンネルリスト情報を生成する。チャンネルリスト情報とは、チャンネル情報を示す配列情報である。チャンネル情報は、チャンネルIDと、チャンネルの名前、そのチャンネルに参加しているユーザを示すAPP-userID、アーカイブチャンネルか否かなどの設定を示すチャンネル設定値を含む。
【0080】
S1104において、メッセージアプリサーバ300のCPU301は通信部304を制御し、HTTP通信のレスポンス情報として、MFP101にチャンネルリスト情報を送信する。
【0081】
S1105において、MFP101のCPU111は受信したチャンネルリスト情報の中から、現在ログイン中のユーザのMFP-userID602に紐づくAPP-userID603が関連しているチャンネルのみをチャンネル選択画面1014に表示する。
【0082】
S1106において、MFP101のCPU111はS1105にて新たに生成されたチャンネルリスト情報に基づいて、チャンネル選択画面1014を生成する。そして、MFP101のCPU111は操作部116を介してチャンネル選択ボタン1013の押下を検知することによって、タッチパネル501にチャンネル選択画面1014を表示し、ユーザの操作を待つ。
【0083】
S1107において、MFP101のCPU111はチャンネル選択画面1014で少なくともチャンネルが選択され、操作部116を介して戻るボタン1015の押下を検知することにより投稿先のチャンネルの情報を確定する。
【0084】
S1108において、MFP101のCPU111は操作部116を介してスキャン実行指示を受け付ける。
【0085】
S1109において、MFP101のCPU111はスキャン実行指示を受けた際の、スキャン設定でスキャンする。
【0086】
S1110において、MFP101のCPU111はスキャンした画像をスキャン設定で設定された形式の画像データとして生成する。なお、スキャン設定は不図示のスキャンtoチャットの詳細設定画面でユーザに指定されたスキャン設定を使用する。また、スキャン設定は
図11の送信設定画面1012で送信設定と一緒に表示され、設定されてもよい。
【0087】
S1111において、MFP101のCPU111は通信部126を介して、メッセージアプリサーバ300に以下の情報を送信する。送信される情報は、S1101と同じトークン情報604、S1107で選択された投稿先チャンネルの情報、ファイル形式、S1110で生成された画像データである。なお、ファイル形式は、スキャンtoチャットの送信設定画面1012でユーザに指定されたファイル形式を使用する。
【0088】
S1112において、メッセージアプリサーバ300のCPU301は、S1111で受信したトークン情報604で登録されているワークスペース情報、アプリ情報を検索し、受信した画像データとチャンネル情報で指定されたチャンネルを紐づけて記憶する。また、投稿先のユーザが指定されている場合は、さらに受信した画像データとチャンネルと投稿先のユーザを対応づけて記憶する。これにより、ユーザがモバイル端末200上のメッセージアプリを起動し、先のチャンネルの会話の内容を確認するためにチャンネルを指定すると、受信した画像データが投稿された画面が表示される。
【0089】
S1113において、メッセージアプリサーバ300のCPU301は、投稿が成功したか否かに対応する結果をHTTP通信のレスポンス情報としてMFP101に送信する。なお、投稿が成功した場合MFP101のCPU111はタッチパネル501に投稿が成功した旨の通知を表示するようにしてもいい。また、投稿が失敗した場合、MFP101のCPU111はタッチパネル501に投稿が失敗した旨の通知を表示するようにしてもいい。また、投稿が成功した時はなにも通知を表示せずに、失敗した時だけ投稿が失敗した旨の通知を表示するようにしてもいい。
【0090】
図13は、MFP101で実行されるスキャンtoチャット処理の一例を示すフローチャートである。本フローチャートはMFP101の電源がオンになったことによって開始され、CPU111がROM112に記憶されたプログラムをRAM113に読み出し、実行することで
図13のフローチャートの処理は実行される。なお本フローチャート開始の条件として、事前にログイン認証フローを経由するなどの手段でストレージ114にMFP-userID602が記憶されているものとする。
【0091】
S1201において、CPU111はスキャンtoチャットボタン502が選択されたか否かを判定する。選択されたと判定した場合、S1202に進む。そうでない場合、S1201に戻る。
【0092】
S1202において、CPU111はスキャンtoチャット画面1004をタッチパネル501に表示する。
【0093】
S1203において、CPU111はチャンネル選択ボタン1013が選択されることを検知する。
【0094】
S1204において、CPU111はチャンネル選択ボタン1013が選択されたことに従って、以下の処理を実行する。実行される処理はRAM113に記憶されているMFP-userID602に紐づいたトークン情報604を用いて、HTTP通信でチャンネル情報を要求することを示す情報をメッセージアプリサーバ300に送信する処理である。
【0095】
S1205において、CPU111はS1204で送信したチャンネル取得要求に対して、メッセージアプリサーバ300からチャンネル情報を受信したか否か判定する。具体的には、HTTP通信のレスポンスにおけるステータスコードがエラーである場合や、レスポンスのボディ情報に情報取得できないことを示すパラメータが含まれている場合にチャンネルリスト情報を受信していないと判定する。受信したと判定した場合、S1208に進む。そうでない場合、S1206に進む。
【0096】
S1206において、CPU111はチャンネルリスト情報を受信できなかった旨を示す情報をチャンネル選択画面1014に表示する。この時、チャンネル選択画面1014には、チャンネルやユーザの選択肢は表示されない。
【0097】
S1207において、CPU111は戻るボタン1015が選択されたか否かを判定する。選択されたと判定した場合、S1202に戻る。そうでない場合、S1206に戻る。
【0098】
S1208において、CPU111は、S1204で取得したチャンネル情報から、RAM113に記憶されているMFP-userID602に紐づいたAPP-userID603が関連するチャンネルのみを選択する。
【0099】
S1209において、CPU111は、S1208にて選択されたチャンネル情報等が表示されるチャンネル選択画面1014をタッチパネル501に表示する。
【0100】
S1210において、CPU111は操作部116のタッチパネル501を介して、チャンネル選択画面で選択された投稿先(チャンネル、または、チャンネルとユーザ)が確定か否かを検知する。確定の場合はS1211へ遷移し、投稿チャンネルリスト情報を更新する。確定していない場合はS1209へ遷移する。確定検知の方法は、戻るボタン1015が選択されたか否かである。なお、タッチパネル501の画面上に確定ボタンが表示される画面構成の場合、確定ボタンの選択においても同様の遷移を行う。
【0101】
S1211において、CPU111はタッチパネル501にスキャンtoチャット画面1004を表示し、S1210で確定した投稿先で投稿先欄1016の表示を更新する。このとき、投稿先のチャンネルと合わせて、通知したいユーザの情報も表示する。
【0102】
S1212において、CPU111はタッチパネル501に表示された白黒スタートキー1009もしくはカラースタートキー1010が選択されたか否かを判定する。選択されたと判定した場合、S1213に進む。そうでない場合、S1212に戻る。
【0103】
S1213において、CPU111はスキャン設定に基づいて読取部118を制御し、原稿の画像を読み取り、画像データを生成する。スキャン設定は不図示のスキャンtoチャットの詳細設定画面でユーザに指定されたスキャン設定を使用する。
【0104】
S1214において、CPU111はS1213で生成された画像データを送信設定画面で設定されたファイル形式1017に変換する。
【0105】
S1215において、CPU111は投稿パラメータを生成する。投稿パラメータには、投稿先のチャンネル、ファイル形式、ファイル名、投稿コメントが含まれる。ファイル形式は送信設定で設定したファイル形式1017に該当するものが設定される。投稿コメントは、通知したいユーザ情報の先頭にアットマーク「@」をつけた文字を生成する。ファイル名は、送信設定で指定されたファイル名を指定する。
【0106】
S1216において、CPU111は事前に登録されたトークン情報604を用いて、メッセージアプリサーバ300にHTTP通信のPOSTメソッドで、S1214で生成されたファイルと投稿パラメータを送信する。これらのデータ(画像データを変換したファイルや投稿パラメータ)をメッセージアプリサーバ300に送信することで、メッセージアプリサーバ300は、受信したファイルを受信したチャンネルの受信したユーザに対して投稿されるように制御する。
【0107】
S1217にて、CPU111はメッセージアプリサーバ300から投稿結果を受信し、タッチパネル501に表示する。
【0108】
上記の処理により、ユーザはMFP101から自身が関連しているサーバ内チャンネルへ容易にファイルを投稿できる。
【0109】
S1216の処理で画像データを変換したファイルや投稿パラメータがメッセージアプリサーバ300に送信されることによって、モバイル端末200の操作パネル201に表示される画面の一例を、
図14を用いて説明する。
【0110】
図14はメッセージアプリのメッセージ画面の一例を示す図である。
図14のメッセージ画面1301は、モバイル端末200でメッセージアプリが起動され、MFP101においてS1015の処理が実行されることによって表示される。また、モバイル端末200はメッセージアプリサーバ300と通信している。
【0111】
ユーザがモバイル端末200でメッセージアプリを起動し、そのユーザのアカウントのログインIDとパスワードを入力してログインすることで、そのユーザ専用の画面が表示される。
【0112】
メッセージ1304は、ユーザ1のアカウントを持つユーザが、MFP101を使用し
て、スキャンして生成した画像データと、投稿パラメータをメッセージアプリサーバ30
0に送信することによって、表示(投稿)されるメッセージである。
図14例では、投稿
パラメータのうちの投稿のチャンネルとして「チャンネル1」が指定され、ユーザとして
チャンネル1に所属する「ユーザ3」が指定されている例を示す。また、投稿パラメータ
のファイル名として「資料.pdf」が指定され
、コメントとして「送ります。」が指定
されている例でもある。なお、ファイル名やコメントは不図示のスキャンtoチャットの
詳細設定画面でユーザにより指定される。
【0113】
また、メッセージアプリ画面1301では、ログインしたユーザが参加しているチャンネル、グループとユーザが表示される。また、相手情報(1302)とメッセージのやり取りが表示される(1303)。投稿の際に、ユーザ名の先頭に「@」を付けたコメントを付与することで、投稿の相手がチャンネルの中でも特に指定ユーザに知らせたいことを示す(1304)。
図14の場合、ユーザ3は投稿が受信されたことを、メッセージアプリの閲覧端末に応じて、チャンネルに所属する他のメンバーよりもはやく投稿に気づくことができる。ユーザ3の閲覧するモバイル端末200がスマートフォンの場合、アイコン通知機能やバイブレーション、着信音でユーザ通知する。ユーザ3の閲覧するモバイル端末200がデスクトップ端末の場合は、デスクトップ通知機能などでユーザに通知する。
【0114】
メッセージアプリ画面1301を表示するにあたって、メッセージアプリサーバ300は、
図15に記載のデータ構造から必要な情報を検索し表示する。たとえば、メッセージ1304の投稿は、やりとり内容1405の「発言3+ファイル1」に該当しており、ファイル1の名称などの属性情報を1404から取得し、メッセージ上に、ファイルアイコンの形で表示している。このファイルアイコンをユーザが選択すると、ファイル1404に属したファイル1を取得することができる。なお、ここでこのチャンネルに投稿されたファイルはアイコンで表示されているが、そのファイルのプレビュー画像を表示するようにしてもよい。
【0115】
図15はメッセージアプリサーバ内のファイル構造の一例を示す図である。このファイル構造は、メッセージアプリサーバ300のHDD305に記憶されており、
図14の画面は、このファイル構造に基づいて表示される。メッセージアプリサーバ300はworkspaceという一番大きなまとまりの中にチャンネル、グループ、ユーザ、ファイル等の小さなまとまりを持ちデータを管理する。チャンネル1401はworkspaceのメンバー全員が参加でき、投稿された内容はすべて誰でも検索できる種類のチャットルームである。グループ1402は全メンバーに公開すべきでないディスカッションのためのチャンネルで閲覧と参加には招待が必要となるものである。ユーザ1403はこのworkspaceに参加しているユーザである。ファイル1404は添付されたファイルが保存されている。さらに、チャンネル、グループ、ユーザでのやり取りの内容1405がそれぞれに紐づいて記憶されている。例えば、チャンネル1にはチャンネル1に参加しているユーザが紐づいて記憶され、また、チャンネル1でやりとりされたメッセージや画像データもチャンネル1に紐づけて記憶されている。このように記憶されていることで、チャンネル選択画面1014でチャンネルが選択されたときに、指定されたチャンネル情報に対応するユーザを表示することができる。
【0116】
上記の処理を実行することで、画像処理装置で生成された画像データを表示するトークルームを指定する際に、ユーザがトークルームを探しやすくしつつ、チャットサービスの認証情報が流出する可能性を低減することができる。
【0117】
なお、本実施例ではチャンネル選択画面1014には、MFP101にログインしているユーザがチャットサービスで使用しているアカウントが所属しているチャンネルのみを表示する例を示したが、これに限るものではない。例えば、MFP101にログインしているユーザがチャットサービスで使用しているアカウントが所属しているチャンネルのみを表示するか否かを切り替える設定が可能であってもよい。MFP101にログインしているユーザのチャットサービスでのアカウントが所属しているチャンネルのみを表示するように設定されていない場合、S1101で送信したトークン情報に対応するワークスペースに対応するチャンネルがすべて表示される。なお、S1101で送信したトークン情報に対応するワークスペースに対応するチャンネルには、ユーザがチャットサービスで使用しているアカウントが所属しているチャンネルも含まれている。
【実施例2】
【0118】
実施例1では、MFP101がメッセージアプリサーバ300に直接、画像データや投稿パラメータを送信する例を説明した。本実施例では、MFP101はボットサーバ400を介して、画像データや投稿パラメータをメッセージアプリサーバ300に送信する例を説明する。本実施例では、実施例1にて述べたテーブル601をボットサーバ400のHDD405が記憶する例を説明する。
図8、
図9に示される、実施例1におけるテーブル601生成フローにおいては、MFP101をボットサーバ400と、MFP101のCPU111をボットサーバ400のCPU401と置き換えることでそのまま適用できるため、説明を省略する。
【0119】
図16は、MFP101がスキャンして生成したファイルを、ボットサーバ400を介して、メッセージアプリサーバ300に送信するシーケンスの一例を示す図である。
図16のシーケンスは、
図11のスキャンtoチャット画面1004のチャンネル選択ボタン1013が選択されたことに従って開始される。
【0120】
S1501において、MFP101のCPU111はボットサーバ400に、MFP-userID602と、HTTP通信でチャンネルリスト情報を要求することを示す情報を送信する。
【0121】
S1502において、ボットサーバ400のCPU401は、受信したMFP-userID602対応するトークン情報604をテーブル601から選択する。そしてメッセージアプリサーバ300に対して、HTTP通信でチャンネルリスト情報の要求することを示す情報を、トークン情報604とともに送信する。
【0122】
S1503において、メッセージアプリサーバ300のCPU301は、トークン情報604から登録されているワークスペース情報、ボットアプリを検索する。
【0123】
S1504において、メッセージアプリサーバ300のCPU301は、アプリ情報から実行されたURLが許可されたものであるか確認し、許可されていればワークスペースに属するチャンネルのリスト情報を生成する。チャンネルのリスト情報とは、チャンネル情報の配列情報である。チャンネル情報は、チャンネルIDと、チャンネルの名前、チャンネルに属するメンバーのAPP-userIDリスト、アーカイブチャンネルか否かなどの設定値を含む。
【0124】
S1505において、メッセージアプリサーバ300のCPU301は、通信部304を制御して、ボットサーバ400にHTTP通信のレスポンス情報としてチャンネルリスト情報を送信する。
【0125】
S1506において、ボットサーバ400のCPU401は受信したチャンネルリスト情報の中から、S1501にて受信したMFP-userID602に紐づいたAPP-userID603が関連しているチャンネルを選択する。そして、MFP101に送信するためのチャンネルリストを作成する。
【0126】
S1507において、ボットサーバ400のCPU401は、S1506で作成したチャンネルリスト情報を、MFP101にHTTP通信のレスポンスとして送信する。また、MFP101のCPU111は受信したチャンネルリスト情報に含まれるチャンネルをチャンネル選択画面1014に表示する。
【0127】
S1508~S1512の処理は
図12のS1106~S1110の処理と同様な処理のため説明を割愛する。
【0128】
S1513において、MFP101のCPU111はMFP-userID602と、投稿先チャンネルの情報、ファイル形式等を示す情報や画像データをHTTP通信でボットサーバ400に送信する。
【0129】
S1514において、ボットサーバ400のCPU401は以下の処理を実行する。実行される処理は、受信した投稿先チャンネルの情報、ファイル形式を示す情報、画像データと、受信したMFP-userID602に対応するトークン情報604を、メッセージアプリサーバ300に送信する処理である。
【0130】
S1515の処理はS1112の処理と同様の処理であるため、説明を割愛する。
【0131】
S1516において、メッセージアプリサーバ300のCPU301は、投稿が成功したか否かに対応する結果をHTTP通信のレスポンス情報としてボットサーバ400に送信する。
【0132】
S1517において、ボットサーバ400のCPU401は、投稿が成功したか否かに対応する結果をHTTP通信のレスポンス情報としてMFP101に送信する。なお、投稿が成功した場合MFP101のCPU111はタッチパネル501に投稿が成功した旨の通知を表示するようにしてもいい。また、投稿が失敗した場合、MFP101のCPU111はタッチパネル501に投稿が失敗した旨の通知を表示するようにしてもいい。また、投稿が成功した時はなにも通知を表示せずに、失敗した時だけ投稿が失敗した旨の通知を表示するようにしてもいい。
【0133】
また、本実施例においては、チャンネルリストを取得としたが、アクセス制限付きのグループリスト、個別投稿のユーザリストも同様の方法で投稿することができる。
【0134】
図17は、スキャンtoチャット処理の一例を示すフローチャートである。CPU111がROM112に記憶されたプログラムをRAM113に読み出し、実行することで
図17のフローチャートの処理は実行される。また、
図17のフローはMFP101の電源がオンになったことによって開始される。
【0135】
S1701~S1703の処理はS1201~S1203の処理と同様の処理であるため、説明を省略する。
【0136】
S1704にて、CPU111はMFP-userID602を取得して、ボットサーバ400にHTTP通信でチャンネル情報取得要求とMFP-userID602を送信する。
【0137】
S1705~S1707の処理はS1205~S1207の処理と同様の処理であるため、説明を省略する。また、S1208に相当する処理はボットサーバ400側で処理されるため本実施例においてはMFP101では実施されず、以降のS1708~S1714の処理はS1209~S1215の処理と同様であるため、説明を省略する。
【0138】
S1715において、CPU111はMFP-userID602と、S1713で生成されたファイルと投稿パラメータを送信する。なお、実施例1ではあらかじめ登録されているトークン情報604を用いて、メッセージアプリサーバ300にファイルを送信する例を説明したがこれに限るものではない。例えば、MFP101のストレージ114がトークン情報のみを記憶していて、ユーザにより選択されたトークン情報を使用して要求やファイルの送信を実行してもよい。
【0139】
S1716において、CPU111はメッセージアプリサーバ300から投稿結果を受信し、タッチパネル501に表示する。
【0140】
なお、本実施例においては、MFP-userID602をボットサーバ400との通信に使用しているが、一意に決まる識別子であればテナントIDなどを利用することもできる。
【0141】
図18は、ボットサーバ400が画像データをメッセージアプリサーバ300に送信する際の処理の一例を示すフローチャートである。CPU401がROM402に記憶されたプログラムをRAM403に読み出し、実行することで
図18のフローチャートの処理は実行される。また、
図18のフローはボットサーバ400の電源がオンになったことによって開始される。
【0142】
S1801において、CPU401はMFP101からMFP-userID602とチャンネル情報を取得する情報取得要求を受信したか否かを判定する。受信したと判定した場合、S1802に進む。そうでない場合、S1801に戻る。
【0143】
S1802において、CPU401はMFP101から受信したMFP-userID602に対応するトークン情報を取得する。
【0144】
S1803において、CPU401は受信したMFP-userID602に対応するトークン情報604があるか否かをテーブル601より判定する。あると判定された場合、S1804に進む。そうでない場合、S1807に進む。また、あると判定された場合、RAM403は受信した受信したMFP-userID602を記憶する。
【0145】
S1804において、CPU401はS1801でMFP101から受信した情報取得要求を、S1803で特定したトークン情報604を用いてメッセージアプリサーバ300へ送信する。
【0146】
S1805において、CPU401はメッセージアプリサーバ300からチャンネルリスト情報が返却されたかどうかを判断する。返却されていた場合、S1806に進む。返却されていなかった場合、S1805に戻る。
【0147】
S1806において、CPU401は受信したチャンネルリスト情報から、MFP-userID602に紐づいたAPP-userID603に対応するチャンネルを含むチャンネルリスト情報をMFP101に送信して、処理を終了する。なお、当該チャンネルリストには、APP-userID603に対応づいていないチャンネルが含まれない。
【0148】
S1807にて、CPU401はS1801で受信したリクエストの返答として、実行エラーを示す情報をMFP101に送信して、処理を終了する。
【0149】
なお、
図18のフローは、
図16のシーケンスのS1501で送信されたMFP-userID602と情報取得要求を受信した時の例を説明した。S1513の処理で送信されたMFP-userID602とファイル(画像データ)と、投稿先チャンネル情報とを受信した時にも
図18と同様のフローで処理する。つまり、受信したMFP-userID602に対応するトークン情報604があるときは、そのトークン情報604と投稿先チャンネル情報とファイル(画像データ)をメッセージアプリサーバ300に送信する。受信したMFP-userID602に対応するトークン情報604がないときは、MFP101にエラーを示す情報を送信する。
【0150】
本実施例により、メッセージアプリサーバ300のインタフェース仕様が変更された場合でも、MFP101のプログラムをアップロードすることなく、ボットサーバのプログラムを更新するだけで、実現が可能になる。また、複数のMFPがある職場において、各MFPに対して個別にトークン設定を行わなくても、ファイル投稿を実施することができる。
【0151】
<その他の実施の形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0152】
101 MFP
300 メッセージアプリサーバ
400 ボットサーバ
111 CPU
118 読取部