JP2022046230A - 通信装置、プログラム及び通信方法 - Google Patents

通信装置、プログラム及び通信方法 Download PDF

Info

Publication number
JP2022046230A
JP2022046230A JP2020152167A JP2020152167A JP2022046230A JP 2022046230 A JP2022046230 A JP 2022046230A JP 2020152167 A JP2020152167 A JP 2020152167A JP 2020152167 A JP2020152167 A JP 2020152167A JP 2022046230 A JP2022046230 A JP 2022046230A
Authority
JP
Japan
Prior art keywords
message
processor
condition
subscriber
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020152167A
Other languages
English (en)
Inventor
悠介 箕浦
Yusuke Minoura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba TEC Corp
Original Assignee
Toshiba TEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba TEC Corp filed Critical Toshiba TEC Corp
Priority to JP2020152167A priority Critical patent/JP2022046230A/ja
Priority to US17/338,608 priority patent/US11647093B2/en
Publication of JP2022046230A publication Critical patent/JP2022046230A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1859Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

【課題】登録されたサブスクライバーのうちの一部のサブスクライバーにだけメッセージを送信することができる通信装置、プログラム及び通信方法を提供すること。【解決手段】実施形態の通信装置は、受信部、判定部及び送信部を備える。受信部は、送信元から送信されるメッセージを受信する。判定部は、前記メッセージに含まれる文字列が所定の条件を満たすことを判定する。送信部は、前記条件を満たす場合、前記メッセージを、前記条件に対応する送信先に送信する。【選択図】図1

Description

