(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022047624
(43)【公開日】2022-03-25
(54)【発明の名称】コンピュータシステムおよび接続方法
(51)【国際特許分類】
G06Q 50/06 20120101AFI20220317BHJP
G06F 13/00 20060101ALI20220317BHJP
【FI】
G06Q50/06
G06F13/00 540A
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2020153511
(22)【出願日】2020-09-14
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVASCRIPT
(71)【出願人】
【識別番号】397042218
【氏名又は名称】株式会社両毛システムズ
(74)【代理人】
【識別番号】110002066
【氏名又は名称】特許業務法人筒井国際特許事務所
(72)【発明者】
【氏名】金谷 陽介
(72)【発明者】
【氏名】木村 圭介
(72)【発明者】
【氏名】福田 捷平
(72)【発明者】
【氏名】劉 芳
(72)【発明者】
【氏名】岡田 亮
(72)【発明者】
【氏名】竹内 健吾
【テーマコード(参考)】
5B084
5L049
【Fターム(参考)】
5B084AA01
5B084AA12
5B084AA26
5B084AA29
5B084AA30
5B084AB04
5B084AB11
5B084AB18
5B084AB31
5B084BA07
5B084BB02
5B084BB03
5B084BB16
5B084CB12
5B084CB23
5B084CF12
5B084DB02
5B084DB08
5B084DC02
5B084DC03
5B084DC06
5B084DC18
5B084DC28
5L049CC06
(57)【要約】
【課題】各顧客システムが各外部サービスを利用する場合に、顧客システムのセキュリティの確保とともにコストや手間を低減できる技術を提供する。
【解決手段】実施の形態のコンピュータシステムは、複数の顧客システム2と、外部サービスを提供する複数の外部事業者システム(外部システム3)との間に介在し、クラウドコンピューティングに基づいたサービスを提供するコンピュータ(サーバ10)を備える。コンピュータ(サーバ10)には、顧客システム2毎に、顧客システム2が利用する1つ以上の外部システム3の外部サービス、および外部サービス毎のAPI接続方式が設定される。コンピュータ(サーバ10)は、顧客システム2からのアクセスを受けた場合、設定に基づいて、顧客システム2が利用する外部システム3の外部サービスへAPI接続方式でアクセスし、外部サービスからの応答を取得して顧客システム2に送信する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数の顧客システムと、外部サービスを提供する複数の外部事業者システムとの間に介在し、クラウドコンピューティングに基づいたサービスを提供するコンピュータを備えるコンピュータシステムであって、
前記コンピュータには、顧客システム毎に、顧客システムが利用する1つ以上の外部事業者システムの外部サービス、および前記外部サービス毎のAPI接続方式が設定され、
前記コンピュータは、前記顧客システムからのアクセスを受けた場合、前記設定に基づいて、前記顧客システムが利用する前記外部事業者システムの前記外部サービスへ前記API接続方式でアクセスし、前記外部サービスからの応答を取得して前記顧客システムに送信する、
コンピュータシステム。
【請求項2】
請求項1記載のコンピュータシステムにおいて、
前記API接続方式は、少なくとも、WebSocket方式と、コールバック方式とを有する、
コンピュータシステム。
【請求項3】
請求項1記載のコンピュータシステムにおいて、
前記顧客システムに備えるクライアント端末には、前記事業者の前記コンピュータとの間で通信して機能を利用するための、ソフトウェアプログラムに基づいた専用ツールを備え、
前記クライアント端末は、前記顧客システムのオペレータによる前記専用ツールの操作に基づいて、前記コンピュータにアクセスし、前記設定の確認のための画面を表示する、
コンピュータシステム。
【請求項4】
請求項1記載のコンピュータシステムにおいて、
前記コンピュータは、リバースプロキシおよびプロキシを備えるWebサーバと、WebAPIを備えるアプリケーションサーバと、DBサーバとを有し、
前記アプリケーションサーバは、前記外部事業者システムの前記外部サービスから前記API接続方式でデータを取得した場合、前記データを前記DBサーバのデータベースに格納し、
前記顧客システムは、前記コンピュータに対し、定期的に問合せのアクセスを行い、
前記コンピュータは、前記問合せのアクセスに対し、前記データベースに前記顧客システムの前記データがある場合には前記データを読み出して応答として前記顧客システムに送信する、
コンピュータシステム。
【請求項5】
請求項1記載のコンピュータシステムにおいて、
前記顧客システムは、オペレータと作業者との間で、作業依頼および作業完了報告のやり取りを含む業務を管理するシステムであり、
前記顧客システムが前記業務のために利用する前記外部事業者システムの前記外部サービスとして、SNS・チャットサービスを設定可能であり、
前記作業依頼および作業完了報告のやり取りは、前記SNS・チャットサービス上での通信として処理される、
コンピュータシステム。
【請求項6】
請求項5記載のコンピュータシステムにおいて、
前記顧客システムは、エネルギーインフラ事業者の基幹システムであり、
前記作業者は、利用者のメータの検針や保守を行う保守員であり、
前記作業依頼は、前記利用者の前記メータの検針や保守に関する作業依頼である、
コンピュータシステム。
【請求項7】
請求項1記載のコンピュータシステムにおいて、
前記顧客システムは、エネルギーインフラ事業者の基幹システムであり、オペレータと作業者との間で、作業依頼および作業完了報告のやり取りを含む業務を管理するシステムであり、
前記作業者は、利用者のメータの検針や保守を行う保守員であり、
前記作業依頼は、前記利用者の前記メータの検針や保守に関する作業依頼であり、
前記複数の外部事業者のうちの少なくとも1つの外部事業者として、前記メータに関する外部サービスを提供するメータ事業者を有し、
前記顧客システムが前記業務のために利用する前記外部事業者システムの前記外部サービスとして、前記メータ事業者の前記外部サービスを設定可能であり、
前記作業依頼および作業完了報告のやり取りは、前記メータ事業者の前記外部サービスを経由する通信として処理される、
コンピュータシステム。
【請求項8】
請求項7記載のコンピュータシステムにおいて、
前記複数の外部事業者のうちの少なくとも1つの外部事業者として、SNS・チャットサービスを提供する外部事業者を有し、
前記顧客システムが前記業務のために利用する前記外部事業者システムの前記外部サービスとして、さらに、前記SNS・チャットサービスを設定可能であり、
前記作業依頼および作業完了報告のやり取りは、前記メータ事業者の前記外部サービスを経由し、かつ前記SNS・チャットサービス上での通信として処理される、
コンピュータシステム。
【請求項9】
複数の顧客システムと、外部サービスを提供する複数の外部事業者システムとの間に介在し、クラウドコンピューティングに基づいたサービスを提供するコンピュータを備えるコンピュータシステムにおける接続方法であって、
前記コンピュータに、顧客システム毎に、顧客システムが利用する1つ以上の外部事業者システムの外部サービス、および前記外部サービス毎のAPI接続方式が設定されるステップと、
前記コンピュータが、前記顧客システムからのアクセスを受けた場合、前記設定に基づいて、前記顧客システムが利用する前記外部事業者システムの前記外部サービスへ前記API接続方式でアクセスし、前記外部サービスからの応答を取得して前記顧客システムに送信するステップと、
を有する、接続方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理や通信に係わるコンピュータシステム等の技術に関し、特に、顧客の組織のシステムと、各種のアプリケーションサービス等を提供する外部事業者のシステムとの間に介在する事業者のクラウドコンピューティングシステム等の技術に関する。
【背景技術】
【0002】
情報処理や通信に係わる事業者は、自治体やインフラ事業者等の団体、会社等の組織を顧客として、顧客の業務処理の一部を請け負う場合や、顧客の業務処理を支援するサービスを提供する場合がある。事業者は、例えばインターネット上にデータセンタやクラウドコンピューティングシステム等のシステム(事業者システムと記載する場合がある)を構築する。事業者システムのサーバ等のコンピュータは、顧客の組織のシステム(顧客システムと記載する場合がある)におけるLAN(言い換えると内部ネットワークや閉域網)上のコンピュータからのアクセスを受け、処理を行って結果を応答する。
【0003】
顧客システムのLAN上のコンピュータは、業務処理のために、インターネット等の外部ネットワーク上に存在する外部事業者のシステム(外部システムと記載する場合がある)によるサービス(外部サービスと記載する場合がある)を利用したい場合がある。例えば、顧客システムは、アプリケーション・サービス・プロバイダ(ASP)が提供する各種のアプリケーションサービスを利用したい場合がある。顧客システムは、外部サービスの利用によって、例えば業務処理の効率または品質を高める。例えば、顧客がエネルギーインフラのガス事業者である場合、業務として、需要家のガス使用量の検針や料金請求等がある。外部サービスの例としては、決済代行、文書作成、SNS・チャットサービス等の各種が挙げられる。ガス事業者の場合、外部サービスの例としては、ガスメータ事業者によるガスメータの自動検針等のサービスも挙げられる。
【0004】
クラウドコンピューティングシステム等に係わる先行技術例としては、特許第6225283号公報(特許文献1)が挙げられる。特許文献1には、「閉域ネットワーク接続装置」等として、「専用の接続機器や手続などを必要とすることなく、閉域ネットワークと外部ネットワークに接続された外部装置との接続を確立する」旨が記載されている。
【0005】
ガス事業者等のシステムに係わる先行技術例としては、特開2016-81073号公報(特許文献2)が挙げられる。特許文献2には、「ガス使用状況管理方法およびプログラム」として、「宅内、宅外のいずれにおいてもガス使用状況(ガス使用量、ガス請求額等)を、簡単かつ見易い形態で確認可能」である旨が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特許第6225283号公報
【特許文献2】特開2016-81073号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記顧客システムのLAN上のコンピュータが、外部ネットワーク上の外部事業者システムのサーバ等による外部サービスを利用する場合を考える。その場合、一般に、そのコンピュータは、そのサーバが公開するアプリケーション・プログラミング・インタフェース(API)を通じてそのサーバにアクセスする。その場合、顧客システムのコンピュータは、API接続方式に応じて、IPアドレス等の情報を外部公開する必要がある場合がある。その外部公開にはセキュリティリスクがある。すなわち、外部からそのコンピュータを通じて顧客システム内に不正アクセスされてデータが漏洩する等の恐れがある。
【0008】
顧客システムは、その外部公開の点に関するセキュリティの確保とともに、利用したい外部サービスのAPIに応じた実装が必要である。APIに応じた実装とは、例えばプログラムの設計や、ハードウェアの設置、および運用保守等がある。顧客は、そのような顧客システムの実装や運用保守に係わるコストや手間を要する。
【0009】
また、顧客システムは、複数のアプリケーション等の外部サービスを利用したい場合や、利用する外部サービスを変更したい場合には、それらに応じて、実装や改修に係わるコストや手間をさらに要する。外部サービスに対するAPI接続方式には、いくつかの種類があり、方式に応じた実装等が必要である。また、顧客は、利用する外部事業者の外部サービス毎に、利用の契約や設定が必要であり、そのための管理や作業に係わるコストや手間も大きい。
【0010】
また、クラウドコンピューティングによるサービスを提供する事業者は、複数の顧客の各々の顧客システムと、複数の外部事業者の各々の外部システムの外部サービスとの間に介在する。顧客に応じて利用したい外部サービスは様々である。従来の事業者システムは、顧客システム毎に異なる各種の外部サービスの利用の要望に対し、対応する場合、個別に各外部サービスへの各API接続方式での接続が可能なように、各サーバ等の設備を設ける。このような構成は、非効率的な面があり、事業者システムの肥大化や複雑化も招き、事業者のコストや手間が大きい。
【0011】
本発明の目的は、顧客の業務処理等を支援する事業者のクラウドコンピューティングシステム等の技術に関して、各顧客システムが各外部サービスを利用する場合に、顧客システムのセキュリティの確保とともにコストや手間を低減できる技術を提供することである。
【課題を解決するための手段】
【0012】
本発明のうち代表的な実施の形態は、以下に示す構成を有する。実施の形態のコンピュータシステムは、複数の顧客システムと、外部サービスを提供する複数の外部事業者システムとの間に介在し、クラウドコンピューティングに基づいたサービスを提供するコンピュータを備えるコンピュータシステムであって、前記コンピュータには、顧客システム毎に、顧客システムが利用する1つ以上の外部事業者システムの外部サービス、および前記外部サービス毎のAPI接続方式が設定され、前記コンピュータは、前記顧客システムからのアクセスを受けた場合、前記設定に基づいて、前記顧客システムが利用する前記外部事業者システムの前記外部サービスへ前記API接続方式でアクセスし、前記外部サービスからの応答を取得して前記顧客システムに送信する。
【発明の効果】
【0013】
本発明のうち代表的な実施の形態によれば、顧客の業務処理等を支援する事業者のクラウドコンピューティングシステム等の技術に関して、各顧客システムが各外部サービスを利用する場合に、顧客システムのセキュリティの確保とともにコストや手間を低減できる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施の形態1のコンピュータシステムを含む、システムの全体概要構成を示す。
【
図2】実施の形態1で、特に事業者システムの構成例を示す。
【
図3】実施の形態1で、顧客と事業者との契約・設定に係わる構成例を示す。
【
図4】実施の形態1で、外部事業者と事業者との契約・設定に係わる構成例を示す。
【
図5】実施の形態1で、契約設定確認画面および契約設定情報の例を示す。
【
図6】実施の形態1で、ある顧客システムからある外部システムの外部サービスを利用する場合の通信等のシーケンスを示す。
【
図7】本発明の実施の形態2に関して、コールセンタ業務の構成例を示す。
【
図8】実施の形態2に対する比較例のシステムを示す。
【
図9】本発明の実施の形態2のコンピュータシステムの構成を示す。
【
図10】実施の形態2で、安全な通信の仕組みについての第1説明図を示す。
【
図11】実施の形態2で、安全な通信の仕組みについての第2説明図を示す。
【
図12】本発明の実施の形態3に関して、ガスメータ業務の構成例を示す。
【
図13】実施の形態3に対する比較例のシステムを示す。
【
図14】本発明の実施の形態3のコンピュータシステムの構成を示す。
【
図15】従来からあるAPI接続方式の例として、(A)第1API接続方式、(B)第2API接続方式、および(C)第3API接続方式を示す。
【発明を実施するための形態】
【0015】
<実施の形態1>
図1~
図6等を用いて、本発明の実施の形態1のコンピュータシステム等について説明する。実施の形態1の接続方法は、実施の形態1のコンピュータシステムで実行されるステップを有する方法である。
【0016】
本開示のコンピュータシステムは、各顧客システムからの各外部サービスの利用の要望に対し、各API接続方式での各外部サービスへの接続や連携ができるように、統一的に対応できるコンピュータの設備を設ける。このコンピュータシステムは、事業者のコンピュータを介して、複数の顧客システムと複数の外部システムの外部サービスとの間で多対多の関係で接続し、顧客システムからの外部サービスの利用に係わる各API接続方式での接続を制御する。また、このコンピュータシステムは、多対多の関係での利用に関する契約および設定を容易かつ柔軟に可能とする。顧客は、利用する外部サービスに応じた実装等が不要である。顧客は、顧客システムから各外部サービスの利用の際に、事業者システムを介して容易に利用でき、利用する外部サービスの変更も可能である。
【0017】
[1-1.システム]
図1は、実施の形態1のコンピュータシステムを含む、システム100の全体概要構成を示す。
図1のシステム100は、インターネットを含む通信網上において、複数の顧客システム2と、複数の外部システム3と、それらの間に介在する事業者システム1とを有する。事業者システム1は、顧客に対しクラウドコンピューティングシステムによるサービス等を提供する事業者によるコンピュータシステムである。顧客システム2は、顧客である団体や会社等の組織のコンピュータシステムである。外部システム3は、外部事業者システムであり、外部事業者が運営するコンピュータシステムである。外部事業者は、顧客および事業者から見て外部サービスを提供する事業者であり、例えばASPである。外部とは、顧客システム1を内部とした場合の外部である。
【0018】
実施の形態1のコンピュータシステムは、言い換えると、接続システムや通信システムである。実施の形態1のコンピュータシステムは、顧客システム2と外部システム3の外部サービスとの間でのAPI接続を含む接続を制御するシステムである。実施の形態1のコンピュータシステムは、主に、事業者システム1として実装されている。このコンピュータシステムは、構成要素として、顧客システム2のうちのクライアント端末20に実装される専用ツール21(
図2)を含む。事業者システム1は、言い換えると、クラウドコンピューティングシステムまたはコンピュータシステムである。事業者システム1は、インターネット上の特定の通信網に構成される。事業者システム1は、クラウドコンピューティングによるサービスによって顧客システム2の業務処理を支援する。事業者システム1は、各顧客および各外部事業者との間での契約・設定に関する管理を行う。事業者システム1は、契約・設定に基づいて、顧客システム2が業務処理のために外部システム3の外部サービスにアクセスする際に介在して接続を制御する。事業者システム1は、顧客からみた利用の選択肢となる複数の外部事業者の外部サービスに対応する実装を有し、それらの外部サービスの各API接続方式に対応する実装を有する。顧客は、契約・設定の際に、それらの選択肢の範囲から、利用する外部サービスを選択することができる。
【0019】
実施の形態1のコンピュータシステムは、事業者システム1内において、複数の顧客システム2の各クライアント端末20から複数の外部システム3の各サーバ30の外部サービスを利用する際に介在して通信・接続を制御する設備を有する。この設備は、特有のプログラムやデータベース(DB)等を含むサーバ10を含む。サーバ10は、言い換えるとクラウドサーバであり、WebAPI120やDB130を備える。サーバ10は、プログラム処理等に基づいて実現される所定の機能として、契約・設定管理機能、およびサービス監視機能等を有する。契約・設定管理は、顧客と事業者との間での契約および機能等の設定に関する管理と、外部事業者と事業者との間での契約および設定に関する管理とを含む。契約・設定管理は、顧客からの要望に応じて顧客が利用する機能や外部サービスを変更する設定変更を含む。サービス監視は、顧客システム2からのアクセスに応じて外部システム3の外部サービスにアクセスする際の監視とAPI接続制御とを含む。サーバ10は、複数の顧客システム2の各クライアント端末20からのHTTP/HTTPSプロトロコル等でのアクセスを受け付けて応答する部分と、複数の外部システム3のサーバ30へのアクセスを行って応答を得る部分とを含む。
【0020】
各顧客システム2は、例えば組織の業務処理を管理する基幹システムであり、LAN上に接続されるコンピュータとしてクライアント端末20やサーバ等を有する。本例では、複数の顧客システム2として、顧客システム2A,2B,……を有する。例えば、顧客Aの顧客システム2Aは、クライアント端末20Aを有する。顧客組織内の業務担当者等のオペレータOPは、クライアント端末20を操作して業務を行う。クライアント端末20は、外部システム3のサーバ30に対し、直接的には通信接続せず、事業者のサーバ10を介して利用する。なお、クライアント端末20に専用ツール21(
図2)がインストールされる形態とするが、これに限らず、顧客システム2内のサーバ等の装置に専用ツール21がインストールされ、そのサーバ等の装置が外部にアクセスする形態でもよい。
【0021】
各外部システム3は、外部サービスを提供するサーバ30等の設備を有する。サーバ30は、例えばWebAPIを備えるAPIサーバである。外部システム3は、サーバ30がAPIを外部公開し、外部(外部事業者からみた事業者システム1等)からのAPI接続に応じて外部サービスを提供する。本例では、複数の外部システム3として、外部システム3A,3B,……,3Nを有する。例えば、外部事業者Aの外部システムAは、サーバ30A(APIサーバA)を有し、サーバ30Aは、WebAPIによって所定の外部サービスであるサービスAを提供する。なお、外部システム3は、クラウドコンピューティングシステムであってもよい。
【0022】
外部サービスであるアプリケーションサービスの例は、Webによる情報提供、決済代行、文書作成、SNS・チャットサービス等の各種がある。SNS・チャットサービスは、グループウェアやメッセンジャーアプリの概念を含み、一対一または所定のグループのユーザ間で、インターネット電話またはテキストチャット等に基づいて、双方向のコミュニケーションを可能とするサービスである。SNS・チャットサービス上では、作業等の主題毎に、ユーザ間で、コメントやメッセージ等のやり取りが、時系列上での履歴として可視化および記録される。このようなSNS・チャットサービスの具体例は、LINE株式会社によるLINE(登録商標)等が挙げられる。
【0023】
事業者のサーバ10と外部事業者のサーバ30との間では、後述するが各種のAPI接続方式での接続が行われ得る。各実施の形態で扱うAPI接続方式は、少なくとも、WebSocket方式、およびコールバック方式を有する。
【0024】
なお、各コンピュータシステムは、1つ以上のサーバやPC等のコンピュータ、およびコンピュータで動作する回路またはプログラム等によって構成される。各コンピュータは、プロセッサ、メモリ、通信インタフェース、入出力インタフェース、およびそれらを相互に接続するバス等を備える。プロセッサは、CPU、ROM、RAM等で構成される。各コンピュータは、プロセッサによってメモリ上でプログラムに従った処理を実行することで、各機能や処理部を実現する。なお、各プログラムは、処理主体となるコンピュータに保持されていてもよいし、そのコンピュータの外部の装置、例えば通信網上のサーバ等の装置に保持されているプログラムを利用する形態でもよい。また、非一過性のコンピュータ読み取り可能な記録媒体に格納されているプログラムを利用する形態でもよい。クラウドコンピューティングの場合には、特に複数のコンピュータによって機能等が実現される。複数のコンピュータによって冗長構成や負荷分散等が実現されてもよい。
【0025】
[1-2.事業者システム]
図2は、実施の形態1で、事業者システム1等の構成を示し、特に
図1のサーバ10の詳細構成例を示す。インターネットを含む広域網である通信網500には、事業者システム1等が接続されている。
図2では、事業者システム1に接続されるシステムとしては、簡略的に、顧客Aの顧客システム2Aおよび外部事業者Aの外部システム3Aのみ示す。顧客システム2である基幹システムは、LAN200上にクライアント端末20や、サーバやDB、他の通信機器等の設備を有する。クライアント端末20には、契約に基づいて、専用ツール21がインストールされている。専用ツール21は、例えば、アプリとして、事業者システム1からクライアント端末20へ配信されインストールされる。外部システム3AのAPIサーバAであるサーバ30Aは、WebAPI300を備え、サービスAを提供する。
【0026】
図1のサーバ10は、
図2では、主に、Webサーバ11、アプリケーション(AP)サーバ12、およびDBサーバ13で構成される。また、
図2では、事業者システム1は、ファイアウォールサーバFW1,FW2,FW3を有する。事業者システム1は、通信網500に近い順に、ファイアウォールサーバFW1、Webサーバ11、ファイアウォールサーバFW2、APサーバ12、ファイアウォールサーバFW3、およびDBサーバ13を有する。各ファイアウォールサーバFW1,FW2,FW3は、不正な通信を発見・防止する機能を有する。
【0027】
Webサーバ11は、リバースプロキシ110およびプロキシ111を有する第1サーバである。Webサーバ11は、外部公開部分101,102を有する。外部公開部分101,102は、IPアドレス(対応するURL)等の情報が外部公開される部分である。顧客システム2のクライアント端末20は、Webサーバ11の外部公開部分101のIPアドレスに対しHTTPSプロトコルでアクセスする。外部システム3のサーバ30は、Webサーバ11の外部公開部分102のIPアドレスに対しHTTPSプロトコルでアクセスする。なお、外部公開部分101,102として2つに分けて図示しているが、これは、APIのURLが異なることに対応しており、顧客システム2から見た外部公開部分101は一方のURL、外部システム3から見た外部公開部分102はもう一方のURLに対応している。これらのURLは、IPアドレスとしては同一となる。リバースプロキシ110およびプロキシ111は、プログラム等により実装される。リバースプロキシ110は、不特定多数のクライアントからのアクセスを受け付け、負荷の制限や分散とともに、特定のサーバ、すなわち本例でのAPサーバ12への要求を透過させる部分である。リバースプロキシ110は、サーバ10の外から内への通信制御を担う部分であり、プロキシ111は、内から外への通信制御を担う部分である。Webサーバ11は、例えばクライアント端末20からのHTTPS要求を受けると、APサーバ12へのURL(対応する要求)に変換してAPサーバ12へ転送する。なお、事業者システム1は、Webサーバ11等において、クライアント等の認証の機能を設けてもよい。その場合、セキュリティを高め、シングルサインオンが実現できる。
【0028】
APサーバ12は、接続制御を実現するためのWebAPI120を有し、顧客システム2や外部システム3からの要求や応答を、設定に基づいて処理し、処理結果の応答をWebサーバ11に返す。APサーバ12は、適宜にDBサーバ13にアクセスしてDB130のデータを読み書きする。
【0029】
また、事業者システム1は、管理者ADが操作する管理端末150から、サーバ10(例えばWebサーバ11やAPサーバ12)の設定や保守が可能である。
【0030】
[1-3.顧客との契約・設定]
図3は、実施の形態1で、顧客と事業者との契約・設定に係わる構成例を示す。
図3の例では、複数の顧客の複数の顧客システム2として、顧客A,B,C等の顧客システム2A,2B,2C等を有する。顧客の担当者は、事業者の担当者との間で、事業者システム1の利用に係わる契約および設定を行う。顧客の担当者は、事業者が提示する情報に基づいて、顧客システム2から利用したい外部事業者の外部サービスを候補範囲から選択し、事業者の担当者に対し、契約・設定依頼をする。設定依頼は、事業者システム1が提供するサービスの機能の選択や機能の詳細に関する設定依頼や、利用する外部サービスの機能の詳細に関する設定依頼を含む。事業者の担当者は、契約・設定依頼に応じて、顧客との契約を行う。事業者の管理者ADは、設定依頼に応じて、管理サーバ14に対し、顧客毎の設定を行う。
【0031】
図3の事業者システム1は、契約・設定管理に係わる管理サーバ14と、管理者ADの操作する管理端末150とを有する。管理サーバ14は、サーバ10と接続される。管理サーバ14は、機能として契約・設定管理機能140を有し、契約・設定管理機能140によって契約・設定情報141を記憶・管理する。管理者ADは、管理端末150から管理サーバ14にアクセスし、管理サーバ14が提供する画面(Webページ等)で、顧客毎の契約・設定の情報を入力する。管理サーバ14は、契約・設定管理機能140によって、入力情報を契約・設定情報141に格納して登録する。管理サーバ14は、契約・設定情報141での設定に基づいて、サーバ10のプログラムに接続制御のための情報を設定する。もしくは、サーバ10は、必要に応じて管理サーバ14の契約・設定情報141を参照するようにしてもよい。
【0032】
また、事業者システム1は、管理サーバ14の契約・設定情報141に基づいて、各顧客システム2のクライアント端末20に対し、その顧客の契約・設定の確認のための画面である契約・設定確認画面22を提供する。顧客の担当者は、顧客システム2の契約・設定の状態を確認したい場合、クライアント端末20から、専用ツール21を通じて、事業者システム1のサーバ10にアクセスする。サーバ10は、管理サーバ14の契約・設定情報141に基づいて、契約・設定確認画面22のデータ(例えばWebページ)を応答する。クライアント端末20は、そのデータに基づいて、表示デバイス画面に契約・設定確認画面22を表示する。顧客の担当者は、その契約・設定確認画面22で、顧客システム2の契約・設定の状態を確認できる。また、顧客の担当者は、その契約・設定確認画面22で、顧客システム2の契約・設定の変更に係わる依頼の情報を入力して、事業者システム1にデータとして送信することもできる。
【0033】
顧客と事業者との間での契約および初期設定については、基本的には、顧客の担当者と事業者の担当者との間での対面、書面、あるいは有人オペレータによる作業等によって成立させ、一部についてはオンラインで可能とする。事業者の担当者は、顧客の担当者からの契約・設定依頼や指示等の情報に基づいて、例えば管理サーバ14に契約および初期設定の情報を入力し登録する。契約および初期設定の後、顧客は、顧客システム2から事業者システム1を介して外部サービスの利用が可能となる。一旦、顧客毎の契約および初期設定がされた後では、顧客は、自分の契約および設定の状態について、クライアント端末20の契約・設定確認画面22を通じて、オンラインで確認可能である。契約・設定確認画面22では、顧客が利用する外部サービスや機能の変更についての要望を受け付ける。事業者の担当者、例えば管理者ADは、顧客システム2から契約・設定確認画面22等を通じてその変更の要望を受けた場合、管理サーバ14に対し設定変更を行う。これにより、契約・設定情報141が更新され、その後、契約・設定確認画面22の表示内容も更新される。
【0034】
なお、変形例としては、顧客と事業者との間でオンラインでの契約および設定を行う機能を設けてもよい。
【0035】
[1-4.外部事業者との契約・設定]
事業者と外部事業者との間では、予め、外部サービスの利用に係わる契約および設定が行われる。その結果、事業者システム1に登録された外部サービスは、顧客が選択できる外部サービスの選択肢となる。
【0036】
図4は、実施の形態1で、事業者と外部事業者との契約・設定に係わる構成例を示す。予め、事業者の担当者は、各外部事業者の担当者との間で、事業者システム1の機能、すなわち顧客システム2からの外部サービスの利用および接続制御に係わる契約・設定を行う。事業者の管理者ADは、例えば
図3と同様に、管理端末150から管理サーバ14に、各外部サービスの契約・設定に係わる情報を入力して登録する。管理サーバ14は、契約・設定管理機能140によって、契約・設定情報141に、外部サービスに関する設定情報を格納する。管理サーバ14は、サーバ10に、契約・設定情報141を反映する。
【0037】
図4中では、複数の外部サービスおよびAPI接続方式の例も示している。外部事業者の外部システム3として、例えば外部システム3-1,3-2,3-3等を有する。例えば、外部事業者#1の外部システム3-1は、WebAPIによって外部サービスを提供するサーバ30として、サービス#1を提供するAPIサーバ#1(30-1)を有する。サービス#1は、例えばWebによる所定の情報の提供である。各APIサーバ#1,#2,#3は、外部公開部分301を有する。APIサーバ#1は、第1API接続方式として、一般的なHTTPまたはHTTPSによる方式で、サービス#1を提供する。
【0038】
また、例えば、外部事業者#2の外部システム3-2は、WebAPIによって外部サービスを提供するサーバ30として、サービス#2を提供するAPIサーバ#2(30-2)を有する。サービス#2は、例えば決済代行サービスである。APIサーバ#2は、第2API接続方式として、WebSocket方式で、サービス#2を提供する。
【0039】
また、例えば、外部事業者#3の外部システム3-3は、WebAPIによって外部サービスを提供するサーバ30として、サービス#3を提供するAPIサーバ#3(30-3)を有する。サービス#3は、例えばSNS・チャットサービスである。APIサーバ#3は、第3API接続方式として、コールバック方式で、サービス#3を提供する。
【0040】
[1-5.契約設定確認画面および契約設定情報]
図5の(A)は、契約・設定確認画面22の例を示し、(B)は契約・設定情報141の例を示す。(A)の契約・設定確認画面22は、顧客や顧客システム2の情報、事業者システム1の情報(例えば外部公開のIPアドレス/URL)、利用する外部サービスの情報等が表示される。「利用する外部サービス」欄には、利用する複数の外部サービス(例えば外部サービスA,B)の情報が表示されている。また、顧客の担当者は、利用する外部サービスの詳細設定を確認または変更したい場合、詳細ボタンを押し、外部サービス毎の設定画面で詳細を確認または変更できる。また、顧客の担当者は、利用する外部サービスを変更したい場合、外部サービス項目のリストボックス等に表示される選択肢から選択できる。顧客の担当者は、変更依頼ボタンを押すことで、変更依頼を事業者システム1に送信できる。
【0041】
なお、顧客システム2における基幹システムは、予め業務処理機能が実装されており、業務処理のための画面は別に存在する。オペレータOPは、クライアント端末20のその画面で、業務処理に係わる例えば作業依頼や作業完了報告等の情報を確認や入力できる。なお、業務処理機能を備える基幹システムに、専用ツール21が一体として実装された形態としてもよい。
【0042】
(B)の契約・設定情報141の表は、データ項目として、顧客、ログイン(認証)、利用する外部事業者、利用する外部サービス(API)、およびAPI接続方式等を有する。顧客システム2毎に、1つ以上の行での設定情報を有する。「顧客」項目は、顧客システム2の識別情報等が格納されている。「ログイン(認証)」項目は、顧客システム2からサーバ10にアクセスする際に、ログインや認証を必要とする場合の、ID等の認証情報が格納されている。顧客システム2毎に認証情報は例えば1つとすることができる。「利用する外部事業者」項目は、その顧客システム2が利用する外部事業者の識別情報等が格納されている。「利用する外部サービス(API)」項目は、その顧客システム2が利用する外部事業者の外部サービスの識別情報等が格納されている。本例では、選択肢となる外部サービスは、1.決済代行サービス、2.SNS・チャットサービス(種別A)、3.SNS・チャットサービス(種別B)、4.情報提供、5.文書作成、……等がある。また、本例では、SNS・チャットサービスのカテゴリでも、さらに、複数の種別(A,B)がある。例えば、ある外部事業者はSNS・チャットサービスAを提供し、別の外部事業者はSNS・チャットサービスBを提供している。顧客は、それらから選択して利用できる。
【0043】
「API接続方式」項目は、対応する外部サービスのAPI接続方式の識別情報が格納されている。API接続方式は、例えば、1.一般的なHTTPS、2.WebSocket、3.コールバック、等がある。例えば、1の決済代行サービスのAPI接続方式は、2のWebSocket方式である。2のSNS・チャットサービス(種別A)のAPI接続方式は、3のコールバック方式である。
【0044】
この契約・設定情報141の例では、複数の顧客システム2と複数の外部システム3との間での外部サービスの利用に関する設定例が示されている。1,2行目では、顧客システム2Aは、外部システム3Aの外部サービス(1.決済代行)、および外部システム3Bの外部サービス(2.SNS・チャット(種別A))を利用する設定となっている。3,4行目では、顧客システム2Bは、外部システム3Aの外部サービス(1.決済代行)、および外部システム3Cの外部サービス(3.SNS・チャット(種別B))を利用する設定となっている。5行目では、顧客システム2Cは、外部システム3Dの外部サービス(4.情報提供)を利用する設定となっている。6行目では、顧客システム2Dは、外部システム3Eの外部サービス(5.文書作成)を利用する設定となっている。
【0045】
[1-6.API接続方式]
図15は、従来から存在するAPI接続方式や利用形態の例として、(A)第1API接続方式、(B)第2API接続方式、および(C)第3API接続方式を示す。実施の形態1のコンピュータシステムは、これらのAPI接続方式に対応する実装を有する。
【0046】
図15を用いて、前述の課題等について補足説明する。第1の課題として、顧客の業種に依らずに、セキュリティリスクや保守運用コスト等の点がある。一般に、クラウドサービス間の連携においては、WebAPI(Web Application Programing Interface)として仕様が統一された仕組みで、サーバ同士の間、またはサーバとクライアントとの間で通信する。この通信で、インターネットである広域網、もしくは閉域網を介したオンラインで、データ交換等が行われる。なお、一般的なクライアント・サーバ・システムの文脈において、サーバとは、サーバ装置やサーバプログラム等を指し、クライアントとは、クライアント装置やクライアントプログラム等を指す。
【0047】
図15の(A)で、第1API接続方式として、一般的なHTTPS方式を示す。本例では、クライアント端末A11からAPIサーバであるサーバA12のWebAPIを一方的に利用する場合を示す。この場合、クライアント端末A11ではURL等の情報が外部公開されている必要は無く、サーバA12でURLやIPアドレスやWebAPI等の情報が外部公開されていればよい。破線で示す外部公開部分A14は、URLやIPアドレスやWebAPI等の情報が外部公開されていることを表す。クライアント端末A11からサーバA12へのアクセスは、HTTPもしくはHTTPSプロトコルによる通信である。例えば、クライアント端末A11は、WebAPIを利用するためのHTTPS要求をサーバA12へ送信し、サーバA12は、その要求に応じてWebAPIの処理を行い、結果をHTTPS応答としてクライアント端末A11へ送信する。これは、一般的にPCやスマートフォン等の端末からインターネット上のサービス(例えばWebページ閲覧)を利用する形態と同じである。
【0048】
しかし、従来、下記API接続方式を利用する場合には、APIサーバからクライアント端末へアクセスする必要があり、この場合には、クライアント端末でIPアドレス等の情報の外部公開が必須条件となる。これにより、前述のように、顧客システムでのセキュリティリスク等の課題がある。この種のAPI接続形態として、下記の2つの方式が挙げられる。
【0049】
図15の(B)は、第2API接続方式として、WebSocket方式の場合を示す。WebSocketは、コンピュータネットワークの通信規格の1つである。本例では、クライアント端末B21と、WebAPIを提供するAPIサーバであるサーバB22との間で、WebSocket接続として、双方向通信用トンネル接続を行う。クライアント端末B21は、固定IPアドレスを有し、外部公開部分B23を有する。サーバB22は、外部公開部分B24を有する。クライアント端末B21は、サーバB22との間で、確立されたWebSocketを通じて双方向通信する。
【0050】
図15の(C)は、第3API接続方式として、コールバック方式、言い換えると、外部サービスのコールバックAPIの利用方式の場合を示す。本例では、クライアント端末C31は、WebAPIを備え、固定IPアドレスを有し、外部公開部分C33を有する。WebAPIを備えるAPIサーバであるサーバC32は、外部公開部分C34を有する。この方式では、クライアント端末C31から例えばデータ要求のためにHTTPS等に基づいてサーバC32のWebAPIを呼び出し、その後、サーバC32から例えばデータ応答のためにクライアント端末C31のWebAPIを呼び出す。このような動作はコールバックと呼ばれる。
【0051】
上記(B),(C)の2つのAPI接続方式の例では、クライアントに対応する顧客システム2のクライアント端末20(
図1)において、固定IPアドレスと外部公開部分(B23,C33)、および24時間稼働が前提の機器や設備等が必要である。これにより、前述のように、顧客システムの実装や保守運用のコストの課題がある。また、上記2つの例のいずれの場合でも、クライアント端末を外部公開するための契約や機器等は、顧客が管理や用意する必要があり、管理コストが高い。
【0052】
また、複数の顧客システムに対しクラウドサービスを提供する事業者から上記課題をみた場合、事業者は、
図15のような各種のAPI接続方式で外部サービスにアクセスするクライアントの数に応じて、それぞれに実装や運用保守が必要であることから、事業者システムの管理等のコストが高くなる。
【0053】
例えば、第1顧客の第1顧客システムは、第1外部事業者の第1外部サービス(対応するWebAPI)をWebSocket方式で利用し、第2顧客の第2顧客システムは、第2外部事業者の第2外部サービス(対応するWebAPI)をコールバック方式で利用する。また例えば、第3顧客の第3顧客システムは、第3外部事業者の第3外部サービスをWebSocket方式で利用するとともに、第4外部事業者の第4外部サービスをコールバック方式で利用する。このように、複数の顧客と複数の外部事業者の外部サービスとの間では、多様な対応関係で接続が行われ得る。事業者がそれらのすべてに対応できるためには、顧客の要望毎に個別に対応する実装、あるいは、それらの実装を合わせた複雑で煩雑な実装が必要であり、多大なコストや手間が必要である。
【0054】
上記課題に対し、
図1等に示す実施の形態1のコンピュータシステムは、事業者システム1における特有のサーバ10を設ける。サーバ10は、複数の顧客システム2からの複数の外部サービスへの利用のアクセスの要求に対し、契約・設定情報に基づいて、各API接続方式に対応して接続を制御する。
【0055】
[1-7.接続制御シーケンス]
図6は、
図1等に示す実施の形態1のコンピュータシステムで、例えば顧客Aの顧客システム2Aから外部事業者Aの外部システム3Aの外部サービス(サービスA)を利用する場合の通信等のシーケンスを示す。ステップS0として、予め、サーバ10(特にWebサーバ11およびAPサーバ12)には、前述の契約・設定に基づいて、各顧客システム2と各外部システム3の外部サービスとの間での利用・接続に関する設定情報が反映されている。例えば、顧客システム2Aが外部システム3Aの外部サービス(サービスA)を所定のAPI接続方式で利用する設定がされている。
【0056】
例えば、顧客システム2AのオペレータOPは、業務処理のために、クライアント端末20Aを操作する。ステップS1で、クライアント端末20Aは、専用ツール21を通じて、例えば業務に係わるデータの取得等のために、まず、事業者システム1のサーバ10、特にWebサーバ11の外部公開部分101のURL等に対し、HTTPS要求でアクセスする。
【0057】
ステップS2で、Webサーバ11は、クライアント端末2Aからのアクセスを受けると、認証等の後、設定情報に基づいて、その要求を、APサーバ12に転送する。ステップS3で、APサーバ12は、設定情報に基づいて、その要求を解釈し、外部サービス(サービスA)へのデータ取得等の要求であるため、その要求をWebサーバ11に返す。
【0058】
ステップS4で、Webサーバ11は、その要求を、外部システム3Aのサーバ30Aの外部公開部分301のURL等に宛ててHTTPS要求で送信する。ステップS5で、外部システム3Aのサーバ30Aは、その要求を受けると、WebAPI300によってサービスAの処理を行い、例えば取得要求されているデータを含む応答を、事業者システム1のWebサーバ11の外部公開部分102に宛ててHTTPS応答で送信する。
【0059】
ステップS6で、事業者システム1のWebサーバ11は、サーバ30Aからの応答を受けると、設定情報に基づいて、その応答をAPサーバ12へ転送する。ステップS7で、APサーバ12は、その応答を解釈し、その応答に含まれるデータを取り出し、DBサーバ13のDB130に格納する。
【0060】
一方、ステップS8で、顧客システム2Aのクライアント端末20Aは、ステップS1でのデータ取得要求に対するデータ取得応答を待っており、例えば、定期的に確認のアクセスを行う。ステップS9で、Webサーバ11は、クライアント端末20Aからの確認のアクセスを受けると、対応する要求をAPサーバ12へ転送する。ステップS10で、APサーバ12は、確認の要求を受けると、応答のデータがあるかどうか、DBサーバ13のDB130を調べ、応答のデータがある場合には、その応答のデータをWebサーバ11に返す。ステップS11で、Webサーバ11は、その応答のデータを含むHTTPS応答を、クライアント端末20Aに送信する。クライアント端末20Aは、その応答のデータを取得する。
【0061】
上記シーケンスで、サーバ10とサーバ30との間の通信(ステップS4~S5)は、設定情報に基づいて、サーバ30のWebAPI300のAPI接続方式に応じた通信として、サーバ10によって制御される。
【0062】
[1-8.効果等]
上記のように、実施の形態1のコンピュータシステム等によれば、主な効果として以下を有する。実施の形態1によれば、各顧客システム2が各外部事業者の外部サービスを利用する場合に、事業者システム1のサーバ10が各API接続方式での接続を制御するので、顧客システム2のセキュリティの確保とともにコストや手間を低減できる。顧客システム2は、固定IPアドレス等の外部公開や、API接続のためのソフトウェアやハードウェアの保有や実装が不要であり、実装や運用保守等のコストや手間が低減できる。顧客は、外部公開によるセキュリティリスクを低減・回避できる。また、顧客は、各種の外部サービスの利用のための各外部事業者との契約や設定とその管理が不要であり、コストや手間が低減できる。顧客は、利用する外部サービスや詳細機能の変更等も容易となる。顧客システム2は、インターネット接続環境さえあれば、事業者システム1を経由して、各種の外部サービスを効率的に利用できる。
【0063】
また、実施の形態1によれば、顧客が複数の外部事業者の外部サービスを利用する場合に、それらの複数の外部サービスの仕様の差異(特にAPI接続方式の差異)が大きい場合にも、事業者システム1によってその差異を吸収し、顧客システム2に対し統合的なサービスとして提供することができる。顧客システム2側は、複数の外部サービスの仕様の差異を気にする必要が無く、事業者システム1に対する統一化されたインタフェースや手続きのみで、複数の外部サービスを容易に利用できる。これにより、顧客は、業務や管理に係わるコストを低減できる。顧客は、低いコストで外部サービスを利用できるので、業務処理効率化等のために、各種の外部サービスを積極的に利用しやすくなる。
【0064】
<実施の形態2>
図7~
図9等を用いて、本発明の実施の形態2のコンピュータシステム等について説明する。実施の形態2等の基本的な構成は実施の形態1と同様であり、以下では実施の形態2等における実施の形態1とは異なる構成部分について説明する。実施の形態2では、エネルギーインフラ事業者である顧客システムと顧客システムが利用する外部事業者の外部サービスの具体例、およびその具体例に対応した事業者システム1の実装例を示す。実施の形態2では、顧客の業務としてコールセンタ業務を含む場合の例を示し、コールセンタ業務効率向上を実現する。また、実施の形態2等の例では、事業者システム1は、顧客であるガス事業者の業務処理を支援する。このガス事業者の業務は、需要家のガス使用量の把握や料金請求、ガスメータの自動検針や点検・保守等がある。ガスメータの自動検針は、ガス事業者からみた外部事業者である例えばガスメータ事業者によって行われる場合もある。
【0065】
[2-1.コールセンタ業務]
図7は、実施の形態2に関して、前提となるコールセンタ業務の構成例を示す。
図7の上部は、顧客の例としてガス事業者におけるコールセンタ業務の構成例を示す。ガス事業者は、業務の一部としてコールセンタ業務を有する。このコールセンタ業務は、業務担当者であるオペレータOPと、作業者である例えば保守員Hとの間で、作業依頼および作業完了報告等のやり取りを行う業務である。作業者である保守員Hは、ガス事業者の社員でもよいし、協力会社社員でもよい。本例では、ガス事業者のコールセンタ業務の例を説明するが、これに限らず、コールセンタ業務を有する任意の顧客や業種に適用可能である。
【0066】
本例では、顧客システム2は、ガス事業者の基幹システムである。顧客システム2は、ガス事業者と提携するコールセンタシステム等でもよい。顧客システム2は、LAN上のクライアント端末等の他に、電話業務に対応できるCTI(Computer Telephony Integration)サーバ等を備えるシステムである。
【0067】
ガス事業者に対しての顧客ないしエンドユーザであるガス利用者EUは、例えば自宅または近隣のガスの状態等に関する問合せを電話等で顧客システムに対し行う。ガス利用者EUは、スマートフォン等の端末40を所持している。顧客システム2で、オペレータOPは、ガス利用者EUからの問合せを電話で受けて対応する。オペレータOPが使用するPC等のクライアント端末には、業務処理機能を持つOS等が搭載されている。オペレータOPによる対応は、例えば、保守員Hに対する、ガス利用者EUの自宅または近隣のお宅のガスメータの点検等の作業依頼である。なお、ガス利用者EUとの応対と、保守員Hとの応対とは、別の人によって行われる場合もある。その場合、それらの人の間で連携が行われる。
【0068】
オペレータOPは、上記問合せ等の案件毎に、保守員Hに対する作業依頼を、電話やメール等を利用して行う。保守員Hは、自分の端末60で電話やメールで作業依頼を受けて、指定された需要家のガスメータの点検等の作業を行い、作業完了報告をオペレータOPに対し電話やメール等で行う。オペレータOPは、例えば、地域の複数の保守員のうち候補となる保守員Hとの間で、スケジュール確認や調整、作業依頼、確定、作業完了報告等の取りまとめを行う。このような作業は、業務上、複数の人に対し複数回繰り返し行われる。そのため、従来、オペレータOPや保守員H等の人の作業負荷等が大きい。また、場合によっては、顧客からの問合せに対し迅速には対応できない可能性もある。
【0069】
一方、
図7の下部には、上記ガス事業者のコールセンタ業務について、事業者システム1および外部システム3の外部サービス等を適用して効率化を図る場合の例として、実施の形態2のコンピュータシステムの構成概要を示す。ここでは、特に、オペレータOPと複数の保守員Hとの間での作業依頼と作業完了報告とのやり取りの部分について示す。この部分の途中に、事業者システム1が介在する。予め、顧客、事業者、および外部事業者との間で契約・設定が済んでいる。
【0070】
顧客システム2のオペレータOPは、保守員Hの端末60に対し、作業依頼等を通知する。この際、クライアント端末20は、オペレータOPの操作に基づいて、事業者システム1のサーバ10にアクセスする。サーバ10は、アクセスを受けると、WebAPIによって、顧客毎の設定に基づいて、外部システム3の外部サービスにアクセスする。オペレータOPから保守員Hへの作業依頼等は、この外部サービス上で実現される。本例では、この外部サービスは、スマートフォン上でのSNS・チャットサービスである。すなわち、作業依頼等は、SNS・チャットサービス上でのメッセージ等のやり取りとして実現される。なお、保守員Hの端末60には、そのSNS・チャットサービスを受けるためのアプリがインストールされる。SNS・チャットサービス上でのユーザグループとして、オペレータOPと一人以上の保守員Hとがグループとして設定される。地域等に応じて複数のグループが設定可能である。
【0071】
サーバ30のWebAPIは、サーバ10のWebAPIからのアクセスを受けると、そのアクセスに応じた例えば作業依頼を、外部サービスであるSNS・チャットサービス上で、指定された保守員Hの端末60に対しチャットのメッセージとして送信する。保守員Hは、端末60の画面でその作業依頼を確認し、指定された需要家のガスメータの確認等の作業を実施する。その後、保守員Hは、端末60の画面で、該当する主題(対応するタイムライン等)における作業依頼のメッセージに対し、作業完了報告のメッセージを返信する。保守員Hの端末60からの返信のメッセージは、外部システム3のサーバ30のWebAPIに送信される。サーバ30のWebAPIは、その返信に対応する応答を、サーバ10のWebAPIへ送信する。サーバ10のWebAPIは、その応答のデータ(例えば作業完了報告)をDBに格納する。クライアント端末20は、サーバ10への確認の問合せに応じて、サーバ10からその応答のデータを取得する。オペレータOPは、クライアント端末20の画面で、その応答のデータとして例えば作業完了報告を確認できる。上記構成によって、コールセンタ業務におけるオペレータOPや保守員Hの作業負荷を低減できる。
【0072】
[2-2.コールセンタ業務-比較例]
図8は、実施の形態2に対する比較例を示す。この比較例は、
図7のコールセンタ業務について、従来技術での実装構成例として、顧客システム2と外部事業者の外部システム3とを有し、事業者システムを介在しない場合を示す。また、この比較例では、外部サービスの例としてのSNS・チャットサービスの利用に関して、前述の
図15の(C)の第3API接続方式としてコールバック方式を適用する場合を示す。
図8の外部システム3のサーバ30のWebAPIは、コールバック方式を適用している。
【0073】
顧客システム2は、業務処理上、例えばオペレータOPからの作業依頼に対し、保守員Hからの作業完了報告等のデータを戻すことが必要である。そのため、顧客システム2のクライアント端末20は、外部システム3のサーバ30の外部サービス(対応するWebAPI)からのコールバックを受けることが可能な実装が必要である。そのために、クライアント端末20は、外部公開部分810として、外部のインターネットに対し固定IPアドレスをコールバック先として外部公開する。また、クライアント端末20は、外部サービスからのコールバックを受け取ることができるWebAPI820を設ける。
【0074】
クライアント端末20のWebAPI820は、外部サービスのWebAPI830に対し、ステップ801で、HTTPS要求および応答によって、作業依頼(言い換えるとデータ取得要求)等の情報を送信する。外部サービスのWebAPI830は、その要求を受けて、ステップ802で、保守員Hの端末60に対し、SNS・チャットサービス上でのプッシュ通知によって、作業依頼等のメッセージを送信する。保守員Hの端末60からは、ステップ803で、外部サービスのWebAPI830へ、作業完了報告等のメッセージを送信する。外部サービスのWebAPI830は、そのような応答を受けると、ステップ804で、顧客システム2のクライアント端末20へ、HTTPS要求および応答によって、コールバックとして、作業完了報告等のデータを送信する。
【0075】
このような比較例の構成は、前述のように、顧客システム2での外部公開等を要するので、セキュリティリスクが高く、保守運用コスト等が高い。顧客システム2は、利用する外部サービスを変更する場合や、外部サービスのWebAPIの仕様変更がある場合には、それに合わせて実装や改修、例えばクライアント端末20のWebAPIの変更等が必要である。
【0076】
[2-3.コンピュータシステム-実装例]
図9は、実施の形態2のコンピュータシステムを含む、システム100の構成を示す。この実施の形態2のコンピュータシステムの構成は、
図7のコールセンタ業務について、顧客システム2と外部システム3との間に事業者システム1を介在する実装構成例を示す。顧客システム2のクライアント端末20は、
図8の比較例のようなWebAPI820の実装や、固定IPアドレスの外部公開は不要である。
【0077】
顧客システム2では、業務処理上、オペレータOPからの作業依頼に対し、保守員Hからの作業完了報告を取得する。オペレータOPは、クライアント端末20の画面で、作業依頼等の情報を入力する。ステップ901で、クライアント端末20は、オペレータOPの操作に基づいて、専用ツール21を通じて、事業者システム1のサーバ10にアクセスし、作業依頼に対応するデータ取得要求を行う。この顧客システム2と事業者システム1との間のアクセスは、基本的にHTTPS要求・応答として可能であり、詳しくは後述する安全な通信の仕組みで実現される。
【0078】
サーバ10のWebAPI120は、
図2のWebサーバ11等の構成で、クライアント端末20からのアクセスを受けて処理を行う。ステップ902で、サーバ10のWebAPI120は、サーバ30の外部サービスのWebAPIとの間で、設定情報に基づいて、コールバック方式での通信を行う。サーバ10のWebAPI120は、外部サービスのWebAPIに対し、HTTPS要求・応答によって、作業依頼等のための外部サービスの呼び出しを行う。外部サービスは、SNS・チャットサービスである。外部サービスのWebAPIは、その呼び出しを受けると、ステップ903で、指定された保守員Hの端末60へ、SNS・チャットサービス上のプッシュ通知によって、作業依頼のメッセージを送信する。保守員Hは、端末60の画面で、そのプッシュ通知の作業依頼等のメッセージを確認し、作業を実施する。その後、保守員Hは、端末60の画面で、チャットサービス上の作業依頼のメッセージに対する返信として作業完了報告を入力する。ステップ904で、保守員Hの端末60は、作業完了報告のメッセージを、サーバ30の外部サービスのWebAPIへ送信する。外部サービスのWebAPIは、その返信を受けると、ステップ902の呼び出しに対するコールバックとして、ステップ905で、サーバ10のWebAPI120へ、作業完了報告のデータを、HTTPS要求・応答によって送信する。
【0079】
サーバ10のWebAPI120は、サーバ30からのコールバックを受けると、作業完了報告のデータをDB(
図2のDB130)に格納する。
【0080】
一方、ステップ906で、顧客システム2のクライアント端末20は、ステップ901のデータ取得要求に関して、サーバ10への問合せを、HTTPS要求および応答によって行う。サーバ10のWebAPI120は、問合せに対し、DBを調べ、作業完了報告のデータがある場合には、読み出して、HTTPS応答によってクライアント端末20へ送信する。これにより、クライアント端末20は、作業完了報告のデータを取得し、オペレータOPは画面で作業完了報告を確認できる。
【0081】
上記のように、実施の形態2の構成では、外部サービスへのAPI接続、例えば外部サービスの呼び出しおよびコールバック受信の処理を、事業者システム1が担う。これにより、顧客システム2のセキュリティリスクおよび保守運用コスト等が低減される。この効果は、顧客システム2が利用する外部サービスが変更される場合や、多数に増える場合、より大きくなる。
【0082】
[2-4.安全な通信の仕組み]
図10および
図11は、
図9の実施の形態2のコンピュータシステムにおける、安全な通信の仕組みについての説明図であり、
図10は第1説明図、
図11は第2説明図を示す。
図9の顧客システム2のクライアント端末20には、事業者システム1のサーバ10と安全に通信するための機能を有する専用ツール21が配置・起動される。これにより、顧客システム2のクライアント端末20は、固定IPアドレスの外部公開が不要であり、基本的なインターネット接続機能のみで、事業者システム1に対し安全に通信して、外部サービスを利用できる。専用ツール21は、言い換えると、顧客システム2での業務処理を支援するためのアプリケーションプログラム等であり、事業者システム1を通じて外部サービスを利用する機能に係わるプログラムである。クライアント端末20は、この通信上で、例えば
図9のようにコールバック方式に基づいて作業完了報告等のデータを安全に取得することができる。この通信の仕組みでは、特に、クライアント端末20からサーバ10(
図2のWebサーバ11)に対し、定期的に、データ有無を問い合わせる。この問合せの定期のタイミングは、例えば顧客毎の設定において時間間隔等を指定可能である。
【0083】
図10および
図11の例は、
図9のステップ904からステップ906までのシーケンスに相当し、保守員Hの端末60からの作業完了報告のデータを、外部システム3のサーバ30のWebAPI、および事業者システム1のサーバ10のWebAPI120を介して、顧客システム2のクライアント端末20へ応答し取得する部分を示す。なお、
図9のステップ901からステップ903までのシーケンス、すなわち顧客システム2のクライアント端末20から事業者システム1および外部サービスを介して保守員Hの端末60へ作業依頼を行う部分については、基本的に顧客システム2から事業者システム1に対しHTTPSでアクセスするだけで済むので、顧客システム2側の通信のリスクは小さい。そのため、このシーケンス部分の詳細説明を省略する。
【0084】
図10は、保守員Hの端末60から事業者システム1のサーバ10までの応答の部分を示し、主にステップ1001~1004を有する。
図11は、続いて、事業者システム1のサーバ10から顧客システム2のクライアント端末20までの応答の部分を示し、ステップ1101~1105を有する。以下、
図10および
図11で、保守員Hの端末60から顧客システム2のオペレータOPのクライアント端末20へ作業完了報告を応答する際の通信等を説明する。
【0085】
ステップ1001(
図10): 作業者である保守員Hは、端末60の画面において、SNS・チャットサービス上での作業依頼のメッセージを確認する。作業依頼は、SNS・チャットサービス上で、ある作業依頼に対応する主題のタイムライン上の一部として表示されている。保守員Hは、作業依頼に従って、指定された需要家のガスメータの点検等の作業を行う。保守員Hは、作業完了後、端末60の画面で、該当の主題の作業依頼のメッセージに対し、GUI上の「作業完了」ボタンを押すことで返信を行う。
【0086】
ステップ1002: 保守員Hの端末60は「作業完了」ボタン押下を契機として、ユーザーコード(userCode)と担当者コード(workerCode)を判別し、外部システム3(サーバ30)に予め設定しておいたコールバック先WebAPIを呼び出す。設定されたコールバック先WebAPIとは、事業者システム1のサーバ10のWebAPI120へのIPアドレスであり、具体的にはWebサーバ11の外部公開部分102のIPアドレスである。この呼び出し(対応するPOST)の具体例は以下である。https://api.example.jp/api/2005/sns/Work{"userCode": "0001", "workerCode": "789", "time": "202005220833", "kubun": "1" }。
【0087】
ステップ1003: 事業者システム1内で、まずWebサーバ11は、そのコールバックを受信する。Webサーバ11のリバースプロキシ110は、そのコールバックに対応する要求を、APサーバ12のWebAPI120へ転送する。なお、ここではファイアウォールサーバ等の経由の詳細は省略する。
【0088】
ステップ1004: APサーバ12のWebAPI120は、その要求を受け、その要求に伴う作業完了報告のデータを受け取り、その作業完了報告のデータを、DBサーバ13にコールバックデータとして格納する。
図10中には、DB130に格納されるデータ例として表も示している。この表は、データ項目として、ユーザーコード、担当者コード、時間、完了区分、および取得済を有する。例えば、表の3行目にそのデータが格納されている。「取得済」項目は、取得済フラグとして、作業依頼に対する作業完了報告を顧客システム2のクライアント端末20が未取得である場合には値0、取得済みである場合には値1が格納される。
【0089】
ステップ1101(
図11): 次に、顧客システム2のクライアント端末20は、専用ツール21を通じて、定期的に、すなわち指定された時間間隔で、インターネット経由で、事業者システム1に対し、データ有無等の問合せを行う。時間間隔は、顧客の業務の特性等に合わせて、例えば、1分、10分、60分等と設定可能である。このステップでは、具体的に、クライアント端末20は、サーバ10のWebAPI120を、HTTPSプロトコルのGETメソッドを用いて呼び出す。この呼び出しの具体例は以下である。https://api.example.jp/api/2005/sns/Work?uc=0001&timefr=202005220830&timeto=202005220835&flag=0。本例では、この呼び出しは、パラメータとして、ユーザコードが「0001」、時間が「2020/5/22の8:30~8:35」、取得済フラグが「0」を持つ取得要求となる。
【0090】
ステップ1102: 事業者システム1で、まずWebサーバ11は、上記問合せに対応する取得要求を受けると、対応する取得要求をAPサーバ12のWebAPI120へ転送する。
【0091】
ステップ1103: APサーバ12のWebAPI120は、その取得要求に応じて、DBサーバ13のDB130を検索し、該当する作業完了報告のデータを読み出す。言い換えると、APサーバ12のWebAPI120は、DB130から、先にコールバックデータとして格納されている作業完了報告のデータを読み出す。本例では、この取得要求の条件を満たすデータとしては、
図10の表の2行目および3行目のデータが該当する。すなわち、顧客システム2は、定期的なタイミング毎に、該当データをまとめて取得可能である。APサーバ12のWebAPI120は、DB130から読み出した該当データ(2行目および3行目)を含んだ、作業完了報告のデータを作成する。このデータは、例えばJSON(JavaScript Object Notation)形式で作成される。JSONは、各種プログラム言語で利用できる、テキストベースのデータ形式であり、JavaScript内でオブジェクトが記述される。また、WebAPI120は、要求されているデータがDB130内に無い場合には、空白データを応答として作成する。
【0092】
ステップ1104: APサーバ12のWebAPI120は、上記作成した応答のデータをWebサーバ11に渡す。
【0093】
ステップ1105: Webサーバ11は、上記GETメソッドでの取得要求に対するHTTPS応答として、上記作業完了報告のデータまたは空白データを含んだHTTPS応答を、クライアント端末20に送信する。このHTTPS応答のステータスコードは、取得要求が成功の場合には、「200 OK」となる。
【0094】
このHTTPS応答のメッセージ本文に含まれる作業完了報告のデータ(JSON形式)の具体例は以下である。要求されたデータが有る場合の例は、{ "workerCode": "456", "time": "202005220830", "kubun": "1" }, { "workerCode": "789", "time": "202005220833", "kubun": "1" }である。この場合、APサーバ12のWebAPI120は、これらのデータが取得済みとなったので、
図10の表の2行目および3行目の取得済フラグを値1に更新する。要求されたデータが無い場合、すなわち空白データを返す場合の例は、{ "workerCode": "", "time": "", "kubun": "" }である。
【0095】
上記のような安全な通信の仕組みを通じて、顧客システム2のクライアント端末20は、事業者システム1を介して、保守員Hの端末60からの作業完了報告等のデータを取得できる。特に、上記例では、顧客システム2は、コールバック方式でのデータを安全に取得することができる。上記では、事業者システム1を介して取得するデータや情報、および業務処理上の機能の例として、作業依頼と作業完了報告の場合を説明したが、これに限らず同様に適用可能である。
【0096】
[2-5.効果等]
上記のように、実施の形態2によれば、特に顧客システム2のコールセンタ業務に関して、実施の形態1の効果を実現できる。顧客システム2は、設備をインターネットに外部公開する必要無く、事業者のクラウドへの接続のみで、安全かつ容易に外部サービスを利用できる。顧客は、外部サービスの利用によって、コールセンタ業務を含む業務の効率や品質を高めることができる。例えばガス事業者は、多数の需要家およびガスメータに係わる点検等の業務に関して、複数の作業依頼および作業完了報告等のやり取りを、SNS・チャットサービス上で効率的に実現できる。
【0097】
外部サービスの1つとしてSNS・チャットサービスを適用する場合の効果としては以下がある。従来の業務では、オペレータOPが複数の保守員の各人に対し、個別に電話等で連絡し、作業依頼等をやり取りする必要があり煩雑である。この業務をSNS・チャットサービス上で実現することで、オペレータOPと各保守員との間で、作業依頼等の主題毎に、双方向コミュニケーションとしてのメッセージ等のやり取りが、時系列上での履歴として可視化および記録される。例えば、オペレータOPがクライアント端末20から作業依頼のメッセージを第1保守員の端末に送付し、第1保守員がそれに対し返信(例えば確認や質問等)し、オペレータOPがそれに対しさらに返信し、第1保守員がそれに対し作業完了報告等を返信する。このように、ユーザ間のやり取りを少ない手間で明確にできるので、コールセンタ業務を効率化できる。
【0098】
<実施の形態3>
図12~
図14等を用いて、本発明の実施の形態3のコンピュータシステム等について説明する。実施の形態3では、顧客システムと顧客システムが利用する外部事業者の外部サービスの他の具体例、およびその具体例に対応した事業者システム1の実装例を示す。実施の形態3では、顧客としてLPガス事業者であり、LPガス事業者の業務として、外部事業者であるガスメータ事業者のガスメータサービスを用いたガスメータ業務を含む場合の例を示し、ガスメータ業務効率向上を実現する。ガスメータサービスは、例えば自動検針を含む。あるガス事業者の業務は、提携するあるガスメータ事業者のガスメータサービスを利用して行われる。
【0099】
[3-1.ガスメータ業務]
図12は、実施の形態3に関して、前提となるガスメータ業務の構成例を示す。本例では、システムは、事業者に対する顧客であるガス事業者Aおよびガス事業者Bと、外部事業者であるガスメータ事業者としてガスメータ事業者Aおよびガスメータ事業者Bとを有する。ガス事業者Aは顧客システムAを有し、ガス事業者Bは顧客システムBを有する。ガスメータ事業者Aは、外部システムAのサーバ30Aを有し、ガスメータ事業者Bは、外部システムBのサーバ30Bを有する。サーバ30Aは、WebAPIを用いてガスメータサービスAを提供し、サーバ30Bは、WebAPIを用いてガスメータサービスBを提供する。ガスメータ事業者の外部システム3は、クラウドコンピューティングシステムである場合がある。例えばガスメータ事業者Aの外部システム3Aは、自社専用のクラウドコンピューティングシステムである。ガス事業者の顧客システム2と、ガスメータ事業者の外部システム3とは、広域網を介して接続される。
【0100】
例えば、ガス事業者Aは、ガスメータ事業者AおよびBと提携しており、ガス事業者Bは、ガスメータ事業者Bおよび他のガスメータ事業者と提携している。各ガス事業者の顧客システム2である基幹システムは、提携するガスメータ事業者の外部システム3のサーバ30にアクセスし、ガスメータサービスに係わるデータを取得する。例えば、顧客システムAは、外部システムAのサーバ30AからガスメータサービスAに係わるデータを取得し、外部システムBのサーバ30BからガスメータサービスBに係わるデータを取得する。
【0101】
各ガスメータ事業者は、対応する複数の需要家のガス利用者EUに対しガスメータ70を提供している。例えば、ガスメータ事業者Aは、ガス利用者EU1のガスメータA1やガス利用者EU2のガスメータA2等を管轄している。サーバ30AのガスメータサービスAは、ガスメータA1,A2等と通信して自動検針や状態監視を行い、検針データを作成し、ガス事業者に提供する機能に対応する外部サービスである。例えば、サーバ30Aは、通信インタフェースとしてLPWAでガスメータ70(A1,A2等)と通信し、検針データを取得し、DBに格納する。自動検針は、言い換えると遠隔検針である。ガスメータサービスの機能の他の例としては、遠隔開閉栓がある。
【0102】
例えば、ガス事業者Aの顧客システム2Aのクライアント端末20Aは、外部システム3Aのサーバ30Aにアクセスし、ガスメータサービスに係わるデータとして、検針データを取得し、LANのDBに格納する。検針データは、例えばCSV形式のデータである。顧客システム2は、対象の外部システム3のサーバ30との接続の際には、サーバ30のAPI接続方式に応じた接続が必要である。そのため、前述と同様の課題がある。
【0103】
需要家の住宅等にはガスメータ70が設置されている。ガスメータ70は、ガス器具に供給されるガスの量を計測する機能を少なくとも備える。ガスメータ70は、例えばマイコン、圧力センサ、振動センサ、ガス漏れセンサ、遮断弁等を備える。ガスメータ70は、ガス使用状態を監視し、ガスの流量や圧力等を把握する。ガスメータ70は、異常を検知した場合、ガスの一時停止・遮断、アラート出力等を行う。ガス事業者の保守員Hは、ガスメータ70の点検・保守等の作業を行う。
【0104】
ガスメータ70は、スマートメータ(LPガススマートメータ)であってもよい。ガスメータ70は、スマートメータである場合、例えばガスメータ事業者のサーバ30と通信する。あるガスメータ事業者の外部システム3は、スマートメータであるガスメータ70と通信し、遠隔での自動検針等を実現する。なお、需要家において、ガスメータ70と通信接続される他の機器、例えばホームネットワーク機器や携帯端末等があってもよい。ガスメータ70は、保守員Hの端末60や専用機器と通信接続される機器であってもよい。
【0105】
ガスメータ70は、ガス使用量を測定し、測定値を含むデータを得る。また、ガスメータ70は、ガス使用量に限らず、ガス状態の監視や検知、制御等に係わるデータを得る。これらのデータを「検針データ」と総称する。スマートメータであるガスメータ70は、検針データを、LPWAでの通信で、外部システム3のサーバ30へ自動的に送信する。サーバ30は、その検針データを受信・取得し、DBに格納する。
【0106】
ガスメータ70との通信インタフェースとしては、LPWA(Low Power Wide Area)またはLPWANという通信方式がある。LPWAは、低消費電力で長距離データ通信を実現する方式であり、IoTの要素として注目されている。
【0107】
ガス事業者(またはガスメータ事業者)は、取得した検針データに基づいて、業務として、各需要家のガス使用状態を把握し、各ガス利用者に対するガス使用量の通知やガス料金請求を行う。ガス料金請求は、外部サービスとして決済代行サービスを用いて行われる場合もある。また、ガス事業者(またはガスメータ事業者)は、実施の形態2の例のように、各需要家のガス使用状態に応じて、保守員Hに対し、ガスメータ70の点検・保守等の作業を依頼する。
【0108】
なお、ガス事業者またはガスメータ事業者は、ガス利用者EUのスマートフォン等の端末40に対し、ガスメータ70に係わる機能を提供してもよい。例えば、ガス利用者が自分の端末40からインターネットにアクセスし、自分のガス使用量や料金、ガス状態等を確認できる機能が挙げられる。
【0109】
ガスメータ事業者毎に、ガスメータ70の仕様が異なり、外部システム3のガスメータサービスの仕様が異なる。ガスメータ70の基本的な機能や仕様は業界団体によって統一されているが、詳細はメーカによって異なる。各ガスメータサービスは、API接続方式が異なる場合がある。あるガス事業者が対象とするガスメータ70は、1つのガスメータ事業者の1種類のガスメータに限定されることは稀であり、上記例のように、複数のガスメータ事業者の複数種類のガスメータの混在が一般的である。
【0110】
ガス事業者の顧客システム2は、複数のガスメータ事業者のガスメータサービスを利用する場合には、それらの仕様の違いに対応する必要がある。顧客システム2は、利用する各ガスメータサービスに応じた実装や、契約・設定等が必要である。
【0111】
[3-2.ガスメータ業務-比較例]
図13は、実施の形態3に対する比較例として、
図12のガスメータ業務に関する実装例を示し、事業者システム1を介在しない場合を示す。
図13の比較例は、ガス事業者Aの顧客システム2Aと、ガスメータ事業者AのガスメータサービスAを提供する外部システム3Aと、ガス利用者EU1のガスメータ70(A1)との間で、自動検針に係わる通信を行う場合を示す。ガス利用者EU1のガスメータA1は、スマートメータであり、サーバ30Aと通信して自動検針等を行う機能を有する。
【0112】
サーバ30AのWebAPIは、ガスメータサービスAを提供する。ガスメータサービスAは、ガスメータ70に関する自動検針や状態監視やアラーム通知等を行うサービスを含む。サーバ30AのWebAPIは、例えばガスメータA1に対し、LPWAの通信で、LPガス使用量に関する自動検針の検針値の要求を送信する(ステップ1301)。ガスメータA1は、その要求を受信すると、検針値の応答をサーバ30Aへ送信する(ステップ1302)。また、ガスメータAは、定期的な状態確認を行う。その結果、ガスメータAは、ガスメータAの状態を表す情報を、サーバ30Aへ送信する。この状態を表す情報は、異常を検知した場合の警告である場合もある。ガスメータ70の状態は、例えば、LPガス残量警告、流量オーバー、微小漏洩等が挙げられる。
【0113】
サーバ30AのWebAPIは、ガスメータA1から、上記自動検針等に係わるデータ・情報を受信し、検針データとしてDBに格納し、ガスメータAの状態を把握する。サーバ30Aは、ガスメータAの状態に応じて、対処を行う。
【0114】
ガスメータ事業者Aの外部システム3Aは、例えば、需要家のガス利用者EUの個人情報については保持していない。ガス利用者EUの個人情報については、ガス事業者の顧客システム2がDBに保持し管理している。顧客システム2は、需要家のガス利用者EUのガス使用量を把握してガス料金請求書を作成するために、ガスメータ事業者の外部システム3にアクセスして、検針データを取得する。
【0115】
クライアント端末20は、オペレータOPの操作に基づいて、例えばガスメータ事業者Aのサーバ30Aにアクセスし、ガス利用者EU1のガスメータA1等に関する検針データ(特に検針値)の要求を送信する(ステップ1303)。このアクセスは、API接続方式に応じたHTTPS要求である。サーバ30Aは、要求に対し、DBから要求されている検針データを読み出し、検針データの応答を作成してクライアント端末20Aに送信する(ステップ1304)。クライアント端末20Aは、受信・取得した検針データをDBに格納する。
【0116】
上記のアクセス(ステップ1303,1304)は、オペレータOPによる手動操作に基づいてインターネット経由で行われるため、作業の手間やコストが大きい。また、顧客システム2Aは、利用する外部サービス(例えばガスメータサービスA,B)に応じたAPI接続のための実装等が必要である。
【0117】
また、ガスメータ事業者の外部システム3、またはガス事業者の顧客システム2からは、保守員Hの端末60に対し、通知等が送信される場合がある。例えば、ガス利用者EU1のガスメータA1の状態監視の結果、警告等が検知されたとする。この場合、例えば、ガス事業者Aの顧客システム2Aは、オペレータOPの作業として、前述のコールセンタ業務と同様に、点検等の作業依頼を、電話やメールで保守員Hの端末60へ送信する。また、例えば、ガスメータサービスAは、保守員Hへのアラーム通知サービスを含む場合がある。外部システム3Aのサーバ30Aは、ガスメータサービスAによって、ガスメータA1から警告等の情報を受信した場合に、予め設定された保守員Hの端末60へ、メールでアラーム通知1310を送信する。保守員Hの端末60は、アラーム通知1310を受信し、画面に表示する。保守員H1は、画面でアラーム通知1310の内容を見て確認する。アラーム通知1310の例は図示の通りである。アラーム通知1301のメールは、送信元としてガスメータ事業者の「アラーム通知サービス」、送信日時、送信先としてガス事業者の保守員H、主題として「残量警告(残15%)」、IMEI、発生時刻、他のメッセージ等が記載されている。
【0118】
本例では、このアラーム通知1310には、需要家のガス利用者EU1の個人情報(例えば名前や住所)の記載は無い。そのため、このアラーム通知1310のみでは、どの需要家のガスメータ70に関するアラーム通知であるかが不明である。保守員HまたはオペレータOPは、作業のためには、どの需要家のガスメータ70に関するアラーム通知であるかを確認する必要がある。このアラーム通知1310には、例えばIMEI(International Mobile Equipment Identifier)で示す識別情報は記載されている。IMEIは、携帯端末等が保有する識別番号である。保守員HまたはオペレータOPは、そのIMEIから、顧客システム2のDB(特に需要家の個人情報)を検索する(ステップ1320)。これにより、保守員HまたはオペレータOPは、どの需要家(名前、住所等)のガスメータ70に関するアラーム通知であるかを確認する。確認後、保守員Hは、指定された需要家のガス利用者EU1のガスメータA1に関する点検・保守等の作業を行い、作業完了報告をオペレータOPへ送信する。
【0119】
上記のように、比較例では、需要家の個人情報に配慮しているが、ガス事業者がガスメータ事業者のガスメータサービスのデータを利用する場合に、作業の手間やコストが大きい。例えば上記のようにDBを検索する作業(ステップ1320)を経ないと、アラーム通知1310に対応する需要家を特定できないので、その分作業効率が良くない。
【0120】
[3-3.コンピュータシステム-実装例]
図14は、実施の形態3のコンピュータシステムを含む、システム100の構成を示す。このコンピュータシステムは、
図12のガスメータ業務に関する実装構成例である。
図14の構成は、
図13の比較例の構成に対し、顧客システム2Aとガスメータ事業者Aの外部システム3Aとの間に、事業者システム1が介在する。また、この構成では、外部サービスXとしてSNS・チャットサービスを提供する外部事業者Xの外部システム3Xを有する。
図14の例では、顧客Aであるガス事業者Aの顧客システム2Aと、外部事業者Aであるガスメータ事業者Aの外部システム3Aと、外部事業者Xの外部システム3Xと、需要家のガス利用者EU1のガスメータA1とを示すが、これに限らず、複数が存在する。本例では、顧客システム2Aは、外部サービスAおよび外部サービスXを利用する。
【0121】
本実装例でも、比較例と同様に、ガスメータ事業者Aは、ガスメータサービスAとして、需要家のスマートメータであるガスメータ70との間で自動検針等を行い、検針データをDBに格納する。ガスメータ事業者Aは、需要家の個人情報を保持しておらず、顧客システム2AがDBに需要家の個人情報を保持している。ガスメータサービスAは、比較例と同様に、自動検針、状態監視、アラーム通知等を含む。例えばアラーム通知には需要家の個人情報が含まれない。
【0122】
図14の例では、ガス事業者Aは、保守員Hへのアラーム通知および作業依頼の際に、外部サービスXとしてSNS・チャットサービスを利用する。これにより、ガスメータ業務を効率化する。
【0123】
図14中のステップ1401~1406のシーケンスは、顧客システム2Aが、事業者システム1を介して、外部システム3AのガスメータサービスAから、ガスメータ70の自動検針や状態監視に係わるデータを取得する流れを示す。なお、予め事業者システム1に設定しておくことで、ステップ1401を省略可能である。このシーケンスは、前述と同様に、外部サービスAとのAPI接続方式に応じた接続制御がされる。このシーケンスは、前述の
図10および
図11のような安全な通信の仕組みを同様に適用できる。
【0124】
ステップ1407は、顧客システム2Aにおけるクライアント端末20AとDBとの間でのデータの格納や読み出しである。DBには、需要家の個人情報(名前や住所等)がセキュアに保持されている。例えば、クライアント端末20Aは、ステップ1406で、事業者システム1のサーバ10を通じて、ガスメータサービスAからの検針データまたはアラーム通知等のデータを受信・取得し、そのデータをDBに格納する。本例では、ガスメータサービスAは、ガス利用者EU1のガスメータA1に関する警告等の検知に基づいて、個人情報を含まないアラーム通知を、顧客システム2Aへ送信する(ステップ1406)。この場合、クライアント端末20AのオペレータOPは、そのアラーム通知に含まれるID(例えば
図13と同様のIMEI)等の情報を用いて、DBを検索する(ステップ1407)。これにより、そのIDとDB内の需要家の個人情報とをマッチングする。この結果、クライアント端末20Aは、そのアラーム通知に関して該当する需要家の情報(名前、住所等)や、対応する保守員Hの情報を得る。すなわち、オペレータOPが保守員Hへ需要家のガスメータ70の点検・保守の作業を依頼するために必要な情報が得られる。このステップ1407の処理は、予めクライアント端末20Aでのプログラム処理として設定しておくことで、オペレータOPの操作を最低限として自動化することができる。
【0125】
ステップ1408で、クライアント端末20Aは、上記DBから得た諸情報を用いて、需要家のガスメータ70の状態に関するアラーム通知、ならびにオペレータOPから保守員Hへの作業依頼のための情報を作成する。具体的には、クライアント端末20Aは、その情報として、事業者システム1のサーバ10のWebAPI120へのHTTPS要求を作成し、そのHTTPS要求をサーバ10の外部公開部分へ宛てて送信する。このHTTPS要求は、ガス利用者の個人情報等を含むが、セキュア通信で保護される。
【0126】
ステップ1409で、事業者システム1のサーバ10(詳細には
図2のWebサーバ11およびAPサーバ12)のWebAPI120は、上記HTTPS要求を受け取り、その要求の内容がアラーム通知および作業依頼であるため、設定情報に基づいて、外部システム3Xの外部サービスXの利用のためのHTTPS要求を作成する。サーバ10のWebAPI120は、そのHTTPS要求を、外部システム3Xのサーバ30XのWebAPIへ送信する。このHTTPS要求は、ガス利用者等の個人情報を含むが、セキュア通信で保護される。ステップ1409のアクセスについても、サーバ30XとのAPI接続方式(例えばコールバック方式)に応じた接続制御が行われる。
【0127】
ステップ1410で、外部システム3Xのサーバ30XのWebAPIは、上記HTTPS要求を受け取り、その要求の内容として含まれている情報に基づいて、指定された保守員Hの端末60へのアラーム通知および作業依頼の情報を、SNS・チャットサービス上のメッセージとして作成する。サーバ30XのWebAPIは、そのアラーム通知・作業依頼のメッセージを、保守員H1の端末60へプッシュ通知として送信する。
【0128】
外部サービスXのSNS・チャットサービスでの画面例は図示の通りである。ステップ1410のプッシュ通知の情報は、主題、発生時刻、お客様番号、住所、氏名、電話番号等を含む。このプッシュ通知の送信元は、例えば所定の「bot」(SNS・チャットサービス上で自動的に働くアカウントを指す)とされる。主題は例えば「残量警告(残15%)」である。お客様番号は、ガス事業者が管理している該当するガス利用者EU(EU1)の識別情報である。住所、氏名、電話番号は、そのガス利用者の個人情報である。
【0129】
ステップ1411で、保守員H1は、端末60の画面で、ステップ1410のプッシュ通知の情報を確認し、このプッシュ通知に記載のアラーム通知・作業依頼の情報に従って、指定された需要家に訪問してガスメータ70の点検・保守等の作業を行う。保守員H1は、作業後、端末60の画面で、ステップ1410のプッシュ通知に対する返信として作業完了報告等を入力し、送信する。この際、端末60は、
図10と同様に、HTTPSのPOSTメソッドを用いてデータを送信する。
【0130】
ステップ1412で、外部システム3Xのサーバ30XのWebAPIは、SNS・チャットサービス上で、ステップ1411の保守員H1の端末60からの作業完了報告の返信を受け取る。サーバ30Xは、その作業完了報告のデータを含むHTTPS応答を、事業者システム1のサーバ10へ例えばコールバックとして送信する。
【0131】
ステップ1413で、事業者システム1のサーバ10は、上記外部サービス3XからのHTTPS応答をコールバックとして受け取る。サーバ10は、
図10および
図11と同様の仕組みで、顧客システム2Aのクライアント端末20Aへ、作業完了報告のデータを含むHTTPS応答を送信する。そして、クライアント端末20Aは、サーバ10から問合せに応じて受け取った作業完了報告のデータをDBに格納する。オペレータOPは、クライアント端末20Aの画面で、作業完了報告等を確認できる。
【0132】
[3-4.効果等]
図14の実施の形態3での実装例でも、実施の形態2と同様に、顧客システム2は、事業者システム1との間で、安全な通信の仕組みで、外部サービスを容易に利用することができる。特に、この実装例では、ガス事業者の顧客システム2は、種類が異なる外部サービスAおよび外部サービスXを、事業者システム1を介して統合的に利用できる。その結果、ガス事業者は、ガスメータ業務の効率化ができる。
【0133】
上記例では、需要家のガスメータ70からは不定的に警告等の状態を表す情報が発生・発報する。顧客システム2Aは、外部のガスメータ事業者AのガスメータサービスAからのアラーム通知を取得し、DBの需要家の情報を自動的に検索して、保守員Hへのアラーム通知・作業依頼に必要な情報を得る。顧客システム2Aは、その情報を、事業者システム1を介して外部システム3Xへ送信し、外部サービスXとしてSNS・チャットサービス上でのアラーム通知・作業依頼として、保守員Hの端末60へ通知できる。そして、顧客システム2Aは、保守員Hからの作業完了報告を、外部サービスXおよび事業者システム1を介して取得することができる。これにより、オペレータOPおよび保守員Hの手間等が低減できる。
【0134】
上記例では、ガス事業者に対する外部事業者として、ガスメータ事業者Aと、SNS・チャットサービスを提供する外部事業者Xとの、直接的には全く関連性が無い2種類の外部事業者を有する。事業者システム1は、これらの2種類の外部事業者のWebAPIを伴う外部サービスを仲介し、つなぎ合わせて、顧客であるガス事業者に対し、統合的なサービスとして提供できる。これにより、ガス事業者は、業務に、複数の外部サービスをシームレスで統一感がある形で統合したサービスとして享受することができる。ガス事業者は、このような特有の形態での外部サービス利用を、前述と同様に、契約や設定の手間も少なく、低いコストで実現できる。
【0135】
顧客が利用する複数の外部サービスの組合せは、上記例に限らず、顧客の選択に応じて多様な組合せが可能である。例えば、顧客システム2Aは、さらに、他の外部サービスとして決済代行サービスを組み合わせて利用してもよい。
【0136】
実施の形態3の例のように、顧客がガス事業者である場合で、1つの顧客システムからみて複数のガスメータ事業者の外部システム(例えばクラウドコンピューティングシステム)があり、ガスメータ事業者毎に外部サービス等の仕様が異なる場合がある。この場合にも、事業者システム1が介在し、それらの仕様の差異を吸収または低減し、顧客システム2に対し、インタフェースを共通化した形でサービスとして提供できる。例えば
図12の顧客システム2Aは、外部システムAの外部サービスAと外部システムBの外部サービスBとからそれぞれ検針データを取得する場合に、実施の形態3では、事業者システム1を介して、それぞれの検針データを容易に取得できる。顧客システム2Aは、それぞれの外部サービスに対するログインやAPI接続が不要である。したがって、顧客システム2Aは、それらの検針データを統合してガス使用量通知等の業務を行う場合にも、効率化が実現できる。
【0137】
以上、本発明を実施の形態に基づいて具体的に説明したが、本発明は前述の実施の形態に限定されず、要旨を逸脱しない範囲で種々変更可能である。実施の形態では顧客の具体例としてガス事業者の場合を説明したが、これに限らず、例えば水道事業者や電気事業者等のインフラ事業者に関しても、同様に適用可能である。
【符号の説明】
【0138】
1…事業者システム(クラウドコンピューティングシステム/コンピュータシステム)、2…顧客システム(基幹システム)、3…外部事業者システム(外部システム)、4…、5…、6…、7…、8…、9…、10…サーバ(クラウドサーバ)、11…Webサーバ(第1サーバ)、12…アプリケーションサーバ(第2サーバ)、13…DBサーバ(第3サーバ)、14…管理サーバ、20…クライアント端末、21…専用ツール、22…画面(契約設定確認画面)、30…サーバ、100…システム、101,102,301…外部公開部分、120…WebAPI,130…DB、140…契約・設定管理機能、141…契約設定情報、150…管理端末、OP…オペレータ、AD…管理者。