以下に図面を参照して、本発明にかかるサービス連携プログラム、サービス連携方法および情報処理装置の実施の形態を詳細に説明する。
(実施の形態)
まず、実施の形態にかかる情報処理装置101を含むサービス連携システム100のシステム構成例について説明する。サービス連携システム100は、例えば、チャットボットを利用したFAQ(Frequently Asked Question)システムに適用される。
図1は、サービス連携システム100のシステム構成例を示す説明図である。図1において、サービス連携システム100は、情報処理装置101と、情報処理端末102と、RPAサーバ103と、処理サーバ104と、を含む。サービス連携システム100において、情報処理装置101、情報処理端末102、RPAサーバ103および処理サーバ104は、有線または無線のネットワーク110を介して接続される。ネットワーク110は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
ここで、情報処理装置101は、チャットボットの会話を制御可能なコンピュータである。チャットボットは、人工知能を利用して、人間との対話やメッセージのやりとりを行うコンピュータシステムである。情報処理装置101は、FAQマスタ120、サービス種別テーブル130および項目読替テーブル140を有する。
FAQマスタ120は、FAQを記憶する。FAQは、「頻繁に尋ねられる質問」の意味であり、予め予想される質問に対して、質問と回答とをまとめたものである。質問は、何らかの問題の解決方法を問うものであってもよく、また、話し言葉による問いかけであってもよい。回答は、例えば、質問された問題の解決方法を示す回答や、話し言葉による問いかけに対する回答である。
チャットボットとの会話は、例えば、トークスクリプトに従って行われる。トークスクリプトは、チャットのトーク処理を定義した情報であり、チャットボットの会話の流れを定義したものに相当する。トークスクリプトは、ウェブサービスごとに用意されていてもよい。トーク処理は、チャットボットの動作(挙動)を実現するための処理である。例えば、トーク処理は、発話する処理、選択肢を表示する処理、選択された選択肢に応じた手続を行う処理などを含む。
なお、サービス種別テーブル130および項目読替テーブル140の記憶内容については、図4および図5を用いて後述する。図示は省略するが、情報処理装置101は、例えば、トークスクリプトを記憶するスクリプトDB(Database)や、チャットログ(会話履歴)を記憶するチャットログDBを有していてもよい。例えば、情報処理装置101は、サーバである。
情報処理端末102は、ユーザがチャットボットとの会話を行う際に利用するコンピュータである。情報処理端末102において、ユーザは、例えば、メッセージを入力したり、選択肢を選択したりすることで、チャットボットと対話しながら所望の回答を探したり、ウェブサービスを利用したりすることができる。
ウェブサービスとしては、例えば、金融機関から提供される口座開設、残高照会、振込、住所変更などがある。また、保険会社から提供される契約内容変更、住所変更などがある。例えば、情報処理端末102は、スマートフォンやタブレット型PC(Personal Computer)などである。
RPAサーバ103は、RPA(Robotic Process Automation)の処理部品群PGを有するコンピュータである。RPAとは、人工知能を備えたソフトウェアのロボット技術により、手動で行っていた定型的な作業を自動化・効率化することである。処理部品群PGは、例えば、ウェブサービスに対応して設けられる。
また、処理部品群PGは、例えば、RPA制御部crと、ロボットrbとを含む。RPA制御部crは、依頼された処理(ジョブ)をキューイングしたり、ロボットrbを制御したりする。ロボットrbは、RPA制御部crの制御に従って、処理を実行するソフトウェアである。RPAサーバ103は、複数のウェブサービスについて、各ウェブサービスに対応するRPAの処理部品群PGを有していてもよい。
処理サーバ104は、ウェブサービスにかかる処理を実行するコンピュータである。ウェブサービスにかかる処理としては、例えば、金融機関における残高照会処理、振込処理、住所変更処理などがある。例えば、処理サーバ104は、ウェブサービスを運用するシステムのサーバである。
ここで、既存のウェブサービスには、スマートフォンなどからの入力受け付けに対応していないものや、スマートフォンなどから入力しにくいものが存在する。このため、スマートフォンなどからのアクセスに対応するサービスを、例えば、ウェブサービスを運用するシステムとのAPI(Application Programming Interface)連携で構築することが考えられる。
しかし、既存のシステムとのAPI連携で構築する場合、既存のシステムに手を加える必要があるため工数がかかり、コストの増大を招くという問題がある。また、スマートフォンなどから入力しやすいウェブアプリケーションを新たに開発することも考えられるが、アプリケーションの開発にコストがかかる。
スマートフォンなどにおいて、ウェブサービスを利用する際に必要となる各種の情報を、チャットボットとの会話形式で入力することができれば、ユーザにとって自然でわかりやすいインターフェースを提供することができる。また、チャットボットとRPAとの連携により、ウェブページへの情報入力を自動化することも考えられる。
すなわち、チャットボットとRPAとの技術を利用することで、ユーザは、チャットボットとの会話形式で情報入力を行いながら、ウェブサービスを利用することが可能となる。しかし、RPAの処理部品群PGには、ウェブサービスに応じて、同期処理を行うものも、非同期処理を行うものもある。
同期処理は、例えば、残高照会処理などのリアルタイムに処理結果を返す処理である。非同期処理は、例えば、住所変更処理などの後日処理結果を返す処理である。このため、チャットボットとRPAとの連携によりウェブサービスを利用可能にするには、RPAの処理部品群PGの機能に応じた制御が望まれる。
そこで、本実施の形態では、ウェブサービスを提供する既存システムを変更することなく、情報処理端末102(例えば、スマートフォンやタブレット端末など)からのウェブサービスの利便性を向上させるサービス連携方法について説明する。
具体的には、例えば、情報処理装置101は、情報処理端末102におけるチャットボットとの会話形式で入力されたウェブサービスに対応する入力情報の、ウェブサービスにおける入力項目への入力に基づくウェブサービスの進捗状況を特定する。そして、情報処理装置101は、特定した進捗状況とウェブサービスの種別とに応じて、情報処理端末102への応答を、チャットボットとの会話形式手段、または、チャットボットとの会話形式とは異なる他の手段のいずれかの手段で送信する。これにより、ウェブサービスを利用するにあたり、情報処理端末102から入力しやすいインターフェースを提供しつつ、ウェブサービスの種別に応じた制御を実現して、情報処理端末102からのウェブサービスSiの利便性を向上させる。
なお、図1の例では、情報処理端末102、RPAサーバ103および処理サーバ104をそれぞれ1台のみ表記したが、これに限らない。例えば、情報処理端末102は、サービス連携システム100のユーザごとに設けられる。また、RPAサーバ103および処理サーバ104は、ウェブサービスごとに設けられることにしてもよい。また、RPAサーバ103は、例えば、情報処理装置101により実現されることにしてもよい。
(情報処理装置101のハードウェア構成例)
図2は、情報処理装置101のハードウェア構成例を示すブロック図である。図2において、情報処理装置101は、CPU(Central Processing Unit)201と、メモリ202と、ディスクドライブ203と、ディスク204と、通信I/F(Interface)205と、可搬型記録媒体I/F206と、可搬型記録媒体207と、を有する。また、各構成部は、バス200によってそれぞれ接続される。
ここで、CPU201は、情報処理装置101の全体の制御を司る。CPU201は、複数のコアを有していてもよい。メモリ202は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMがOS(Operating System)のプログラムを記憶し、ROMがアプリケーションプログラムを記憶し、RAMがCPU201のワークエリアとして使用される。メモリ202に記憶されるプログラムは、CPU201にロードされることで、コーディングされている処理をCPU201に実行させる。
ディスクドライブ203は、CPU201の制御に従ってディスク204に対するデータのリード/ライトを制御する。ディスク204は、ディスクドライブ203の制御で書き込まれたデータを記憶する。ディスク204としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
通信I/F205は、通信回線を通じてネットワーク110に接続され、ネットワーク110を介して外部のコンピュータ(例えば、図1に示した情報処理端末102、RPAサーバ103、処理サーバ104)に接続される。そして、通信I/F205は、ネットワーク110と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。通信I/F205には、例えば、モデムやLANアダプタなどを採用することができる。
可搬型記録媒体I/F206は、CPU201の制御に従って可搬型記録媒体207に対するデータのリード/ライトを制御する。可搬型記録媒体207は、可搬型記録媒体I/F206の制御で書き込まれたデータを記憶する。可搬型記録媒体207としては、例えば、CD(Compact Disc)-ROM、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリなどが挙げられる。
なお、情報処理装置101は、上述した構成部のほかに、例えば、SSD(Solid State Drive)、入力装置、ディスプレイ等を有することにしてもよい。また、情報処理装置101は、上述した構成部のうち、例えば、ディスクドライブ203、ディスク204、可搬型記録媒体I/F206、可搬型記録媒体207を有していなくてもよい。また、図1に示したRPAサーバ103および処理サーバ104についても、情報処理装置101と同様のハードウェア構成により実現することができる。
(情報処理端末102のハードウェア構成例)
図3は、情報処理端末102のハードウェア構成例を示すブロック図である。図3において、情報処理端末102は、CPU301と、メモリ302と、ディスプレイ303と、入力装置304と、通信I/F305と、カメラ306と、スピーカ307と、マイクロフォン308とを有する。また、各構成部はバス300によってそれぞれ接続される。
ここで、CPU301は、情報処理端末102の全体の制御を司る。CPU301は、複数のコアを有していてもよい。メモリ302は、例えば、ROM、RAMおよびフラッシュROMなどを有する記憶部である。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ディスプレイ303は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。ディスプレイ303としては、例えば、液晶ディスプレイや有機EL(Electroluminescence)ディスプレイなどを採用することができる。
入力装置304は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置304は、タッチパネル式の入力パッドやテンキーなどであってもよく、また、キーボードやマウスなどであってもよい。
通信I/F305は、通信回線を通じてネットワーク110に接続され、ネットワーク110を介して外部のコンピュータ(例えば、情報処理装置101)に接続される。そして、通信I/F305は、ネットワーク110と自装置内部とのインターフェースを司り、外部装置からのデータの入出力を制御する。
カメラ306は、画像(静止画または動画)を撮影して画像データを出力する撮影装置である。スピーカ307は、電気信号を音声に変換して、音声を出力する。マイクロフォン308は、音声を受音して電気信号に変換する。
なお、情報処理端末102は、上述した構成部のほかに、例えば、HDD(Hard Disk Drive)、SSD、近距離無線通信I/F、可搬型記録媒体I/F、可搬型記録媒体、GPS(Global Positioning System)ユニットなどを有することにしてもよい。
(サービス種別テーブル130の記憶内容)
つぎに、情報処理装置101が有するサービス種別テーブル130の記憶内容について説明する。サービス種別テーブル130は、例えば、図2に示したメモリ202、ディスク204などの記憶装置により実現される。
図4は、サービス種別テーブル130の記憶内容の一例を示す説明図である。図4において、サービス種別テーブル130は、対象業務および同期/非同期のフィールドを有し、各フィールドに情報を設定することで、サービス種別情報(例えば、サービス種別情報400-1~400-3)をレコードとして記憶する。
ここで、対象業務は、ウェブサービスの名称(サービス名)を示す。同期/非同期は、ウェブサービスの種別を示す。例えば、同期/非同期「同期」は、ウェブサービスの種別が「同期処理」であることを示す。また、同期/非同期「非同期」は、ウェブサービスの種別が「非同期処理」であることを示す。
(項目読替テーブル140の記憶内容)
つぎに、情報処理装置101が有する項目読替テーブル140の記憶内容について説明する。項目読替テーブル140は、例えば、図2に示したメモリ202、ディスク204などの記憶装置により実現される。
図5は、項目読替テーブル140の記憶内容の一例を示す説明図である。図5において、項目読替テーブル140は、対象業務ごとの項目読替情報(例えば、項目読替情報500-1,500-2)を記憶する。項目読替情報は、チャット項目とウェブページ項目との対応関係を示す。
ここで、対象業務は、ウェブサービスを示す。チャット項目は、チャットボット(チャットウィンドウ)での入力項目の変数名を示す。ウェブページ項目は、ウェブページでの入力項目の変数名を示す。なお、入力項目は、ウェブサービスを利用する際に必要となる情報を入力する項目である。
例えば、項目読替情報500-1によれば、対象業務「残高照会」について、チャットボットでの入力項目と、ウェブページでの入力項目との対応関係を特定することができる。一例を挙げると、対象業務「残高照会」について、チャットボットでの入力項目「chat_userid」に対応するウェブページでの入力項目は「userid」である。
(情報処理端末102のチャットウィンドウの画面例)
つぎに、情報処理端末102のディスプレイ303(図3参照)に表示されるチャットウィンドウの表示例について説明する。
図6は、チャットウィンドウの表示例を示す説明図である。図6において、チャットウィンドウ600は、情報処理端末102のユーザとチャットボットとの会話を時系列に表示する操作画面である。ただし、図6では、ユーザとチャットボットとの会話の一部を抜粋して表示している。
チャットウィンドウ600において、ユーザは、入力装置304(図3参照)を用いた操作入力により、選択肢を選択したり、情報を入力したりすることで、チャットボットと対話しながらウェブサービスを利用することができる。なお、アイコンicは、チャットボットを表している。
ここでは、複数のウェブサービス(例えば、残高照会、住所変更)の中から「残高照会」が選択された結果、ユーザとチャットボットとの間で行われた会話が表示されている。例えば、チャットボットの「ログインIDを入力してください」という呼びかけに対して、chat_userid「aaaaa●●●」が会話形式で入力されている。また、チャットボットの「参照期間(from)を入力してください」という呼びかけに対して、chat_refFrom「2019/01/01」が会話形式で入力されている。また、チャットボットの「参照期間(to)を入力してください」という呼びかけに対して、chat_refTo「2019/12/31」が会話形式で入力されている。
チャットウィンドウ600によれば、ユーザは、ウェブサービス「残高照会」を利用する際に必要となる各種の情報を、チャットボットとの会話形式で入力することができる。
(情報処理装置101の機能的構成例)
図7は、情報処理装置101の機能的構成例を示すブロック図である。図7において、情報処理装置101は、取得部701と、特定部702と、実行制御部703と、決定部704と、応答部705と、記憶部710と、を含む。取得部701~応答部705は制御部となる機能であり、具体的には、例えば、図2に示したメモリ202、ディスク204、可搬型記録媒体207などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、通信I/F205により、その機能を実現する。各機能部の処理結果は、例えば、メモリ202、ディスク204などの記憶装置に記憶される。記憶部710は、例えば、メモリ202、ディスク204などの記憶装置により実現される。具体的には、例えば、記憶部710は、図4に示したサービス種別テーブル130や、図5に示した項目読替テーブル140を記憶する。
取得部701は、情報処理端末102におけるチャットボットとの会話形式で複数のウェブサービスの中から選択されたいずれかのウェブサービスの選択情報を取得する。また、取得部701は、情報処理端末102におけるチャットボットとの会話形式で入力された、選択されたウェブサービスに対応する入力情報を取得する。
ここで、複数のウェブサービスは、情報処理端末102において利用可能なウェブサービスである。ウェブサービスとは、ウェブサイトのソフトウェアシステムを呼び出して利用するサービスである。ウェブサービスの選択情報は、選択されたウェブサービスを一意に特定する情報である。ウェブサービスに対応する入力情報は、ウェブサービスを利用する際に入力される情報である。
以下の説明では、情報処理端末102において利用可能な複数のウェブサービスを「ウェブサービスS1~Sn」と表記する場合がある(nは、2以上の自然数)。また、ウェブサービスS1~Snの中から選択されたウェブサービスを「ウェブサービスSi」と表記する場合がある(i=1,2,…,n)。
ウェブサービスSiの選択や、ウェブサービスSiを利用する際に必要となる情報の入力は、例えば、図6に示したようなチャットウィンドウ600において行われる。具体的には、例えば、取得部701は、選択されたウェブサービスSiの選択情報、および、ウェブサービスSiに対応する入力情報を情報処理端末102から受信することにより、ウェブサービスSiの選択情報、および、ウェブサービスSiに対応する入力情報を取得する。
ウェブサービスSiの選択情報には、例えば、ウェブサービスSiのサービス名が含まれる。ウェブサービスSiに対応する入力情報には、例えば、チャットボット(チャットウィンドウ)における入力項目の変数名と、当該入力項目について入力された情報とが含まれる。
なお、複数の入力項目がある場合、取得部701は、入力項目ごとに入力情報を取得してもよく、複数の入力項目の入力情報を一括して取得してもよい。また、選択情報や入力情報には、例えば、ルームIDが付与されている。ルームIDは、チャットを行うルームのIDを示す。ルームIDによれば、チャットボットとの一連の会話を特定することができる。
特定部702は、記憶部710を参照して、取得された入力情報が、ウェブサービスSiにおけるいずれの入力項目に対応するかを特定する。ここで、記憶部710は、ウェブサービスSiについて、チャットボットでの入力項目と、ウェブページにおける入力項目との対応関係を示す情報を記憶する。
より詳細に説明すると、例えば、特定部702は、項目読替テーブル140を参照して、ウェブサービスSiについて、取得された入力情報に含まれるチャットボットでの入力項目の変数名に基づいて、ウェブサービスSiでの入力項目を特定する。なお、ウェブサービスSiは、取得された選択情報から特定される。
例えば、選択情報から特定されるウェブサービスSiを「残高照会」とし、入力情報に含まれるチャットボットでの入力項目の変数名を「chat_userid」とする。この場合、特定部702は、項目読替テーブル140を参照して、チャットボットでの入力項目「chat_userid」に対応するウェブページでの入力項目「userid」を特定する。
なお、特定部702は、例えば、図5に示したような項目読替テーブル140を有する他のコンピュータに問い合わせることにより、取得された入力情報がウェブサービスSiにおけるいずれの入力項目に対応するかを特定することにしてもよい。
実行制御部703は、特定された入力項目に対する、取得された入力情報の入力処理を実行して、入力項目に対する入力情報の入力に基づくウェブサービスSiの進捗状況を特定する。ここで、入力情報の入力処理とは、ウェブサービスSiの入力項目に入力情報を入力する処理である。
入力情報の入力処理は、例えば、ウェブサービスSiに対応するRPAの処理部品群PGを用いて実行される。具体的には、例えば、まず、実行制御部703は、記憶部710を参照して、取得された入力情報を、ウェブサービスSiの入力項目に入力処理するRPAの処理部品群PGを特定する。
ここで、記憶部710は、ウェブサービスSiとRPAの処理部品群PGとの対応関係を示す情報を記憶する。例えば、記憶部710は、ウェブサービスSiのサービス名と対応付けて、ウェブサービスSiに処理部品群PGのRPA制御部crにアクセス可能なアドレス情報が記憶されていてもよい。
そして、実行制御部703は、例えば、特定した処理部品群PGのRPA制御部crにアクセスして、入力処理を実行するロボットrbを起動させる。なお、実行制御部703は、例えば、他のコンピュータに問い合わせることにより、取得された入力情報を、ウェブサービスSiの入力項目に入力処理するRPAの処理部品群PGを特定することにしてもよい。
また、実行制御部703は、入力情報に対応するチャットボットでの入力項目の変数名を、ウェブサービスSiに対応するウェブページでの入力項目の変数名に変換する。具体的には、例えば、項目読替テーブル140を参照して、入力情報に含まれるチャットボットでの入力項目の変数名を、ウェブページでの入力項目の変数名に変換する。
つぎに、実行制御部703は、変換後の入力項目の変数名を含む入力情報を、RPA制御部crに送信する。RPA制御部crは、情報処理装置101(実行制御部703)から、変換後の入力項目の変数名を含む入力情報を受信すると、起動したロボットrbに当該入力情報を渡す。この結果、ロボットrbにより入力処理の実行が開始される。
例えば、ロボットrbは、ウェブサービスSiに対応するウェブページを開いて、RPA制御部crから受け取った入力情報をもとに、ウェブページの入力項目に値を入力する。ロボットrbは、ウェブページへの入力が完了すると、処理サーバ104にウェブサービスSiにかかる処理を依頼する。ロボットrbは、処理サーバ104から処理結果を受信すると、RPA制御部crに渡す。
RPA制御部crは、ロボットrbから受け取った処理結果を、情報処理装置101(実行制御部703)に送信する。なお、ウェブサービスSiの種別が「非同期処理」の場合、RPA制御部crは、例えば、Webhookなどを利用して、ウェブサービスSiの処理結果を取得する。処理結果には、例えば、ルームIDが付与されている。情報処理装置101は、このルームIDから、例えば、どのチャットウィンドウに対応する入力処理の結果であるかを特定することができる。
ここで、ウェブサービスSiの種別が「同期処理」の場合、処理サーバ104での処理が正常に完了すると、処理結果は、即座に得られる。一方、ウェブサービスSiの種別が「非同期処理」の場合には、処理サーバ104で処理が正常に行われたとしても、処理結果は、即座には得られず、例えば、後日得られる。また、処理サーバ104の不具合等により、処理が正常に行われなかった場合は、処理結果は得られないことになる。
例えば、実行制御部703は、ウェブサービスSiの進捗状況として、「処理依頼済み」、「処理結果を受信」、「エラー」などを特定する。進捗状況「エラー」は、例えば、RPAの処理部品群PG(例えば、RPA制御部cr)に入力情報を送信(処理依頼)してから、規定時間内に処理部品群PGから応答がない場合などに特定される。なお、RPAの処理部品群PGは、情報処理装置101が有していてもよい。
決定部704は、取得された選択情報から特定されるウェブサービスSiの種別と、特定されたウェブサービスSiの進捗状況とに応じて、情報処理端末102への応答を、チャットボットとの会話形式手段、または、チャットボットとの会話形式とは異なる他の手段のいずれの手段で送信するかを決定する。情報処理端末102への応答には、例えば、ウェブサービスSiの進捗状況の情報が含まれる。
進捗状況の情報は、例えば、ウェブサービスSiの進捗状況や処理結果を特定する情報である。また、チャットボットとの会話形式とは異なる他の手段は、例えば、電子メールサービス、SMS(Short Message Service)、自動電話サービスなどである。なお、情報処理端末102のユーザの電子メールアドレスや電話番号は、ユーザ情報から特定される。ユーザ情報は、例えば、情報処理端末102と対応付けて、メモリ202、ディスク204などの記憶装置に記憶されている。
具体的には、例えば、決定部704は、サービス種別テーブル130を参照して、取得された選択情報に含まれるサービス名から、ウェブサービスSiの種別を特定する。例えば、選択情報に含まれるサービス名が「残高照会」の場合、ウェブサービスSiの種別「同期処理」が特定される。また、選択情報に含まれるサービス名が「住所変更」の場合、ウェブサービスSiの種別「非同期処理」が特定される。
例えば、ウェブサービスSiの種別が「同期処理」の場合、決定部704は、情報処理端末102への応答を、チャットボットとの会話形式手段で送信すると決定してもよい。この際、決定部704は、例えば、ウェブサービスSiの進捗状況が「処理結果を受信」などの正常に処理が行われたことを示す場合に、チャットボットとの会話形式手段で送信すると決定してもよい。
また、ウェブサービスSiの種別が「非同期処理」の場合、決定部704は、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段で送信すると決定してもよい。この際、決定部704は、例えば、ウェブサービスSiの進捗状況が「処理依頼済み」などの正常に処理依頼が行われたことを示す場合に、チャットボットとの会話形式とは異なる他の手段で送信すると決定してもよい。
また、ウェブサービスSiの種別が「同期処理」であっても、ネットワーク障害等のエラーにより処理結果を即座に得られない場合がある。この場合、情報処理装置101は、ネットワーク障害等のエラーが解消した後、処理結果を得ることができる。しかし、エラーが解消したときに、ユーザがチャットボットとの会話を終了していると、情報処理端末102への応答をチャットボットとの会話形式で送信できない。
このため、決定部704は、ウェブサービスSiの種別が「同期処理」であっても、ウェブサービスSiの進捗状況が「エラー(例えば、ネットワーク障害)」の場合には、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段で送信すると決定してもよい。
また、ウェブサービスSiの種別が「非同期処理」であっても、処理サーバ104の不具合(故障や障害等)により処理が正常に行われない場合は、その旨をユーザに伝えて、日を改めてウェブサービスSiを利用するよう促すことが好ましい。このため、決定部704は、ウェブサービスSiの種別が「非同期処理」であっても、ウェブサービスSiの進捗状況が「エラー(例えば、処理サーバ104の不具合)」の場合には、情報処理端末102への応答を、チャットボットとの会話形式手段で送信すると決定してもよい。
また、決定部704は、特定された処理部品群PGに基づいて、入力処理に対する応答処理を決定することにしてもよい。ここで、RPAの処理部品群PGによっては、「同期処理」または「非同期処理」のいずれの処理を行うものであるのかが、予め決められている場合がある。
この場合、RPAの処理部品群PGから、同期処理が行われるのか、非同期処理が行われるのかを特定することができる。そこで、決定部704は、特定された処理部品群PGが「同期処理」を行うものである場合、情報処理端末102への応答を、チャットボットとの会話形式手段で送信すると決定してもよい。また、決定部704は、特定された処理部品群PGが「非同期処理」を行うものである場合には、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段で送信すると決定してもよい。
応答部705は、決定された手段で情報処理端末102への応答を送信する。具体的には、例えば、応答部705は、チャットボットとの会話形式手段で送信すると決定された場合、チャットコントローラ(不図示)を介して、情報処理端末102への応答をチャットボットとの会話形式で送信する。この結果、情報処理端末102において、ウェブサービスSiの進捗状況や処理結果がチャットウィンドウに表示される。チャットウィンドウにおいて、ウェブサービスSiの進捗状況や処理結果は、チャットボットからのメッセージとして表示されることにしてもよい。
一例として、ウェブサービスSiを「残高照会(同期処理)」とすると、チャットウィンドウには、例えば、「残高照会が完了しました。ご確認ください。」といったウェブサービスSiの進捗状況を示すメッセージとともに、参照期間における預金口座の残高(処理結果)が表示される。
これにより、ユーザは、チャットボットと対話しながら、ウェブサービス「残高照会」を利用して、預金口座の残高を確認することができる。
また、応答部705は、他の手段で送信すると決定された場合、情報処理端末102への応答を、例えば、電子メールサービスやSMSで送信する。この場合、応答部705は、例えば、チャットコントローラ(不図示)を介して、所定のメッセージを、チャットボットとの会話形式で送信することにしてもよい。所定のメッセージは、情報処理端末102への応答を、電子メールサービスやSMSで送信する旨のメッセージである。
一例として、ウェブサービスSiを「住所変更(非同期処理)」とし、他の手段を「電子メールサービス」とする。この場合、まず、応答部705は、チャットボットとの会話形式で、「ご依頼いただきましたお手続の結果につきましては、手続完了後に電子メールでお送りいたします。」などのメッセージを、情報処理端末102に送信する。
ウェブサービスSiを運用するシステムにおいて、処理依頼された「住所変更」が完了すると、例えば、処理サーバ104から処理部品群PG(例えば、RPA制御部crまたはロボットrb)に、その旨が通知される。処理部品群PGは、処理依頼した「住所変更」の完了通知を受け取ると、情報処理装置101にウェブサービスSiの処理結果(例えば、住所変更が完了したことを示す状態通知)を送信する。
そして、応答部705は、RPAの処理部品群PG(例えば、RPA制御部cr)から、ウェブサービスSiの処理結果を受信すると、情報処理端末102への応答として電子メールを送信する。電子メールの宛先は、例えば、メモリ202、ディスク204などの記憶装置に記憶された、情報処理端末102に対応するユーザ情報から特定することができる。
ここで、図8を用いて、情報処理端末102のユーザ宛に送信される電子メールの具体例について説明する。
図8は、電子メールの具体例を示す説明図である。図8において、電子メール800は、情報処理端末102においてウェブサービス「住所変更」を利用したユーザに対して、住所変更完了を知らせる通知である。
電子メール800によれば、ユーザは、チャットボットと対話しながら利用したウェブサービス「住所変更」が非同期処理であっても、住所変更処理が完了したタイミングで、2020年1月1日に依頼した手続(住所変更)が完了したことを知ることができる。なお、電子メール800は、例えば、応答部705が、処理部品群PGに指示して、処理部品群PGから情報処理端末102のユーザ宛に送信させることにしてもよい。
また、応答部705は、ウェブサービスSiの種別が「同期処理」を示す場合、ウェブサービスSiに対応する処理サーバ104からの応答を受信したか否かに応じて決定されるメッセージを、チャットボットとの会話形式で情報処理端末102に送信することにしてもよい。
処理サーバ104からの応答は、例えば、ウェブサービスSiの進捗状況や処理結果である。情報処理装置101は、処理サーバ104からの応答を、例えば、RPAの処理部品群PGを介して受信する。しかし、ネットワーク障害等のエラーにより、処理サーバ104からの応答を規定時間内(例えば、数分以内)に受信できない場合がある。
このため、応答部705は、例えば、ウェブサービスSiの種別が「同期処理」を示す場合に、処理サーバ104からの応答を規定時間内に受信していないときは、「ウェブサービスの不具合により処理が正常に行われませんでした。」などのメッセージを、チャットボットとの会話形式で送信することにしてもよい。
この際、ウェブサービスSiの進捗状況が「エラー(例えば、ネットワーク障害)」のため、情報処理端末102への応答を、電子メールサービス等で送信すると決定されている場合がある。この場合、応答部705は、さらに、「ご依頼いただきましたお手続の結果につきましては、処理結果を受信次第、電子メールでお送りいたします。」などのメッセージを、チャットボットとの会話形式で送信することにしてもよい。そして、応答部705は、RPAの処理部品群PGから、ウェブサービスSiの処理結果を受信すると、情報処理端末102への応答として、電子メール(ウェブサービスSiの処理結果を含む)を送信する。
また、応答部705は、ウェブサービスSiの種別が「同期処理」を示す場合に、処理サーバ104からの応答を規定時間内に受信したときは、「処理が正常に行われました。」などのメッセージを処理結果とともに、チャットボットとの会話形式で送信することにしてもよい。
また、処理サーバ104の不具合(故障、障害等)により、ウェブサービスSiの種別が「非同期処理」のときに、チャットボットとの会話形式手段で送信すると決定される場合がある。この場合、応答部705は、情報処理端末102への応答として、「処理サーバの不具合により、現在処理を実行できない状態です。日を改めてサービスを利用するようお願いいたします。」などのメッセージを、チャットボットとの会話形式で送信することにしてもよい。
また、ウェブサービスSiの種別が「非同期処理」の場合に、入力エラーにより処理が正常に行われないことがある。この場合、応答部705は、例えば、その旨をユーザに伝えて、ウェブサービスSiの利用を最初からやり直すよう促すメッセージを、チャットボットとの会話形式で送信することにしてもよい。
なお、入力情報に個人情報等が含まれる場合は、入力情報を暗号化することにしてもよい。入力情報の暗号化には、例えば、公開鍵暗号方式を用いることができる。より具体的には、例えば、情報処理端末102が公開鍵を用いて入力情報を暗号化し、RPAの処理部品群PG(例えば、ロボットrb)が秘密鍵を用いて、暗号化された入力情報を復号する。これにより、入力情報に含まれる個人情報等が平文で送受信されるのを防ぐことができる。
(サービス連携システム100の動作例)
つぎに、図9および図10を用いて、サービス連携システム100の動作例について説明する。ここでは、情報処理装置101の各機能部を、チャットボットbtのサービス連携機能scにより実現する場合を例に挙げて説明する。
図9は、サービス連携システム100の動作例を示す説明図である。図10は、入力処理の一実施例を示す説明図である。図9において、チャットボットbtのサービス連携機能scは、情報処理端末102から、チャットウィンドウ600において選択されたウェブサービスSiの選択情報および入力情報を受け付ける。
サービス連携機能scは、項目読替テーブル140を参照して、受け付けた入力情報が、ウェブサービスSiにおけるいずれの入力項目に対応するかを特定する。サービス連携機能scは、ウェブサービスSiに対応するRPAの処理部品群PGを用いて、特定した入力項目に対する入力情報の入力処理を実行する。
ここでは、チャットウィンドウ600において、ウェブサービス「残高照会」が選択され、各入力項目(chat_userid、chat_refFrom、chat_refTo)についての各入力情報が入力された場合を想定する。
この場合、サービス連携機能scは、項目読替テーブル140を参照して、各入力情報に含まれるチャットボットでの入力項目の変数名を、ウェブページでの入力項目の変数名に変換する。例えば、チャットボットでの入力項目の変数名「chat_userid」は、ウェブページでの入力項目の変数名「userid」に変換される。チャットボットでの入力項目の変数名「chat_refFrom」は、ウェブページでの入力項目の変数名「kikanFrom」に変換される。チャットボットでの入力項目の変数名「chat_refTo」は、ウェブページでの入力項目の変数名「kikanTo」に変換される。
サービス連携機能scは、変換後の変数名を含む各入力情報(userid「aaaaa●●●」、kikanFrom「2019/01/01」およびkikanTo「2019/12/31」)を、RPAの処理部品群PGのRPA制御部crに送信する。RPAの処理部品群PGのロボットrbは、RPA制御部crの制御に従って、ウェブサービス「残高照会」に対応するウェブページwpを開いて、入力項目に対する情報の入力を行う。
具体的には、例えば、まず、ロボットrbは、ウェブサービス「残高照会」に対応するウェブページwp1を開いて、入力項目useridに対する情報「aaaaa●●●」の入力を行い、ログインボタンb1を選択する。この結果、処理サーバ104において、userid「aaaaa●●●」に基づくログイン処理が行われ、認証OKの場合に、ウェブページwp2が開かれる。
つぎに、ロボットrbは、ウェブページwp2において、入力項目kikanFromに対する情報「2019/01/01」の入力を行うとともに、入力項目kikanToに対する情報「2019/12/31」の入力を行い、照会ボタンb2を選択する。この結果、処理サーバ104において、kikanFrom「2019/01/01」およびkikanTo「2019/12/31」に基づく残高照会が行われる。
RPA制御部crは、ロボットrbが処理サーバ104からウェブサービス「残高照会」の処理結果を受信すると、その処理結果をチャットボットbtのサービス連携機能scに送信する。サービス連携機能scは、RPA制御部crからウェブサービス「残高照会」の処理結果を受信する。
サービス連携機能scは、ウェブサービス「残高照会」の処理結果を受信すると、情報処理端末102への応答を、チャットボットとの会話形式手段、または、チャットボットとの会話形式とは異なる他の手段(例えば、電子メールサービス)のいずれの手段で送信するかを決定する。
ここでは、ウェブサービス「残高照会」の種別が「同期処理」であり、かつ、ウェブサービス「残高照会」の進捗状況が「処理結果を受信」のため、チャットボットとの会話形式手段で送信すると決定される。この場合、サービス連携機能scは、チャットコントローラ(不図示)を介して、ウェブサービス「残高照会」の処理結果を、チャットボットbtとの会話形式で送信する。
(情報処理装置101のサービス連携処理手順)
つぎに、図11~図13を用いて、情報処理装置101のサービス連携処理手順について説明する。
図11~図13は、情報処理装置101のサービス連携処理手順の一例を示すフローチャートである。図11のフローチャートにおいて、まず、情報処理装置101は、情報処理端末102からウェブサービスSiの選択情報を受信したか否かを判断する(ステップS1101)。ウェブサービスSiの選択情報は、情報処理端末102におけるチャットボットとの会話形式でウェブサービスS1~Snの中から選択されたウェブサービスSiを特定する情報である。
ここで、情報処理装置101は、ウェブサービスSiの選択情報を受信するのを待つ(ステップS1101:No)。情報処理装置101は、ウェブサービスSiの選択情報を受信した場合(ステップS1101:Yes)、サービス種別テーブル130を参照して、受信した選択情報に基づいて、ウェブサービスSiの種別を特定する(ステップS1102)。
つぎに、情報処理装置101は、情報処理端末102からウェブサービスSiに対応する入力情報を受信したか否かを判断する(ステップS1103)。ウェブサービスSiに対応する入力情報は、情報処理端末102におけるチャットボットとの会話形式で入力されたウェブサービスSiに対応する情報である。
ここで、情報処理装置101は、ウェブサービスSiに対応する入力情報を受信するのを待つ(ステップS1103:No)。情報処理装置101は、ウェブサービスSiに対応する入力情報を受信した場合(ステップS1103:Yes)、項目読替テーブル140を参照して、ウェブサービスSiについて、受信した入力情報が、ウェブサービスSiに対応するウェブページのいずれの入力項目に対応するかを特定する(ステップS1104)。
そして、情報処理装置101は、入力情報に対応するチャットウィンドウでの入力項目の変数名を、特定したウェブページでの入力項目の変数名に変換する(ステップS1105)。つぎに、情報処理装置101は、特定したウェブサービスSiの種別が同期処理または非同期処理のいずれであるかを判断する(ステップS1106)。
ここで、ウェブサービスSiの種別が非同期処理の場合(ステップS1106:非同期処理)、情報処理装置101は、図12に示すステップS1201に移行する。一方、ウェブサービスSiの種別が同期処理の場合(ステップS1106:同期処理)、情報処理装置101は、図13に示すステップS1301に移行する。
なお、情報処理装置101は、情報処理端末102からウェブサービスSiの選択情報およびウェブサービスSiに対応する入力情報を一括して受信することにしてもよい。また、ウェブサービスSiに対応する入力情報が複数存在する場合は、例えば、ステップS1103において、情報処理装置101は、ウェブサービスSiに対応する複数の入力情報を受信するのを待つことにしてもよい。
図12のフローチャートにおいて、まず、情報処理装置101は、ウェブサービスSiに対応するRPAの処理部品群PGを特定する(ステップS1201)。つぎに、情報処理装置101は、特定したRPAの処理部品群PGを起動する(ステップS1202)。
そして、情報処理装置101は、起動したRPAの処理部品群PGと情報連携して、変換後の入力項目の変数名を含む入力情報を送信する(ステップS1203)。つぎに、情報処理装置101は、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段で送信すると決定する(ステップS1204)。
そして、情報処理装置101は、チャットボットとの会話形式とは異なる他の手段で処理結果を送信する旨のメッセージをチャットウィンドウに表示して(ステップS1205)、本フローチャートによる一連の処理を終了する。
これにより、ウェブサービスSiの種別が「非同期処理」の場合は、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段(例えば、電子メールサービス等)で送信することができる。例えば、情報処理装置101は、ステップS1205のあと、RPAの処理部品群PGから処理結果を受信した場合は、受信した処理結果を、電子メールサービスを利用して情報処理端末102のユーザ宛に送信する。
なお、RPAの処理部品群PGと情報連携した結果、処理サーバ104の故障等により処理が正常に行われない場合がある。この場合、ステップS1204において、情報処理装置101は、情報処理端末102への応答を、チャットボットとの会話形式手段で送信すると決定してもよい。そして、情報処理装置101は、処理サーバ104が故障のため、日を改めてウェブサービスSiを利用するよう促すメッセージをチャットウィンドウに表示することにしてもよい。また、ステップS1204において、情報処理装置101は、例えば、特定したRPAの処理部品群PGに基づいて、チャットボットとの会話形式とは異なる他の手段で送信すると決定してもよい。
図13のフローチャートにおいて、まず、情報処理装置101は、ウェブサービスSiに対応するRPAの処理部品群PGを特定する(ステップS1301)。つぎに、情報処理装置101は、特定したRPAの処理部品群PGを起動する(ステップS1302)。
そして、情報処理装置101は、起動したRPAの処理部品群PGと情報連携して、変換後の入力項目の変数名を含む入力情報を送信する(ステップS1303)。つぎに、情報処理装置101は、RPAの処理部品群PGから応答があったか否かを判断する(ステップS1304)。
ここで、処理部品群PGから応答があった場合(ステップS1304:Yes)、情報処理装置101は、情報処理端末102への応答を、チャットボットとの会話形式手段で送信すると決定する(ステップS1305)。そして、情報処理装置101は、チャットウィンドウに処理結果を表示して(ステップS1306)、本フローチャートによる一連の処理を終了する。
また、ステップS1304において、処理部品群PGから応答がない場合(ステップS1304:No)情報処理装置101は、RPAの処理部品群PGと情報連携してから規定時間が経過したか否かを判断する(ステップS1307)。ここで、規定時間が経過していない場合(ステップS1307:No)、情報処理装置101は、ステップS1304に戻る。
一方、規定時間が経過した場合(ステップS1307:Yes)、情報処理装置101は、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段で送信すると決定する(ステップS1308)。
そして、情報処理装置101は、チャットボットとの会話形式とは異なる他の手段で処理結果を送信する旨のメッセージをチャットウィンドウに表示して(ステップS1309)、本フローチャートによる一連の処理を終了する。
これにより、ウェブサービスSiの種別が「同期処理」の場合は、情報処理端末102への応答を、チャットボットとの会話形式で送信することができる。また、ウェブサービスSiの種別が「同期処理」の場合であっても、ネットワーク障害等により規定時間内に処理結果が得られない場合は、情報処理端末102への応答を、チャットボットとの会話形式とは異なる他の手段(例えば、電子メールサービス等)で送信することができる。この場合、情報処理装置101は、ステップS1309のあと、RPAの処理部品群PGから処理結果を受信した場合は、受信した処理結果を、電子メールサービスを利用して情報処理端末102のユーザ宛に送信する。また、ステップS1305において、情報処理装置101は、例えば、特定したRPAの処理部品群PGに基づいて、チャットボットとの会話形式手段で送信すると決定してもよい。
以上説明したように、実施の形態にかかる情報処理装置101によれば、情報処理端末102におけるチャットボットとの会話形式でウェブサービスS1~Snの中から選択されたウェブサービスSiの選択情報、および、チャットボットとの会話形式で入力されたウェブサービスSiに対応する入力情報を取得することができる。また、情報処理装置101によれば、取得した入力情報が、ウェブサービスSiにおけるいずれの入力項目に対応するかを特定し、特定した入力項目に対する入力情報の入力処理を実行して、入力項目に対する入力情報の入力に基づくウェブサービスSiの進捗状況を特定することができる。また、情報処理装置101によれば、取得した選択情報から特定されるウェブサービスSiの種別と、特定した進捗状況とに応じて、情報処理端末102への進捗状況の情報を含む応答を、チャットボットとの会話形式手段、または、チャットボットとの会話形式とは異なる他の手段のいずれの手段で送信するかを決定することができる。他の手段は、例えば、電子メールサービス、SMS、自動電話サービスなどである。そして、情報処理装置101によれば、決定した手段で情報処理端末102への応答を送信することができる。
これにより、ウェブサービスSiの種別を考慮して、情報処理端末102へのウェブサービスSiの進捗状況の情報を含む応答を、チャットボットとの会話形式手段、または、他の手段(例えば、電子メールサービス)のいずかの手段で送信することができる。
また、情報処理装置101によれば、ウェブサービスSiの種別が、同期処理または非同期処理のいずれであるかを特定することができる。
これにより、ウェブサービスSiが、即座に処理結果が得られる「同期処理」なのか、即座には処理結果が得られない「非同期処理」なのかを考慮して、情報処理端末102への応答を、チャットボットとの会話形式手段で送信するのか、他の手段(例えば、電子メールサービス)で送信するのかを決定することができる。
例えば、情報処理装置101は、ウェブサービスSiの種別が「同期処理」を示す場合に、ウェブサービスSiの処理結果を規定時間内に取得したときは、情報処理端末102への応答を、チャットボットとの会話形式手段で送信すると決定することができる。一方、情報処理装置101は、ウェブサービスSiの種別が「同期処理」を示す場合であっても、ウェブサービスSiの処理結果を規定時間内に取得できなかったときは、情報処理端末102への応答を、他の手段(例えば、電子メールサービス)で送信すると決定することができる。
また、情報処理装置101は、ウェブサービスSiの種別が「非同期処理」を示す場合、情報処理端末102への応答を、他の手段(例えば、電子メールサービス)で送信すると決定することができる。一方、情報処理装置101は、ウェブサービスSiの種別が「非同期処理」を示す場合であっても、処理サーバ104の不具合(故障や障害等)により処理が正常に行われないときは、情報処理端末102への応答(例えば、日を改めてウェブサービスSiを利用するよう促すメッセージ)を、チャットボットとの会話形式手段で送信すると決定することができる。
また、情報処理装置101は、ウェブサービスSiの種別が「同期処理」を示す場合、ウェブサービスSiに対応する処理サーバ104からの応答を受信したか否かに応じて決定されるメッセージを、チャットボットとの会話形式で情報処理端末102に送信することができる。
これにより、例えば、ネットワーク障害等のエラーにより、処理サーバ104からの応答を規定時間内に受信できない場合に、その旨をチャットボットとの会話形式でユーザに通知することができる。
また、情報処理装置101は、ウェブサービスSiに対応する入力情報の入力処理を、ウェブサービスSiに対応するRPAの処理部品群PGを用いて実行することができる。
これにより、情報処理端末102においてチャットボットとの会話形式で入力された情報のウェブページへの入力作業を自動化することができる。
また、情報処理装置101は、ウェブサービスSiに対応する入力情報の入力処理を実行するにあたり、入力情報に含まれるチャットボットでの入力項目の変数名を、ウェブサービスSiに対応するウェブページでの入力項目の変数名に変換することができる。
これにより、RPAの処理部品群PGにおいて入力項目の変数名の読み替えを行う必要がないため、既存のRPAの処理部品群PGに手を加えることなく、ウェブページへの入力作業を自動化することができる。
また、情報処理装置101は、他の手段(例えば、電子メールサービス)で送信すると決定した場合、情報処理端末102への応答を他の手段で送信する旨のメッセージを情報処理端末102に送信することができる。
これにより、ウェブサービスSiの処理結果は、電子メール等で後日送られてくることをユーザに知らせることができる。
また、情報処理装置101は、情報処理端末102においてチャットボットとの会話形式で入力された情報を取得し、取得した情報をチャットボットに対応するウェブサービスSiの入力項目に入力処理する処理部品群PGを特定することができる。チャットボットに対応するウェブサービスSiは、例えば、チャットボットとの会話形式で選択されたウェブサービスである。そして、情報処理装置101によれば、特定した処理部品群PGに基づいて、入力処理に対する応答処理を決定し、決定した応答処理により情報処理端末102へ応答することができる。
これにより、例えば、既存のRPA製品(処理部品群PG)の機能に応じて、情報処理端末102への応答を、チャットボットとの会話形式手段、または、他の手段(例えば、電子メールサービス)のいずれの手段で送信するのかを決定することができる。
これらのことから、実施の形態にかかるサービス連携システム100および情報処理装置101によれば、ウェブサービスSiを利用するにあたり、情報処理端末102から入力しやすいインターフェースを提供しつつ、ウェブサービスSiの種別に応じた制御を実現することができる。これにより、ウェブサービスSiを提供する既存システムを変更することなく、情報処理端末102からのウェブサービスSiの利便性を向上させることができる。また、情報処理端末102では、チャット用のアプリケーションをインストールするだけで、様々なウェブサービスを利用可能となるため、個々のウェブサービスを利用するために専用のアプリケーションをインストールする手間を省くことができる。
なお、本実施の形態で説明したサービス連携方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本サービス連携プログラムは、ハードディスク、フレキシブルディスク、CD-ROM、DVD、USBメモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本サービス連携プログラムは、インターネット等のネットワークを介して配布してもよい。
また、本実施の形態で説明した情報処理装置101は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けICやFPGAなどのPLD(Programmable Logic Device)によっても実現することができる。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)情報処理端末におけるチャットボットとの会話形式で複数のウェブサービスの中から選択されたいずれかのウェブサービスの選択情報、および、前記チャットボットとの会話形式で入力された前記いずれかのウェブサービスに対応する入力情報を取得し、
取得した前記入力情報が、前記いずれかのウェブサービスにおけるいずれの入力項目に対応するかを特定し、
特定した前記入力項目に対する前記入力情報の入力処理を実行して、前記入力項目に対する前記入力情報の入力に基づく前記いずれかのウェブサービスの進捗状況を特定し、
取得した前記選択情報から特定される前記いずれかのウェブサービスの種別と、特定した前記進捗状況とに応じて、前記情報処理端末への前記進捗状況の情報を含む応答を、前記チャットボットとの会話形式手段、または、前記チャットボットとの会話形式とは異なる他の手段のいずれの手段で送信するかを決定し、
決定した前記手段で前記応答を送信する、
処理をコンピュータに実行させることを特徴とするサービス連携プログラム。
(付記2)前記種別は、前記いずれかのウェブサービスが同期処理または非同期処理のいずれであるかを示す情報である、ことを特徴とする付記1に記載のサービス連携プログラム。
(付記3)前記種別が同期処理を示す場合、前記いずれかのウェブサービスに対応するサーバからの応答を受信したか否かに応じて決定されるメッセージを、前記チャットボットとの会話形式で前記情報処理端末に送信する、ことを特徴とする付記2に記載のサービス連携プログラム。
(付記4)前記入力情報の入力処理は、前記いずれかのウェブサービスに対応するRPA(Robotic Process Automation)の処理部品群を用いて実行される、ことを特徴とする付記1に記載のサービス連携プログラム。
(付記5)前記入力情報の入力処理は、前記入力情報に含まれるチャットボットでの入力項目の変数名を、前記いずれかのウェブサービスに対応するウェブページでの入力項目の変数名に変換する処理を含む、ことを特徴とする付記4に記載のサービス連携プログラム。
(付記6)前記他の手段で送信すると決定した場合、前記応答を前記他の手段で送信する旨のメッセージを前記情報処理端末に送信する、ことを特徴とする付記1に記載のサービス連携プログラム。
(付記7)前記他の手段は、電子メールサービス、SMS(Short Message Service)および自動電話サービスのいずれかである、ことを特徴とする付記1に記載のサービス連携プログラム。
(付記8)情報処理端末においてチャットボットとの会話形式で入力された情報を取得し、
取得した前記情報を前記チャットボットに対応するウェブサービスの入力項目に入力処理する処理部品群を特定し、
特定した前記処理部品群に基づいて、前記入力処理に対する応答処理を決定し、
決定した前記応答処理により前記情報処理端末へ応答する、
処理をコンピュータに実行させることを特徴とするサービス連携プログラム。
(付記9)情報処理端末におけるチャットボットとの会話形式で複数のウェブサービスの中から選択されたいずれかのウェブサービスの選択情報、および、前記チャットボットとの会話形式で入力された前記いずれかのウェブサービスに対応する入力情報を取得し、
取得した前記入力情報が、前記いずれかのウェブサービスにおけるいずれの入力項目に対応するかを特定し、
特定した前記入力項目に対する前記入力情報の入力処理を実行して、前記入力項目に対する前記入力情報の入力に基づく前記いずれかのウェブサービスの進捗状況を特定し、
取得した前記選択情報から特定される前記いずれかのウェブサービスの種別と、特定した前記進捗状況とに応じて、前記情報処理端末への前記進捗状況の情報を含む応答を、前記チャットボットとの会話形式手段、または、前記チャットボットとの会話形式とは異なる他の手段のいずれの手段で送信するかを決定し、
決定した前記手段で前記応答を送信する、
処理をコンピュータが実行することを特徴とするサービス連携方法。
(付記10)情報処理端末においてチャットボットとの会話形式で入力された情報を取得し、
取得した前記情報を前記チャットボットに対応するウェブサービスの入力項目に入力処理する処理部品群を特定し、
特定した前記処理部品群に基づいて、前記入力処理に対する応答処理を決定し、
決定した前記応答処理により前記情報処理端末へ応答する、
処理をコンピュータが実行することを特徴とするサービス連携方法。
(付記11)情報処理端末におけるチャットボットとの会話形式で複数のウェブサービスの中から選択されたいずれかのウェブサービスの選択情報、および、前記チャットボットとの会話形式で入力された前記いずれかのウェブサービスに対応する入力情報を取得し、
取得した前記入力情報が、前記いずれかのウェブサービスにおけるいずれの入力項目に対応するかを特定し、
特定した前記入力項目に対する前記入力情報の入力処理を実行して、前記入力項目に対する前記入力情報の入力に基づく前記いずれかのウェブサービスの進捗状況を特定し、
取得した前記選択情報から特定される前記いずれかのウェブサービスの種別と、特定した前記進捗状況とに応じて、前記情報処理端末への前記進捗状況の情報を含む応答を、前記チャットボットとの会話形式手段、または、前記チャットボットとの会話形式とは異なる他の手段のいずれの手段で送信するかを決定し、
決定した前記手段で前記応答を送信する、
制御部を有することを特徴とする情報処理装置。
(付記12)情報処理端末においてチャットボットとの会話形式で入力された情報を取得し、
取得した前記情報を前記チャットボットに対応するウェブサービスの入力項目に入力処理する処理部品群を特定し、
特定した前記処理部品群に基づいて、前記入力処理に対する応答処理を決定し、
決定した前記応答処理により前記情報処理端末へ応答する、
制御部を有することを特徴とする情報処理装置。