本発明の実施形態は、通信装置、プログラム及び通信方法に関する。
メッセージを登録されたサブスクライバーに一斉に送信するサブスクライブと呼ばれるシステムがある。このようなシステムでは、登録されたサブスクライバーのうちの一部のサブスクライバーにだけメッセージを送信することはできない。
特開2007-234014号公報
本発明の実施形態が解決しようとする課題は、登録されたサブスクライバーのうちの一部のサブスクライバーにだけメッセージを送信することができる通信装置、プログラム及び通信方法を提供することである。
実施形態の通信装置は、受信部、判定部及び送信部を備える。受信部は、送信元から送信されるメッセージを受信する。判定部は、前記メッセージに含まれる文字列が所定の条件を満たすことを判定する。送信部は、前記条件を満たす場合、前記メッセージを、前記条件に対応する送信先に送信する。
第1実施形態に係るサブスクライブシステムの構成を示すブロック図。 図1中のサーバー装置の要部回路構成の一例を示すブロック図。 図2中の補助記憶装置に記憶されるサブスクライブテーブルの一例を示す図。 図1中のパブリッシャーの要部回路構成の一例を示すブロック図。 図1中のサブスクライバーの要部回路構成の一例を示すブロック図。 図2中のプロセッサーによる処理の一例を示すフローチャート。 第2実施形態に係るサブスクライブシステムの構成を示すブロック図。
以下、いくつかの実施形態に係るサブスクライブシステムについて図面を用いて説明する。なお、以下の実施形態の説明に用いる各図面は、説明のため、構成を省略して示している場合がある。また、各図面及び本明細書中において、同一の符号は同様の要素を示す。
〔第1実施形態〕
図1は、第1実施形態に係るサブスクライブシステム1の構成を示すブロック図である。サブスクライブシステム1は、パブリッシャー200から送信されるメッセージを、登録されたサブスクライバー300に送信するシステムである。サブスクライブシステム1は、一例として、サーバー装置100、複数のパブリッシャー200及び複数のサブスクライバー300を含む。なお、サーバー装置100、パブリッシャー200及びサブスクライバー300のそれぞれの数は、図1に示す数に限らない。
サーバー装置100及びパブリッシャー200は、ネットワークNW1に接続する。ネットワークNW1は、インターネット又はLAN(local area network)などを含む通信網である。ネットワークNW1は、無線回線でも良いし有線回線でも良く、無線回線と有線回線とが混在していても良い。
サーバー装置100及びサブスクライバー300は、ネットワークNW2に接続する。ネットワークNW2は、インターネット又はLANなどを含む通信網である。ネットワークNW2は、無線回線でも良いし有線回線でも良く、無線回線と有線回線とが混在していても良い。なお、ネットワークNW1とネットワークNW2は、共通の通信網であっても良い。
図2は、サーバー装置100の要部回路構成の一例を示すブロック図である。
サーバー装置100は、パブリッシャー200から送信されるメッセージをサブスクライバー300に送信する。サーバー装置100は、一例として、プロセッサー110、ROM(read-only memory)120、RAM(random-access memory)130、補助記憶装置140及び通信インターフェース150を含む。そして、バス160などが、これら各部を接続する。なお、サーバー装置100は、通信装置の一例である。
プロセッサー110は、サーバー装置100の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー110は、ROM120又は補助記憶装置140などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、サーバー装置100の各種の機能を実現するべく各部を制御する。また、プロセッサー110は、当該プログラムに基づいて後述する処理を実行する。なお、当該プログラムの一部又は全部は、プロセッサー110の回路内に組み込まれていても良い。プロセッサー110は、例えば、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサー110は、これらのうちの複数を組み合わせたものである。
ROM120は、プロセッサー110を中枢とするコンピューターの主記憶装置に相当する。ROM120は、専らデータの読み出しに用いられる不揮発性メモリである。ROM120は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ROM120は、プロセッサー110が各種の処理を行う上で使用するデータなども記憶する。
RAM130は、プロセッサー110を中枢とするコンピューターの主記憶装置に相当する。RAM130は、データの読み書きに用いられるメモリである。RAM130は、プロセッサー110が各種の処理を行う上で一時的に使用するデータを記憶するワークエリアなどとして利用される。RAM130は、典型的には揮発性メモリである。
補助記憶装置140は、プロセッサー110を中枢とするコンピューターの補助記憶装置に相当する。補助記憶装置140は、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disk drive)又はフラッシュメモリなどである。補助記憶装置140は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶装置140は、プロセッサー110が各種の処理を行う上で使用するデータ、プロセッサー110での処理によって生成されたデータ及び各種の設定値などを記憶する。
補助記憶装置140が記憶するプログラムは、メッセージプログラム141及び通信ミドルウェア142を含む。
メッセージプログラム141は、メッセージの送信先の決定などの処理を行うソフトウェアである。
通信ミドルウェア142は、メッセージの送受信などの通信に関する処理を行うソフトウェアである。
また、補助記憶装置140は、サブスクライブデータベースを記憶する。サブスクライブデータベースは、メッセージの種類(トピック)ごとに、登録されているサブスクライバー300を関連付ける。また、サブスクライブデータベースは、一例として、図3に示すようなサブスクライブテーブルT1を含む。
図3は、補助記憶装置140に記憶されるサブスクライブテーブルT1の一例を示す図である。サブスクライブテーブルT1は、メッセージの種類ごとにフィルタリング対象であるか否かを示す情報を関連付ける。図3では、一例として、フィルタリング対象であるメッセージの種類をYesで示し、フィルタリング対象でないメッセージの種類をNoで示している。また、サブスクライブテーブルT1は、メッセージの種類ごとに0個以上のフィルタリング条件を関連付ける。また、サブスクライブテーブルT1は、フィルタリング条件ごとに、送信先情報を関連付ける。送信先情報は、送信先を特定する情報である。
通信インターフェース150は、サーバー装置100がネットワークNW1及びネットワークNW2などを介して通信するためのインターフェースである。サーバー装置100は、通信ミドルウェアを用いて通信インターフェース150を制御する。
バス160は、コントロールバス、アドレスバス及びデータバスなどを含み、サーバー装置100の各部で授受される信号を伝送する。
図4は、パブリッシャー200の要部回路構成の一例を示すブロック図である。
パブリッシャー200は、サブスクライバー300へのメッセージを送信する装置である。パブリッシャー200は、例えば、PC(personal computer)又はPOS(point of sale)端末などである。パブリッシャー200は、一例として、プロセッサー210、ROM220、RAM230、補助記憶装置240、通信インターフェース250及び制御インターフェース260を含む。そして、バス270などが、これら各部を接続する。
プロセッサー210は、パブリッシャー200の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー210は、ROM220又は補助記憶装置240などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、パブリッシャー200の各種の機能を実現するべく各部を制御する。また、プロセッサー210は、当該プログラムに基づいて後述する処理を実行する。なお、当該プログラムの一部又は全部は、プロセッサー210の回路内に組み込まれていても良い。プロセッサー210は、例えば、CPU、MPU、SoC、DSP、GPU、ASIC、PLD又はFPGAなどである。あるいは、プロセッサー210は、これらのうちの複数を組み合わせたものである。
ROM220は、プロセッサー210を中枢とするコンピューターの主記憶装置に相当する。ROM220は、専らデータの読み出しに用いられる不揮発性メモリである。ROM220は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ROM220は、プロセッサー210が各種の処理を行う上で使用するデータなども記憶する。
RAM230は、プロセッサー210を中枢とするコンピューターの主記憶装置に相当する。RAM230は、データの読み書きに用いられるメモリである。RAM230は、プロセッサー210が各種の処理を行う上で一時的に使用するデータを記憶するワークエリアなどとして利用される。RAM230は、典型的には揮発性メモリである。
補助記憶装置240は、プロセッサー210を中枢とするコンピューターの補助記憶装置に相当する。補助記憶装置240は、例えばEEPROM、HDD又はフラッシュメモリなどである。補助記憶装置240は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶装置240は、プロセッサー210が各種の処理を行う上で使用するデータ、プロセッサー210での処理によって生成されたデータ及び各種の設定値などを記憶する。
通信インターフェース250は、パブリッシャー200がネットワークNW1などを介して通信するためのインターフェースである。
制御インターフェース260は、各種装置261と接続するためのインターフェースである。パブリッシャー200は、制御インターフェース260を介して各種装置と通信する。パブリッシャー200は、制御インターフェース260を介して各種装置261を制御する。
各種装置261は、例えば、パブリッシャー200の周辺機器などの、パブリッシャーと接続可能な装置である。
バス270は、コントロールバス、アドレスバス及びデータバスなどを含み、パブリッシャー200の各部で授受される信号を伝送する。
図5は、サブスクライバー300の要部回路構成の一例を示すブロック図である。
サブスクライバー300は、パブリッシャーからのメッセージを受信する装置である。サブスクライバー300は、例えば、PC又はサーバーなどである。あるいは、サブスクライバー300は、各種装置361を制御する装置などである。サブスクライバー300は、一例として、プロセッサー310、ROM320、RAM330、補助記憶装置340、通信インターフェース350及び制御インターフェース360を含む。そして、バス370などが、これら各部を接続する。
プロセッサー310は、サブスクライバー300の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー310は、ROM320又は補助記憶装置340などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、サブスクライバー300の各種の機能を実現するべく各部を制御する。また、プロセッサー310は、当該プログラムに基づいて後述する処理を実行する。なお、当該プログラムの一部又は全部は、プロセッサー310の回路内に組み込まれていても良い。プロセッサー310は、例えば、CPU、MPU、SoC、DSP、GPU、ASIC、PLD又はFPGAなどである。あるいは、プロセッサー310は、これらのうちの複数を組み合わせたものである。
ROM320は、プロセッサー310を中枢とするコンピューターの主記憶装置に相当する。ROM320は、専らデータの読み出しに用いられる不揮発性メモリである。ROM320は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ROM320は、プロセッサー310が各種の処理を行う上で使用するデータなども記憶する。
RAM330は、プロセッサー310を中枢とするコンピューターの主記憶装置に相当する。RAM330は、データの読み書きに用いられるメモリである。RAM330は、プロセッサー310が各種の処理を行う上で一時的に使用するデータを記憶するワークエリアなどとして利用される。RAM330は、典型的には揮発性メモリである。
補助記憶装置340は、プロセッサー310を中枢とするコンピューターの補助記憶装置に相当する。補助記憶装置340は、例えばEEPROM、HDD又はフラッシュメモリなどである。補助記憶装置340は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶装置340は、プロセッサー310が各種の処理を行う上で使用するデータ、プロセッサー310での処理によって生成されたデータ及び各種の設定値などを記憶する。
通信インターフェース350は、サブスクライバー300がネットワークNW2などを介して通信するためのインターフェースである。
制御インターフェース360は、各種装置361と接続するためのインターフェースである。サブスクライバー300は、制御インターフェース360を介して各種装置361と通信する。サブスクライバー300は、制御インターフェース360を介して各種装置361を制御する。
各種装置361は、例えば、サブスクライバー300の周辺機器などの、サブスクライバー300と接続可能な装置である。各種装置361は、例えばプリンター、カメラ、ディスプレイ又は釣銭機などである。
バス370は、コントロールバス、アドレスバス及びデータバスなどを含み、サブスクライバー300の各部で授受される信号を伝送する。
以下、実施形態に係るサブスクライブシステム1の動作を図6などに基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図6は、サーバー装置100のプロセッサー110による処理の一例を示すフローチャートである。プロセッサー110は、例えば、ROM120又は補助記憶装置140などに記憶されたプログラムに基づいて図6の処理を実行する。
サーバー装置100のプロセッサー110は、例えば、メッセージプログラム141の起動にともない図6に示す処理を開始する。
パブリッシャー200は、サーバー装置100にメッセージ情報を送信する。メッセージ情報は、例えば、メッセージ及び、当該メッセージの種類を示す種類情報を含む。当該メッセージ情報は、サーバー装置100の通信インターフェース150によって受信される。メッセージ情報を送信したパブリッシャー200は、当該メッセージ情報に含まれるメッセージの送信元である。
パブリッシャー200がPOS端末である場合、当該パブリッシャー200が送信するメッセージは、一例として、レシートデータである。また、メッセージのその他の例としては、メールマガジンなどである。
一方、図6のACT11においてサーバー装置100のプロセッサー110は、通信インターフェース150によってメッセージ情報が受信されるのを待ち受けている。ここで、プロセッサー110は、通信ミドルウェア142によって通信インターフェース150を制御することで受信処理を行う。プロセッサー110は、メッセージ情報が受信されたならば、ACT11においてYesと判定してACT12へと進む。なお、ここで受信されたメッセージ情報に含まれるメッセージを、以下「受信メッセージ」という。また、当該メッセージ情報に含まれるメッセージの種類を、以下「受信種類」という。
したがって、プロセッサー110は、通信インターフェース150と協働して通信ミドルウェア142に基づき受信処理を行うことで、メッセージを受信する受信部の一例として機能する。また、プロセッサー110は、通信ミドルウェア142に基づき受信処理を行うことで、メッセージの受信を制御する受信制御部の一例として機能する。
ACT12においてプロセッサー110は、受信メッセージがフィルタリング対象であるか否かを判定する。すなわち、プロセッサー110は、サブスクライブテーブルT1を参照して、受信種類にフィルタリング対象であることを示す情報が関連付けられているか否かを判定する。プロセッサー110は、受信メッセージがフィルタリング対象であるならば、ACT12においてYesと判定してACT13へと進む。
ACT13においてプロセッサー110は、サブスクライブテーブルT1を参照して、受信種類に関連付けられているフィルタリング条件を全て取得する。
ACT14においてプロセッサー110は、受信メッセージを解析することで、受信メッセージがACT13で取得したフィルタリング条件を満たすか否かを判定する。フィルタリング条件は、例えば、メッセージが特定の文字列を含むことである。あるいは、フィルタリング条件は、例えば、メッセージが特定の文字列を含まないことである。また、フィルタリング条件は、第1の特定の文字列及び第2の特定の文字列を含むこと、又は第1の特定の文字列を含み第2の特定の文字列を含まないことのように、複数の文字列のそれぞれを含む又は含まない条件であっても良い。また、フィルタリング条件は、複数の特定の文字列を文字列A、文字列B、文字列C、…とした場合、A AND B AND C、又はA OR (B AND C)のように、OR、AND、NOT、NOR、XOR又はNANDなどを用いて条件を定めたものでも良い。また、フィルタリング条件は、正規表現などを用いて条件を定めたものでも良い。なお、文字列は、例えば、テキスト形式、バイナリ形式又はその他の形式である。
一例として、受信種類がレシートデータである場合、フィルタリング条件は、電子レシートであることを示す特定の文字列を含むことである。
以上より、プロセッサー110は、ACT14の処理を行うことで、メッセージに含まれる文字列が所定の条件を満たすことを判定する判定部の一例として機能する。
ACT15においてプロセッサー110は、受信メッセージをフィルタリングするか否かを判定する。プロセッサー110は、ACT14におけるメッセージ解析においてフィルタリング条件を満たすと判定した場合、フィルタリングすると判定する。プロセッサー110は、受信メッセージをフィルタリングすると判定するならば、ACT15においてYesと判定してACT16へと進む。
ACT16においてプロセッサー110は、サブスクライブテーブルT1を参照して、ACT14において条件を満たしたフィルタリング条件に関連付けられている送信先情報を取得する。そして、プロセッサー110は、当該送信先情報に基づき、受信メッセージの送信先を決定する。プロセッサー110は、例えば、サブスクライブテーブルT1において受信種類に関連付けられているサブスクライバー300のうち、当該送信先情報が示す条件を満たすサブスクライバー300を送信先として決定する。送信先情報は、一例として、送信先であるサブスクライバー300を列挙したものである。この場合、プロセッサー110は、送信先情報において列挙されているサブスクライバー300を送信先として決定する。
一例として、受信種類がレシートデータであり、フィルタリング条件が、電子レシートであることを示す特定の文字列を含むことである場合、送信先のサブスクライバー300は、電子レシートの配信を行う装置、電子レシートを保存する装置、及びジャーナルを保存する装置などである。
一例として、受信種類がレシートデータであり、フィルタリング条件が、電子レシートであることを示す特定の文字列を含まないことである場合、送信先のサブスクライバー300は、レシートの印刷を行うプリンターを制御する装置、及びジャーナルを保存する装置などである。
ACT17においてプロセッサー110は、ACT16で送信先に決定したサブスクライバー300全てに受信メッセージを送信するように通信インターフェース150に対して指示する。ここで、プロセッサー110は、通信ミドルウェア142によって通信インターフェース150を制御することで送信処理を行う。この送信の指示を受けて通信インターフェース150は、当該受信メッセージを各サブスクライバー300に送信する。送信された当該受信メッセージは、サブスクライバー300の通信インターフェース350によって受信される。
以上より、プロセッサー110は、ACT16及びACT17の処理を行うことで、メッセージをフィルタリング条件に対応する送信先に送信する送信部の一例として機能する。
一方、サーバー装置100が送信されたメッセージを受信したサブスクライバー300は、当該メッセージに基づく制御処理を行う。例えば、サブスクライバー300は、ディスプレイ(各種装置361)を制御してメッセージに基づく画像を表示させる。例えば、サブスクライバー300は、プリンター(各種装置361)を制御して、メッセージに基づきレシートなどの画像を印刷させる。例えば、サブスクライバー300は、メッセージを補助記憶装置340に記憶する。例えば、サブスクライバー300は、仮想プリンターを用いてメッセージに基づく画像を仮想的に印刷する。例えば、サブスクライバー300は、メッセージに基づき電子レシートの配信を行う。例えば、サブスクライバー300は、メッセージをジャーナルとして保存する。
一方、図6のACT18においてサーバー装置100のプロセッサー110は、必要に応じて各種処理を行う。
ACT19においてプロセッサー110は、メッセージプログラム141を終了するように指示する入力があったか否かを判定する。プロセッサー110は、メッセージプログラム141を終了するように指示する入力があったならば、ACT19においてYesと判定して図6に示す処理を終了する。対して、プロセッサー110は、メッセージプログラム141を終了するように指示する入力がなかったならば、ACT19においてNoと判定してACT11へと戻る。
なお、プロセッサー110は、メッセージがフィルタリング対象でないならば、ACT12においてNoと判定してACT20へと進む。また、プロセッサー110は、受信メッセージをフィルタリングすると判定しないならば、ACT15においてNoと判定してACT20へと進む。
ACT20においてプロセッサー110は、サブスクライブデータベースにおいて受信種類に関連付けられているサブスクライバー300に受信メッセージを送信するように通信インターフェース150に対して指示する。ここで、プロセッサー110は、通信ミドルウェア142によって通信インターフェース150を制御することで送信処理を行う。この送信の指示を受けて通信インターフェース150は、当該受信メッセージを当該各サブスクライバー300に送信する。送信された当該受信メッセージは、サブスクライバー300の通信インターフェース350によって受信される。プロセッサー110は、ACT20の処理の後、ACT18へと進む。
一方、サーバー装置100から送信されたメッセージを受信したサブスクライバー300は、前述と同様に当該メッセージに基づく処理を行う。
第1実施形態のサブスクライブシステム1によれば、サーバー装置100は、パブリッシャー200から送信されるメッセージを受信する。そして、サーバー装置100は、当該メッセージに含まれる文字列がフィルタリング条件を満たす場合、当該フィルタリング条件に関連付けた送信先に当該メッセージを送信する。これにより、第1実施形態のサーバー装置100は、登録されているサブスクライバー300全てにメッセージを送信するのではなく、フィルタリングをすることで、登録されているサブスクライバー300のうちの一部に対してメッセージを送信することができる。従来のシステムでは、送信対象を限定する場合には、例えば、メッセージを細分化して種類分けし、それぞれに対して登録又は非登録を決定する必要がある。これに対して、第1実施形態のサブスクライブシステム1を用いることで、このような細分化が不要となる。あるいは、従来のシステムでは、送信対象を限定する場合には、パブリッシャー200のソフトウェアの変更が必要である。これに対して、第1実施形態のサブスクライブシステム1を用いる場合、パブリッシャー200のソフトウェアの変更は不要であり、パブリッシャー200のソフトウェアは共通のソフトウェアで良い。
また、第1実施形態のサブスクライブシステム1によれば、プリンター、ジャーナル、電子レシートなどの各サービスをサブスクライバー300が制御することで、複数のサービスの機能を共通化及び独立化しやすい。
また、第1実施形態のサブスクライブシステム1によれば、サーバー装置100は、メッセージが特定の文字列を含む又は含まないことによりフィルタリングを行う。したがって、第1実施形態のサブスクライブシステム1は、メッセージに特別な変更を加えなくてもフィルタリングが可能である。
また、第1実施形態のサブスクライブシステム1によれば、メッセージは一例としてレシートデータである。メッセージがレシートデータであることにより、POSにおいて電子レシート及び紙のレシートなどの複数の種類のレシートデータを共通化して扱うことができる。そして、第1実施形態のサーバー装置100は、レシートデータを適切にフィルタリングすることにより、レシートデータが電子レシートデータである場合と紙のレシート用のデータである場合とで異なるサブスクライバー300を送信対象とすることができる。これにより、第1実施形態のサーバー装置100は、紙のレシート用のデータである場合にのみプリンターに印刷を行わせることなどが可能となる。
〔第2実施形態〕
第2実施形態では、第1実施形態と異なる部分について説明する。
図7は、第2実施形態に係るサブスクライブシステム2の構成の一例を示す図である。サブスクライブシステム2は、サーバー装置100及び複数のパブリッシャー200を含む。なお、サーバー装置100及びパブリッシャー200のそれぞれの数は、図7に示す数に限らない。
第2実施形態のサーバー装置100のハードウェア構成は、図2と同様である。また、第2実施形態のサーバー装置100のプロセッサー110は、メッセージプログラム141及び通信ミドルウェア142を実行する。また、プロセッサー110は、複数のサブスクライバー部170として機能する。
サブスクライバー部170は、仮想的にサブスクライバー300として機能する。
第1実施形態において述べたように、サブスクライバー300は、受信したメッセージに基づく制御処理を行う。したがって、サブスクライバー部170は、メッセージに基づく制御を行う制御部の一例として機能する。
第2実施形態のサーバー装置100は、第1実施形態と同様に図6に示す処理を行う。ただし、サーバー装置100は、サブスクライバー300に代えてサブスクライバー部170にメッセージを送信する。また、サブスクライバー部170は、第1実施形態のサブスクライバー300と同様の動作を行う。
第2実施形態のサブスクライブシステム2は、第1実施形態のサブスクライブシステム1と同様の効果が得られる。
第2実施形態のサブスクライブシステム2によれば、サーバー装置100が仮想的にサブスクライバー300としても機能する。したがって、第2実施形態のサブスクライブシステム2では、サーバー装置100とサブスクライバー300との間の通信にかかる遅延がほとんど発生しない。
上記の実施形態は以下のような変形も可能である。
プロセッサー110、プロセッサー210又はプロセッサー310は、上記実施形態においてプログラムによって実現する処理の一部又は全部を、回路のハードウェア構成によって実現するものであっても良い。
上記実施形態における各装置は、例えば、上記の各処理を実行するためのプログラムが記憶された状態で各装置の管理者などへと譲渡される。あるいは、当該各装置は、当該プログラムが記憶されない状態で当該管理者などに譲渡される。そして、当該プログラムが別途に当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作に基づいて当該各装置に記憶される。このときのプログラムの譲渡は、例えば、ディスクメディア又は半導体メモリなどのようなリムーバブルな記憶媒体を用いて、あるいはインターネット又はLANなどを介したダウンロードにより実現できる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1,2……サブスクライブシステム、100……サーバー装置、110,210,310……プロセッサー、120,220,320……ROM、130,230,330……RAM、140,240,340……補助記憶装置、141……メッセージプログラム、142……通信ミドルウェア、150,250,350……通信インターフェース、160,270,370……バス、170……サブスクライバー部、200……パブリッシャー、260,360……制御インターフェース、261,361……各種装置、300……サブスクライバー

Claims (6)

  1. 送信元から送信されるメッセージを受信する受信部と、
    前記メッセージに含まれる文字列が所定の条件を満たすことを判定する判定部と、
    前記条件を満たす場合、前記メッセージを、前記条件に対応する送信先に送信する送信部と、を備える通信装置。
  2. 前記条件は、前記メッセージに含まれる文字列が所定の文字列を含む又は含まないことである、請求項1に記載の通信装置。
  3. 前記メッセージは、レシートデータである、請求項1又は請求項2に記載の通信装置。
  4. 前記送信部によって送信された前記メッセージを受信し、前記メッセージに基づく制御をする制御部をさらに備える、請求項1乃至請求項3のいずれか1項に記載の通信装置。
  5. 通信装置が備えるプロセッサーを、
    送信元から送信されるメッセージの受信を制御する受信制御部と、
    前記メッセージに含まれる文字列が所定の条件を満たすことを判定する判定部と、
    前記条件を満たす場合、前記メッセージを、前記条件に対応する送信先に送信する送信部と、して機能させるプログラム。
  6. 送信元から送信されるメッセージを受信し、
    前記メッセージに含まれる文字列が所定の条件を満たすことを判定し、
    前記条件を満たす場合、前記メッセージを、前記条件に対応する送信先に送信する、通信方法。
JP2020152167A 2020-09-10 2020-09-10 通信装置、プログラム及び通信方法 Pending JP2022046230A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020152167A JP2022046230A (ja) 2020-09-10 2020-09-10 通信装置、プログラム及び通信方法
US17/338,608 US11647093B2 (en) 2020-09-10 2021-06-03 Server device configured to transmit a message received from a publisher device to one or more subscriber devices based on the message type and condition associated therewith

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020152167A JP2022046230A (ja) 2020-09-10 2020-09-10 通信装置、プログラム及び通信方法

Publications (1)

Publication Number Publication Date
JP2022046230A true JP2022046230A (ja) 2022-03-23

Family

ID=80471044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020152167A Pending JP2022046230A (ja) 2020-09-10 2020-09-10 通信装置、プログラム及び通信方法

Country Status (2)

Country Link
US (1) US11647093B2 (ja)
JP (1) JP2022046230A (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001055892A1 (en) * 2000-01-28 2001-08-02 Global Technology Marketing International Recipient selection and message delivery system and method
US20020103743A1 (en) * 2001-01-30 2002-08-01 Sun Microsystems, Inc. Platform independent business to business publish/subscribe messaging system
US7376092B2 (en) * 2002-04-03 2008-05-20 Precache Inc. Method and apparatus for implementing persistent and reliable message delivery
US7827077B2 (en) * 2003-05-02 2010-11-02 Visa U.S.A. Inc. Method and apparatus for management of electronic receipts on portable devices
US20040260683A1 (en) * 2003-06-20 2004-12-23 Chee-Yong Chan Techniques for information dissemination using tree pattern subscriptions and aggregation thereof
US7822801B2 (en) * 2004-10-14 2010-10-26 International Business Machines Corporation Subscription propagation in a high performance highly available content-based publish/subscribe system
GB0506059D0 (en) * 2005-03-24 2005-05-04 Ibm Methods and apparatus for switching between data streams
US20070198629A1 (en) 2006-02-21 2007-08-23 Nec Laboratories America, Inc. Scalable Content Based Event Multicast Platform
GB0623914D0 (en) * 2006-11-30 2007-01-10 Ibm Flexible topic identification in a publish/subscribe system
WO2010080705A1 (en) * 2009-01-09 2010-07-15 Transaction Tree, Inc. Receipt handling systems, print drivers and methods thereof
US8548859B2 (en) * 2010-01-22 2013-10-01 Spendgo, Inc. Point of sale network router
US10217098B2 (en) * 2012-12-18 2019-02-26 Walmart Apollo, Llc Reprinting a paper receipt where an electronic receipt was originally issued
JP6794149B2 (ja) * 2016-06-20 2020-12-02 東芝テック株式会社 レシートシステム、レシートプリンタ及び制御プログラム
JP6874424B2 (ja) * 2017-03-03 2021-05-19 セイコーエプソン株式会社 印刷装置、印刷装置の制御方法および印刷システム

Also Published As

Publication number Publication date
US20220078254A1 (en) 2022-03-10
US11647093B2 (en) 2023-05-09

Similar Documents

Publication Publication Date Title
US20050138231A1 (en) Information processing device, information processing system, transmission rate setting method, transmission rate setting computer program, and storage medium containing computer program
US20200401757A1 (en) Hybrid system and method for data and file conversion across computing devices and platforms
CN106550164A (zh) 分配作业的印刷系统、图像形成装置、服务器装置
JP6031275B2 (ja) 画像処理装置及びその制御方法とプログラム
JP2002342050A (ja) 画像形成装置、印刷方法、プログラム及び記録媒体
JP2022046230A (ja) 通信装置、プログラム及び通信方法
US20160227051A1 (en) Communication apparatus, communication method, and communication system
US20220038586A1 (en) Image processing apparatus, control method, and medium
US11226786B2 (en) Print control system and control method
JP2020064361A (ja) 制御装置、制御方法、及びプログラム
US20130010319A1 (en) Image forming system, output management method, and program product
JP7091929B2 (ja) 中継システム
JP2023013721A (ja) 情報処理装置、及び情報処理プログラム
US9432441B2 (en) Relaying device, image processing device, and system comprising image processing device and relaying device
JP2009193547A (ja) 画像形成装置及びその画像形成制御方法
JP4442483B2 (ja) 印刷データ処理装置及びプリンタ
JP2020087256A (ja) 印刷システム、プリンタ、およびサポートプログラム
US11711480B2 (en) Information forwarding device forwarding information stored in predetermined folder to preset destination and non-transitory computer readable medium
JP2007206979A (ja) 複合機及び複合機における照合方法
JP2019151049A (ja) 印刷装置、その制御方法、及びプログラム
US11563870B1 (en) Information processing apparatus, non-transitory computer readable medium, and information processing method to transmit and receive a facsimile including registering correspondence information
US11803343B2 (en) Job processing apparatus, method of controlling job processing apparatus, and storage medium
JP7367532B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20210021728A1 (en) Information processing apparatus, information processing method and non-transitory recording medium
JP4605025B2 (ja) Fax送信システム及びfax送信要求の中継方法

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230104

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230525

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240603