JP4345893B2 - ショート・メッセージ・サービスを用いたe−コマース・メッセージのための方法および装置 - Google Patents

ショート・メッセージ・サービスを用いたe−コマース・メッセージのための方法および装置 Download PDF

Info

Publication number
JP4345893B2
JP4345893B2 JP2004540999A JP2004540999A JP4345893B2 JP 4345893 B2 JP4345893 B2 JP 4345893B2 JP 2004540999 A JP2004540999 A JP 2004540999A JP 2004540999 A JP2004540999 A JP 2004540999A JP 4345893 B2 JP4345893 B2 JP 4345893B2
Authority
JP
Japan
Prior art keywords
message
sms
response
data
template
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.)
Expired - Lifetime
Application number
JP2004540999A
Other languages
English (en)
Other versions
JP2006501561A (ja
Inventor
エヌジー、ジョアンナ、ウィンチョン
カプール、ロヒト、ヴィノード
ロ、ジミー、ウィンチェオン
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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
Priority claimed from CA002406711A external-priority patent/CA2406711A1/en
Priority claimed from CA002406880A external-priority patent/CA2406880A1/en
Priority claimed from CA002406869A external-priority patent/CA2406869A1/en
Priority claimed from CA002406568A external-priority patent/CA2406568A1/en
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2006501561A publication Critical patent/JP2006501561A/ja
Application granted granted Critical
Publication of JP4345893B2 publication Critical patent/JP4345893B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • 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/58Message adaptation for wireless communication
    • 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/23Reliability checks, e.g. acknowledgments or fault reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、無線e−コマース通信の分野に関し、より詳細には、モバイル無線通信で使用されるショート・メッセージ・サービスおよび他のメッセージング・サービスを商用メッセージングに適用するための方法および装置に関する。
モバイル・コマース(mobile commerce)は、ユーザがビジネス・トランザクションをいつでも、どこでも実行できるように便宜を提供する。WAP(WirelessApplication Protocol)は数年の間存続しているが、WAP利用可能な携帯電話、および他のそのようなWeb利用可能な無線装置の市場への浸透度は、まだかなり低いものにとどまっている。今日、モバイル・コマースの空間で最も確立された技術は、モバイル無線装置上のショート・メッセージ・サービス(SMS、ShortMessage Services)である。その高い浸透度と採用率により、SMSの市場はモバイル・コマース利用の主要なターゲットとなっている。
本発明によって企図されているコマース機能を伴うSMS通知の例は、
ユーザに対するマーケティング主導メッセージ、すなわち、たとえば、ディスカウント情報、促進、および他のコマース・キャンペーン情報、
ビジネス・イベントの通知、すなわち、たとえば、注文受け取り確認、発送確認、および
締め切りのある支払い、または他の締め切り主導型備忘通知(reminder)などの運用効率のための通知
を含む。
しかし今日、様々な内的な技術的ハードルおよび限界が、SMSには存在し、これにより、そのコマースWebアプリケーションにおける応用および利用が困難かつ非実用的なものとなっている。
従来の技術には多くの制限があり、またビジネス環境におけるSMSメッセージングの使用には条件が存在する。以下は、こうした制限および条件の考察である。
コマース・トランザクションにおいてSMSを使用する制限
SMSにセマンティクスの概念が存在しないことが、コマース・アプリケーションにおけるSMSの使用を困難なものとしている。その困難は、
所与のビジネス目的を正確に実装するためにSMSメッセージをエンコードすること、および、そのビジネス目的が要求するように、これに対応するSMSメッセージのラン・タイムの取り扱い
にある。
エンコードに対する障壁
SMSメッセージは、本来、型のない、状態のない、セッションのない、またデータ処理システムにとって意味のないものである。現在、SMSメッセージングの主な目的は、モバイル装置間での個人間の通信となっている。
しかしながら、SMSメッセージがビジネス・トランザクションの手段として生き残るためには、SMSは単なる2者間の気軽なやり取りであることはできない。ビジネス・トランザクションの要件には、追跡能力、確認、および否認防止を含む。また、これは、どのようなWebアプリケーションまたはこれを取り扱う他のデータ・プロセッサによっても理解される必要がある。ここでは、こうした要件をまとめてSMSメッセージングの「セマンティクス」と定義することにする。
たとえば、
所与の組のビジネス・ルールでは、SMSメッセージのサブセットを、
i.確認された到着
ii.否認防止のための到着の記録済みタイムスタンプ
iii.SMSメッセージの受領に対する受領通知
などのトランザクションの否認防止のため、送付(delivery)時に確認することが必要となる可能性がある。
また、所与の組のSMSメッセージを、所与のスケジュールに基づいて定期的に送付することも、ビジネス要件となる可能性がある。この例は、
i.インボイスの毎月の催促状
ii.SMSメッセージによる定期的な販売促進
を含む。
企業では、メッセージ到着の検査または確認を必要とすることなく、複数のユーザに接触するために、ブロードキャスト型のSMSメッセージが必要になることがある。この例は、
i.全店での販売促進ブロードキャスト
を含む。この場合、おそらく受領通知は必要ないはずである。
ユーザがトランザクションを行うためにSMSメッセージを送信したいとすると、SMSメッセージのテキストにエンコードされた(たとえば、所与の品物を購入するという)そのユーザの意図を、Webアプリケーションまたはユーザの着信するSMSメッセージを取り扱う他のアプリケーションは、一義的に(unambiguously)理解しなければならない。
ビジネス上の意図を正確に表現するためにSMSメッセージを正しくエンコードすることは、技術的に複雑で困難な作業であり、人的な誤りが非常に入りやすい。エンコードの際の人的な誤りは、デバッグおよび修正がしばしば非常に高くつき、困難である。ビジネス・ユーザは、自分たちのビジネス上の目的を達成するために、SMSを使用する際に効率および信頼性を望んでいる。SMSメッセージを自分たちのビジネス・プロセスで使うときには、そのような技術的な複雑さから逃れる必要がある。ビジネス・ユーザは、通常、
i.所与のSMSメッセージのビジネス上の意図を決定すること
ii.(エンコードの種々の技術的詳細で悩まずに)メッセージの適切な言い回しを作成すること
iii.メッセージがそのメッセージ区分の意図に見合わない場合はエラーを通知してもらうこと
に集中したいと思っている。
こうしたビジネス・トランザクションをはじめるビジネス・ユーザは、いまや、自分が達成しようとする種々で個別のビジネス目的に正確に対応するように、こうしたSMSメッセージのすべてを手作業で正しくエンコードするというかなりの技術的困難に直面している。
ラン・タイムにセマンティクスを取り扱うことの困難
SMSメッセージのエンコードの際の手作業の技術的困難とは別に、ビジネス・プロセス要件を満たすためにラン・タイムにセマンティクスを取り扱うこともまた大きな問題となっている。
たとえば、ユーザに未処理の支払いを通知するSMSメッセージでは、通常、「完全な顧客接触ポイント」(a completed customer touch point)を定義しているビジネス・プロセスが規定するように、ユーザの受領通知が必要である。
この場合、SMSメッセージを受け取ったときにユーザによる受領通知が来ないと、それは他のSMSメッセージとは違うやり方で取り扱われる。
しかし、セマンティクスおよび分類(categorization)という概念は、今日のSMSの空間では今のところ存在しない。
SMSメッセージにシンタクスがないことが、コマース・ビジネス・プロセスでのその使用を困難で非実際的なものにしている
SMSテキスト・ストリームのコマース・ビジネス・アクションへの対応付けの欠如
SMSメッセージは、どのようなエンコード方式もない簡単なテキスト・メッセージである。したがって、簡単な平文のSMSメッセージは、上で触れた理由のほかに次の理由でコマース・トランザクションに適していない。すなわち、
i.簡単なSMSメッセージが、実行すべきコマース・トランザクションの型を示すことは現在できない。
ii.特定のトランザクションが必要とする追加パラメータは、標準的なやり方ではエンコードできず、このためバックエンドのコマース・アプリケーションで構文解析できない。
iii.ユーザの認証および認可(user authentication andauthorization)などの追加の詳細が標準的なやり方では取り扱えない。
iv.状態情報がないということは、コマース・トランザクションに必要な要求−応答モデルをコマースSMSメッセージに適用できないということである。
v.人間のユーザの応答としての160キャラクタの自由形式構成(free formcomposing)のために、採用は不可能かつ非実際的なものとなっている。
上記の問題により、Webアプリケーションまたは他のデータ処理アプリケーションから発信されたビジネス・メッセージに応答する必要のあるSMSユーザ(人間とWebアプリケーションのどちらも)に対する深刻な有用性の問題が生じている。
SMSメッセージの一部としてエンコードされるパラメータのための記法の欠如
トランザクション情報を担うインバウンドのSMSメッセージはすべて、データ完全性およびデータ有効性に関して妥当性検査が必要である。それだけでなく、所与のWebアプリケーションにSMSメッセージを送るユーザは、正しい認証のために十分な情報をインバウンドSMSメッセージ中にエンコードする必要がある。
たとえば、オンライン・オークションでSMSを使用するには、オークションのある競り手が誰かほかの者にアウトビッド(outbid)されるたびに、競り手との通信に使うバックエンドWebアプリケーションから、登録している競り手が通知してもらうことが必要になる。競り手たちには、通知が来たときに、自分の競り値(bids)を上げるために応答する機構が与えられるべきである。
この例では、登録した競り手たちがオークションの無効通知(overridenotices)の受け取りを否定できないように、SMSメッセージを否認防止されるように送る必要がある。また、そのようなメッセージは、競り手たちにできるだけ速く届くように、利用可能な場合には、優先度の高いチャネルを介して送出しなければならない。さらに、オークションの競り手たちは、オークションに使用されているバックエンド・コマース・アプリケーションにコール・バックして、そのバックエンド・コマース・アプリケーションに受理可能な標準のSMSメッセージ・テンプレートを用いて新しい競り値を入れる機構をもつ必要がある。バックエンドWebアプリケーションが適切なセマンティクスを実行するためには、こうしたSMSメッセージを、バックエンド・コマース・アプリケーションが正しく構文解析しなければならない。
一例として、オークションのシナリオで必要なパラメータの1つは、競りの対象となる品目の特定のためのSKU番号になるはずである。バック・エンド・サーバと競り手のどちらの認証も、否認防止の目的のためには必要である。
SMSメッセージングにシンタクスがないために、次のようなビジネス・プロセスへの適用が極端に困難となっている。すなわち、
コマース・プロセス対応付け(mapping)
ユーザ認証
パラメータ受け渡し
データ妥当性検査
SMSをエンコードする際の技術的な複雑さにより、ビジネス・ユーザがその使用を採用するのが遅れている
ビジネスSMSメッセージの発信者は、ビジネス・メッセージを送る必要のあるビジネス・ユーザたちである。こうしたユーザの一番の関心は、メッセージのビジネス上の流通(logistics)(送信のタイミング、そのメッセージを誰に送るかなど)およびメッセージそのもの(言い回しの選択など)に集中することであり、送付の媒体の技術に煩わされたいと望んでいない(また、通常その余裕もない)。たとえば、SMSメッセージをどのように送るかという技術的知識は、ビジネス・ユーザが扱いたいと望むものでなく、処理してもらうことを期待するものである。透過性(transparency)およびユーザ親和性(userfriendliness)が、ビジネス・ユーザには重要なのである。
商取引の利用における確認の必要性
商取引でSMSを使用する重要な一要件は、SMSメッセージの受信者(recipient)からの確認の必要性である。次は、商取引でのSMS使用の際のそのような重要な要件の例のリストである。すなわち、
− コマース・サーバからSMS通知を受け取ると、しばしば受信者はそのコマース・サーバにSMSメッセージを送り返すことによって応答する必要がある。たとえば、受信者は、SMS販売促進メッセージの広告した品物を買うためにそのコマース・サーバにSMSメッセージを送るかもしれない。
− 否認防止要件を満たすこと、たとえば、顧客接触ポイントをすべて記録する必要がある。
− また、確認には、インバウンド・メッセージ中でユーザIDの確認が必要になる。
商取引の利用におけるセキュリティの要件
商取引でSMSを使用する別の重要な要件は、ビジネス・トランザクションを実行する際のセキュリティの必要性である。この要件は、
ユーザがSMSメッセージを用いてトランザクションを開始するときの、WebSphereなどのWebアプリケーションによるユーザID認証、
正しいWebアプリケーションがユーザの要求を取り扱っていることがユーザに確実にわかるような、ユーザによるWebアプリケーションの認証、
認可されていないモバイル装置がトランザクションに使用されていないことを確認するためのユーザ認証(ユーザ確認の別のレイヤとして、好ましくはPINを使用することもできる)
を含む。
商取引の利用におけるセッションの要件
商取引でSMSを使用する別の重要な要件は、セッションの要件である。しばしば、Webアプリケーションがそのユーザにアウトバウンド・メッセージを送出したときに(たとえば、「これから6時間以内にお買い上げいただければ電気製品がすべて50%オフ」などのキャンペーン・メッセージ)、使用のWebアプリケーションは、指定した時間内にユーザが対応するアウトバウンド・メッセージにSMSで応答を返すことを期待する。通常、このセッションの要件は、
アウトバウンドおよびインバウンドのSMSメッセージに対応する(mapping to)要求および応答モデル、
タイム・アウト機構、および
セッション・データの共有機構
を含む。
コマース・アプリケーションでSMSメッセージを使用することの大きな欠点の1つは、SMSメッセージにシンタクスがないことであり、コマース・ビジネス・プロセスでのこの使用は、そのために困難で非実際的なものとなっている。大きな欠点のもう1つは、SMSテキストのあらかじめ定義されたコマース・ビジネスのアクションまたはタスクへの対応付けがないことである。しばしば、SMSテキストが実行すべきコマース・トランザクションの型に対応付けられているが、普通、コマース・ビジネス・アクションには追加パラメータが必要である。人間のユーザによる160キャラクタの自由形式構成は非実際的である。
さらに、SMSがコマース・アプリケーションで採用されるためには、ユーザ認証、Webアプリケーション識別、SMSメッセージ受信者からの確認の受信、およびユーザの応答を、意図する商取引イベントと関連付ける能力を提供するためのセキュリティ機構に対する強い要件がある。
本発明は、第1の態様では、ソフトウェア・アプリケーションによる処理のためのSMSビジネス・メッセージを生成する方法であって、データ収集インターフェースが、前記ソフトウェア・アプリケーションからの発信される指示およびデータを受理するステップと、前記SMSビジネス・メッセージを、データ処理システムによる処理のためにフォーマットした、分類済みSMSメッセージとして生成するため、メッセージ・エンコーディング・エンジンが、前記ソフトウェア・アプリケーションからの前記発信される指示およびデータを、エンコーディング・テンプレートを用いてエンコードするステップと、ディスパッチャ・ランタイム・プロセッサ(dispatcher runtime processor)が、前記SMSビジネス・メッセージを、受信者にネットワークを介して送信するために処理するステップとを含む方法を提供する。
本発明は、第2の態様では、ソフトウェア・アプリケーションによる処理のためのSMSビジネス・メッセージを生成するシステムであって、前記ソフトウェア・アプリケーションからの発信される指示およびデータを受理するデータ収集インターフェースと、前記SMSビジネス・メッセージを、データ処理システムによる処理のためにフォーマットした、分類済みSMSメッセージとして生成するため、前記ソフトウェア・アプリケーションからの前記発信される指示および発信されるデータを、エンコーディング・テンプレートを用いてエンコードするメッセージ・エンコーディング・エンジンと、前記SMSビジネス・メッセージを、受信者にネットワークを介して送信するために処理するディスパッチャ・ランタイム・プロセッサとを含む手段を提供する。
本発明は、第3の態様では、デジタル・コンピュータの内蔵メモリへと直接ロード可能なコンピュータ・プログラムであって、前記コンピュータ・プログラムをコンピュータ上で稼動させると、データ収集インターフェースが、前記ソフトウェア・アプリケーションからの発信される指示およびデータを受理するステップと、前記SMSビジネス・メッセージを、データ処理システムによる処理のためにフォーマットした、分類済みSMSメッセージとして生成するため、メッセージ・エンコーディング・エンジンが、前記ソフトウェア・アプリケーションからの前記発信される指示およびデータを、エンコーディング・テンプレートを用いてエンコードするステップと、ディスパッチャ・ランタイム・プロセッサが、前記SMSビジネス・メッセージを、受信者にネットワークを介して送信するために処理するステップとを含む方法を実行するソフトウェア・コード部分を含む、コンピュータ・プログラムを提供する。
本発明の好ましい実施形態の説明を、ここで、例として、添付の図面を参照して行う。
図1に、SMSの使用可能なe−コマース・システムを、好ましい一実施形態の既存の諸システムにまさる改良を強調して示している。
ここまでで示したように、SMSは新しいものではない。この好ましい実施形態によるSMSの使用可能なコマース通信システムを示す図1を参照すると、既存の技術は、従来技術(prior art)と表示した領域にあることがわかる。過去に、SMSメッセージをモバイル装置(たとえば、携帯電話)上で動く適切なアプリケーションに回送する問題を解決しようとする試みは存在した。
図1の「新しい問題領域(Problem Space)」と表示した領域は、今日存在するいくつかの基礎的なビルディング・ブロックを除き、新しいものである。基礎的なビルディング・ブロックが一部存在する可能性があるとはいえ、本明細書中の好ましい諸実施形態により、それらを適切なものとして向上させる際に、好ましい諸実施形態の提供する新しい機能を考慮に入れることができるようになる。
図1に示す実施形態を参照すると、e−コマース・サーバ104はいくつかのコンポーネントからなることがわかる。すなわち、
アプリケーション・コンポーネント108:アプリケーション・コンポーネント108は、所与のコマース・サーバのビジネス・サブシステムを形成する。ビジネス・サブシステムのそれぞれは、所与のビジネス・プロセスを実装したものである。ビジネス・サブシステムの例は、とりわけ、注文管理、ユーザ管理、マーケティングおよびキャンペーンのサブシステムを含む。
共通メッセージ・サブシステム107:共通メッセージ・サブシステム107は、アプリケーション・コンポーネント108の生成するメッセージを取り扱う(そして処理する)総称的なメッセージ・ハンドリング・システムである。共通メッセージ・サブシステムは、電子メール、ファイル転送および他のメッセージの取り扱いおよび処理に関する事項を取り扱う。
図1に示す実装形態では、以下のものを含むいくつかの既存の機能およびプロセスを利用する。すなわち、
SMSメッセージ:1件のSMSメッセージは、最大160キャラクタの長さの単純なテキスト・メッセージに限られる。これは、多くの無線ネットワークを通して送ることができる。ほとんどの携帯電話が、SMSメッセージを送信および受信する能力をもつ。
無線メッセージ・ゲートウェイ:無線メッセージ・ゲートウェイは、無線ネットワークとe−コマース・サーバ104の間でSMSメッセージを回送できるコンピュータによって実装することができる。
SMSセンタ:SMSセンタ102は、通常、通信会社が、選択されたモバイル装置へのSMSメッセージの送付を取り扱うために運用する。
データ収集インターフェース(番号1):データ収集インターフェース117は、
i.SMSメッセージ作成ウイザード112によるユーザ入力、および
ii.アプリケーション・コンポーネント108が生成し共通メッセージ・サブシステム107が転送したデータ
を収集する1組のインターフェースからなり、メッセージ・エンコーディング・エンジン111が使用することになるSMS入力データ・コレクションを生成する。
メッセージ・エンコーディング・エンジン(番号2):メッセージ・エンコーディング・エンジン111は、データ収集インターフェース117が生成した入力データ・コレクションを入力とする。
次いで、メッセージ・エンコーディング・エンジン111は、SMS入力データ・コレクション中のデータを使用して、SMSメッセージのエンコーディングをユーザの選択したSMSの型にとって適切な属性付きで生成する。さらに、これはエラー検査のために、ユーザ入力の妥当性検査をSMSユニバーサル・エンコーディング・テンプレート113とつき合わせて行う。
エンジン111内のこの自動生成機能により、人的な誤りによるエンコーディング・エラーがおそらくなくなる。また、これにより、メッセージの実装のための属性のエンコーディングの技術的な複雑さが、ビジネス・ユーザから隠匿される。メッセージ・エンコーディング・エンジン111は、出力として型付きSMSメッセージのインスタンス114を作成する。
ランタイム・プロセッサ(番号3):SMSメッセージ・ランタイム・プロセッサ110は、SMS分類で定義されるビジネス・セマンティクスをラン・タイムに取り扱う。
ランタイム・プロセッサ110の基本的機能:
− SMSメッセージに送付の確認、または期待される応答が要求されている場合には、SMSメッセージ・ランタイム・プロセッサ110が確認を常に把握する。
− また、SMSメッセージ・ランタイム・プロセッサ110は、エンド・ユーザから返される応答を取り込み、インバウンド・テンプレート・データベース115から対応するインバウンド・メッセージ・テンプレートを探し出す役割をもつ。
− SMSメッセージがスケジューリングされたメッセージである場合には、SMSメッセージ・ランタイム・プロセッサ110は送られるSMSメッセージのスケジューリングを取り扱う。
− ユーザの確認が来ない場合に、セマンティックスのアクションをさらに取ることができる。
− また、ランタイム・プロセッサはラン・タイムのエラー検査およびエラー処理も行う。
SMSメッセージ作成ウイザード(番号4):本発明の一実施形態によるSMSコマース・インフラストラクチャ・システムの構造的対応付け(structural mapping)を示す図2を参照すると、SMSメッセージ作成ウイザード112は、ユーザがそのメッセージの意図した使用法を明確に形にする(articulate)際に誘導を行う。SMSメッセージ・エンコーディング・エンジン111は、ユーザ入力を使用して、SMSメッセージの生成を、ユーザ入力をSMS分類テンプレート113内の選択された、あらかじめ定義された型へと、以下のように対応付けることによって行う。すなわち、
i.SMSメッセージ作成ウイザード112は、ユーザ入力を取り込み、データ収集インターフェース117を呼び出すと、後者は今度は適切なSMS入力データ・コレクションを作成する。
ii.ユーザがSMSメッセージ作成ウイザード112によって新しいSMS分類を定義した場合、SMSメッセージ作成ウイザード112はSMSユニバーサル・エンコーディング・テンプレート113の更新も行う。
iii.ビジネス・ユーザがエンド・ユーザからの関連付けられた要求される応答のあるSMSメッセージを定義した場合には、ビジネス・ユーザは、その要求される応答をアプリケーション・コンポーネント108が要求し理解するように、SMSメッセージ作成ウイザード112によってテンプレートの形で定義する。SMSメッセージ作成ウイザード112は、この入力を取り込み、インバウンド・テンプレート・データベース(部分番号9)115を更新する(図1を参照されたい)。
SMSユニバーサル・エンコーディング・テンプレート(番号5):SMSユニバーサル・エンコーディング・テンプレート113は、アウトバウンドおよびインバウンドのSMSメッセージ分類(または「型」)を定義するメタ・データを含む。SMS分類のそれぞれは、所与のビジネスを意図した使用法(business intended usage)を表す。これは、エンコーディングに対しておよびラン・タイムに対してセマンティクスの定義を提供する。
この矛盾なく定義された(well-defined)SMSメッセージ分類を使うと、いまや意図された使用を反映する正しいエンコーディングによる自動的なSMS生成が可能になる。追加のSMSメッセージ分類を、さらに既存の型から導出することができる。
このエンティティにより、セマンティックスの定義および取り扱いのための機構が提供され、それにより、いまやSMSにおける正しいセマンティックスの取り扱いができるようになるため、これによって本発明の重要な一様態が提供される。
SMSユニバーサル・エンコーディング・テンプレート113を使うと、ビジネス・ユーザは、メッセージ・エンコーディング・エンジン111およびランタイム・プロセッサ110でのどのようなコード変更もなしに、新しいSMSメッセージ型を定義することができ、それにより、どちらのコンポーネントも総称的(generic)なものとなる。
型付きSMSメッセージ・インスタンス(番号6):型付きSMSメッセージ・インスタンス114は、メッセージ・エンコーディング・エンジン111が生成して、ランタイム・プロセッサ110が使用することになる。
以下は型付きSMSメッセージ・インスタンスの一例である。
<GenericSMSMessage>
<short_message_text>Something</short_message_text>
<ReceiverProfile>
<userid>steve</userid>
<cellphonenumber>4161234567@cellphone.com</cellphonenumber>
<deliverychannel>SMTP</deliverychannel>
</ReceiverProfile>
</GenericSMSMessage>
SMS応答追跡DB(番号7):SMS応答追跡データベース116では、そのエンコードされた型の要求する応答要求メッセージがすべて捉えられている。これにより、ランタイム・プロセッサ110は、要求された応答メッセージが期待した応答を受け取り正しいラン・タイム処理を実行することを保証できるようになる。また、これにより、システムの期待する、ユーザの開始するインバウンド・メッセージを取り扱う基本機構が可能になる。
インバウンド・テンプレート・データベース(番号8):インバウンド・テンプレート・データベース115には、ビジネス・ユーザの指定するインバウンド・メッセージ・テンプレートがすべて保存されている。
図1からのフローの注記:ここに示す本発明の実施形態によるSMSメッセージの形成、処理、および通信を、図1中に示す英数字でラベル付けした矢印によって示している。図2には、図1によるSMSコマース・システム構造的対応付けを提示している。本実施形態の理解は、図1および2を参照する際に以下の説明を読むことによって達成することができよう。
A1:共通ユーザ・インターフェース106を利用するビジネス・ユーザ105が、メッセージを準備するために、SMSメッセージ作成ウイザード(番号4)112呼び出す。
B1:ビジネス・ユーザが、SMSメッセージ作成ウイザード112を使用して、SMSユニバーサル・エンコーディング・テンプレート(番号5)113に定義された既存の型に基づいてSMSメッセージを送る。
A2:ウイザード112が、ユーザ入力をすべて捉え、データ収集インターフェース(番号1)117を呼び出す。
B2:ビジネス・ユーザが、SMSメッセージ作成ウイザード112を使用して、新しいSMSメッセージ型を定義する。
A3:ビジネス・ユーザが、ウイザード112を使用して、あらかじめ設定しておくユーザ応答の定義を新しいインバウンド・テンプレートを作成することによって行う。ウイザード112が、インバウンド・テンプレートDB(番号8)115を更新する。
C1:メッセージ・エンコーディング・エンジン(番号2)111が
− SMSユニバーサル・エンコーディング・テンプレート(番号5)113を取り出す。
− データ収集インターフェース(番号1)117が捉えたデータをSMSユニバーサル・エンコーディング・テンプレート113とつき合わせて妥当性検査し、エラー検査を実行する。
C2:メッセージ・エンコーディング・エンジン111が、出力として型付きSMSメッセージ・インスタンス(番号6)114を生成する。図2を参照すると、このメッセージは、XMLでエンコードしたメッセージ201とすることができる。
D2:メッセージ・エンコーディング・エンジン111が、ランタイム・プロセッサ(番号3)110を呼び出し、これが、C2で生成された、生成済み型付きSMSメッセージ・インスタンス114を取り出す。
D3:このSMSメッセージ型でユーザ応答が要求される場合、ランタイム・プロセッサ110は、SMS応答追跡DB(番号7)116を更新することにより、このメッセージをユーザ応答を必要とするものとして登録する。
D4:ランタイム・プロセッサ110は、この型付きSMSメッセージ・インスタンス114を、図2でEveryplace Wireless Gateway203と呼ばれている、無線メッセージ・ゲートウェイ103へと送信する。
D5:着信SMSメッセージが無線メッセージ・ゲートウェイ103へと送られると、これはその着信メッセージをランタイム・プロセッサ110へと回送し、今度はこれが、インバウンド・テンプレートIDをその着信SMSメッセージから抽出する。
D1:ランタイム・プロセッサ110が、SMSユニバーサル・エンコーディング・テンプレート113を読み込んで、アウトバウンドのラン・タイム処理のために、型に適切なセマンティクスを取り扱い、そのインスタンスが正しくなるようにする。
D6:次いで、ランタイム・プロセッサ110は、インバウンド・テンプレートDB(番号8)から対応するインバウンド・テンプレートを抽出し、そのインバウンド・テンプレートを用いてインバウンドSMSメッセージを構文解析する。ランタイム・プロセッサ110は、インバウンドSMSメッセージをデコードして、取り扱いのため、これを対応するアプリケーション・コンポーネント108へと回送する。携帯電話101(図1)などのユーザのSMS装置120(図2)どうしのSMSの通信は、電話会社の携帯電話インターフェース102が取り扱い、無線ゲートウェイ103はこれと、メッセージを送りまたは受け取るのに必要な通信を行う。
Dx ランタイム・プロセッサ110は、アプリケーション・コンポーネント108にラン・タイム・エラーを報告して返す。
1.SMSメッセージ分類(型)
SMSメッセージ分類を定義するための方法および装置
SMSユニバーサル・エンコーディング・テンプレート113により、SMSメッセージ分類を定義する機構が提供される。これは、好ましくは、SMSメッセージ分類を構成する、SMSメッセージのメタ・データ(たとえば、所与のメッセージの属性および特徴)を指定するXMLスキーマ(XML schema)として実装する。
コマースSMSメッセージ・テンプレートの設計は、好ましくは、SMSメッセージの商取引上の型付け(分類)を提供するように行う。SMSユニバーサル・エンコーディング・テンプレート113により、ユーザが、新しいSMSメッセージ型の拡張および定義を、あらかじめ存在する定義済みの型からの継承によって行う機構が提供される。ユーザはこれにより、オリジナルのSMS分類テンプレートにあるSMSメッセージ型を拡張して、新しいSMSの型を定義することができる。
ビジネス・ユーザは、既存のSMSの型を使用でき、またこれを拡張して新しいメッセージ型を作成することができる。ビジネス・ユーザは、拡張した型の中で新しい属性を指定するだけでよい。(この新しいメッセージ型が拡張される)基本メッセージ型の属性は、すべて設定されることになり、ビジネス・ユーザはこれを再指定する必要はない。
所与のSMS分類に関連付けられたセマンティクスを定義する機構
本発明の好ましい一実装形態では、SMSメッセージのエンコードが必要になると、メッセージ・エンコーディング・エンジン(番号2)111がXMLパーサを呼び出して、SMSユニバーサル・エンコーディング・テンプレート113をJava(R)ラン・タイム・オブジェクトに翻訳する。XMLパーサは、このメッセージ・エンコーディング・エンジンの一部でもよく、または当業者の了解可能なように、これに利用可能であってもよい。こうしたラン・タイム・オブジェクトにより、メッセージ・エンコーディング・エンジン111がSMSメッセージを生成するのに必要なセマンティクスの情報が提供される。
こうした状況で、メッセージ・エンコーディング・エンジン111は、いまやXMLパーサを使用して、所与のメッセージのインスタンスをSMSユニバーサル・エンコーディング・テンプレート113とつき合わせて構文解析することができる。これにより、エラー検査の自動的な機構が提供される。SMSメッセージの型定義に照らして不適切な、所与のSMSメッセージ内の不足するまたは予期しないどのような情報も、メッセージの構文解析中にエラーとなる。
また、ラン・タイム時には、SMSランタイム・プロセッサ(番号3)110も、SMSメッセージ型に基づいて種々のラン・タイム・セマンティクスおよびエラー検査を取り扱うために、SMSユニバーサル・エンコーディング・テンプレート113の提供する分類情報を読み込む。
SMSメッセージのラン・タイム処理は、次の諸態様を包含する。
1.アウトバウンドSMSメッセージの構文解析
2、アウトバウンド・メッセージのエラー検査
3.メッセージ追跡およびスケジューリング機能
4.アウトバウンドSMSメッセージ・テンプレート・メッセージの生成
5.インバウンド・メッセージのエラー検査
6.インバウンド・テンプレートのXML SMSメッセージへの翻訳
7.アウトバウンド型の対応するインバウンドSMSメッセージへの対応付け
アウトバウンドSMSメッセージは、いまやここで導入したテンプレートに従ってエンコードされているため、ラン・タイムで構文解析することが可能である。この構文解析の段階の間に、メッセージ型に関する情報、伝送媒体、送出の優先度などを構文解析して取り出す。
エラー検査は、このアウトバウンド・メッセージのラン・タイム構文解析の付加的な利点である。いまやアウトバウンドSMSメッセージは厳密に型でエンコードされているので、不足するパラメータなど様々なエラーをこの段階で検出し取り扱うことができる。これにより、最終的なアウトバウンド・メッセージが正しいことが保証される。
以下は、本発明の一実施形態に従ってSMSユニバーサル・エンコーディング・テンプレートを実装するのに使用できるサンプル・ソース・コード・リストである。
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cep=
"http://www.ibm.com/WebsphereCommerceEnabledPortal/SMSCommerceDefinitionSchema">

<annotation>
<documentationxml:lang="en">
Schema for Websphere Commerce EnabledPortal SMS Commerce Type Definition
Copyright 2002 IBM Corporation
<documentation>
</annotation>

<!-Dynamic Context Group Instance-->
<xsd:elementname="ScheduledGenericSMSMessage"
type="ScheduledGenericSMSMessageType",
minOccurs="0"/>

<xsd:elementname="ResponseRequiredGenericSMSMessage"
type=" ResponseRequiredGenericSMSMessageType",
minOccurs="0"/>

<xsd:element name="HighPriorityGenericSMSMessage"
type="HighPriorityGenericSMSMessageType",
minOccurs="0"/>

<xsd:elementname="GenericSMSMessage"
type="GenericSMSMessageType",
minOccurs="0"/>
<xsd:elementname="BroadcastSMSMessage"
type="BroadcastSMSMessageType",
minOccurs="0"/>
<xsd:complexTypename="ScheduledGenericSMSMessageType">
<xsd:sequence>
<xsd:elementname="GenericSMSMessage"
type="GenericSMSMessageType"/>
<xsd:attributename="DateToBeSentOn" type="xs:date"/>
<xsd:attributename="TimeToBeSentOn" type="xs:time"/>
</xsd:sequence>
</xsd:complexType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:complexTypename="ResponseRequiredGenericSMSMessageType">
<xsd:sequence>
<xsd:elementname="GenericSMSMessage"
type="GenericSMSMessageType"/>
<xsd:attributename="InboundTemplateId" type="xs:string"/>

</xsd:sequence>
</xsd:complexType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:complexTypename="HighPriorityGenericSMSMessageType">
<xsd:sequence>
<xsd:elementname="GenericSMSMessage" type="GenericSMSMessageType"/>
<xsd:attributename="DeliveryPriority"
type="DeliveryPriorityType"fixed="HIGH"/>
</xsd:sequence>
</xsd:complexType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:complexTypename="GenericSMSMessageType">
<xsd:sequence>
<xsd:elementname="short_message_text" type="xsd:string"
maxLength="160"/>
<xsd:attributename="ReceiverProfile" type="ReceiverProfileType"
minOccurs="1"maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:complexTypename="BroadcastSMSMessageType">
<xsd:sequence>
<xsd:elementname="short_message_text" type="xsd:string"
maxLength="160"/>
<xsd:attributename="ReceiverProfile" type="ReceiverProfileType"
minOccurs="1"maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:simpleTypename="DeliverPriorityType">
<xsd:restrictionbase="xsd:string">
<xsd:enumerationvalue="HIGH"/>
<xsd:enumerationvalue="MEDIUM"/>
<xsd:enumerationvalue="LOW"/>
</xsd:restriction>
</xsd:simpleType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:complexTypename="ReceiverTransmissionProfileType">
<xsd:sequence>
<xsd:elementname="userid" type="xsd:string"/>
<xsd:elementname="cellphonenumber" type="xsd:string"/ >
<xsd:element name="deliverychannel"type="DeliveryChannelType"/>
</xsd:sequence>
</xsd:complexType>
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
<xsd:simpleTypename="DeliveryChannelType">
<xsd:restrictionbase="xsd:string">
<xsd:enumerationvalue="SMTP"/>
<xsd:enumerationvalue="GSM"/>
<xsd:enumerationvalue="SNPP"/>
<xsd:enumerationvalue="Mobitex"/>
<xsd:enumerationvalue="DataTAC"/>
</xsd:restriction>
</xsd:simpleType>

</xsd:schema>
以下のソース・コード・リストは型付き(分類済み)SMSメッセージ・インスタンスの例を提供する。
XSD Schema Definition of Commerce PaymentException SMS Message
<xsd:complexTypename="PaymentExceptionSMSMessage">
<xsd:sequence>
<xsd:elementname="ResponseRequiredSMSMessage"
type="ResponseRequiredSMSMessageType"/>
</xsd:sequence>
</xsd:complexType >
Message Instance of a Payment ExceptionSMS Message
<PaymentExceptionSMSMessage>
<ResponseRequiredSMSMessage>
<HighPriorityGenericSMSMessage>
<GenericSMSMessage>
<short_message_text>
Your cheque bounced!
</short_message_text>
<ReceiverProfile>
<userid>steve</userid>
<cellphonenumber>
4161234567@cellphone.com
</cellphonenumber>
<deliverychannel>SMTP</deliverychannel>
</ReceiverProfile>
</GenericSMSMessage>
<DeliveryPriority>HIGH</DeliveryPriority>
</HighPriorityGenericSMSMessage>
<ConfirmationOfDelivery>CONFIRMED</ConfirmationOfDelivery>
</ResponseRequiredSMSMessage>
</PaymentExceptionSMSMessage>

XSD Schema Definition of Campaign StartedBroadcast SMS Message
<xsd:complexTypename="CampaignStartedSMSMessage">
<xsd:sequence>
<xsd:elementname="BroadcastSMSMessage"
type="BroadcastSMSMessageType"/>
</xsd:sequence>
</xsd:complexType >

Message Instance of a Campaign Started SMSMessage
<CampaignStartedSMSMessage>
<BroadcastSMSMessage>
<short_message_text>
New campaign has been started,visit our website
</short_message_text>
<ReceiverProfile>
<userid>steve</userid>
<cellphonenumber>
4161234567@cellphone.com
</cellphonenumber>
<deliverychannel>SMTP</deliverychannel>
</ReceiverProfile>
...
...
<ReceiverProfile>
<userid>joe</userid>
<cellphonenumber>
4161234568@cellphone.com
</cellphonenumber>
<deliverychannel>SMTP</deliverychannel>
</ReceiverProfile>
</BroadcastSMSMessage>
</CampaignStartedSMSMessage>
SMSエンコーディング・エンジン111は、選択したSMSメッセージ型に基づいて、SMSメッセージ・インスタンスを自動的に生成することができる。SMSメッセージ・ランタイム・プロセッサ110は、所与のあらかじめ定義された型のセマンティクスを取り扱うように適合されている。ラン・タイム時に、送ったSMSメッセージがResponseRequiredSMSMessageTypeである場合には、SMSメッセージ・ランタイム・プロセッサ110は、あらかじめ設定された待ち時間のあいだユーザ確認を待つ。あらかじめ設定された待ち時間後に確認を受信しなかった場合、ランタイム・プロセッサ110は対応するアプリケーション・コンポーネント108にエラーを送って、そのアプリケーション・コンポーネントが表すビジネス・プロセスの規定するところに従って、アクションを実行することができる。たとえば、アプリケーション・コンポーネント108は、トランザクションの再送またはロールバックすること、およびこのトランザクションを完了に失敗したものとしてマークすることを提供することができる(図1のDxでランタイム・プロセッサ110は取り扱いのためアプリケーション・コンポーネントにラン・タイム・エラーを報告する)。
ユーザが既存の型から拡張してどのように新しいSMSの型を作成するか
SMSメッセージ作成ウイザードを使用して新しいSMSの型を作成するプロセスを示す図3および新しいSMSの型を作成するためのSMSメッセージ作成GUIを示す図1を参照すると、本発明の一実施形態を用いてどのように新しいSMSの型を作成できるかが容易に了解されよう。
プロセスを開始するために(300)、ビジネス・ユーザはメッセージ作成ウイザード112(図1、2を参照されたい)上に提供されているボタンをクリックして本実施形態のシステムに新しいメッセージ型の作成を指示する(301)。次いで、メッセージ作成ウイザードは、SMSユニバーサル・エンコーディング・テンプレート113(図1、2)を読み込んで、ユーザがステップ302で新しい型を作成するために、選択可能な親のSMSの型405を提示する。ステップ303で、ユーザは、新しいメッセージ型名を入力し(404を参照)、提供されている説明、406、407、408、409、410、411、414、415、416の示す新しい属性すべて、および基本(親)の型405を指定して、新しいSMSの型を生成する。「Add」(追加)ボタンおよび「Delete」(削除)ボタン、それぞれ412および413によって、返信セクションでの項目の挿入および削除ができるようになっており、これに対して、ボタン402および403は、新しいメッセージ型の保存またはキャンセルに使用されることが理解されよう。
新しいメッセージ型に新しい応答テンプレートが要求された場合(304)、ビジネス・ユーザは応答テンプレート・マネージャを呼び出して、要求されたインバウンド・テンプレートを作成し(305)、インバウンド・テンプレート・データベース115が更新される(306)。新しい応答テンプレートが必要ない場合には、新しいメッセージ型がSMSユニバーサル・エンコーディング・テンプレート113に保存され(307)、図3に示すプロセスの終わり308に達する。
2.エンコーディングのエンド・ツー・エンドのフロー
SMSメッセージのエンコーディングのフローを示す図5を参照すると、以下が了解されよう。すなわち、
A:ビジネス・ユーザが、新規メッセージ型作成部を呼び出して、新しいメッセージ型を作成する。
B:ビジネス・ユーザが、インバウンド・テンプレート・マネージャを呼び出して、新しいメッセージ型のための新しいインバウンド・テンプレートを(インバウンド・テンプレート・マネージャによって)作成する。
C:インバウンド・テンプレート・マネージャが、インバウンド・テンプレートDBからあらかじめ定義されたコマンドのリストを取り出す。コマンド・リストは、アプリケーション・コンポーネントの所有者(owner)が定義する。
D:インバウンド・テンプレート・マネージャが、ビジネス・ユーザがGUIから選択した応答アクションおよびコマンドとともに、インバウンド・テンプレートDBに新しい行を挿入する。
E:インバウンド・テンプレート・マネージャが、(インバウンド・テンプレートDBの生成した)新たに作成したインバウンド・テンプレートIDを新規メッセージ型作成部に返す。
F:次いで、新規メッセージ型作成部が、(インバウンド・テンプレートIDとともに埋め込まれた)新たに作成したメッセージ型をSMSユニバーサル・エンコーディング・テンプレート(部分番号5)へと保存する。
2.1 アウトバウンド・メッセージ専用メッセージのエンコード
SMS作成ウイザードにより、ビジネス・ユーザは、e−コマース・システム内のどの登録ユーザにもメッセージを送ることができるようになる。ビジネス・ユーザは、メッセージの型を選択し、メッセージ・テキストを入力し、「Submit」(提出)ボタンをクリックすればよいだけである。
マイクロ・フロー(Micro Flow):データ収集インターフェース、SMS入力データ・コレクションおよびメッセージ・エンコーディング・エンジン
エンコーディング・エンジンによるメッセージ処理を、次に論じるように、図6の英数字でラベル付けした矢印で示している。
A:共通メッセージ・サブシステム107またはSMSメッセージGUIウイザード(部分番号4)112がデータ収集インターフェース117のAPI(部分番号1)510〜516を呼び出して、メッセージ発信者から収集したデータを渡す。
B:データ収集インターフェースのAPI510〜516が、データをデータ収集オブジェクト518に渡す。たとえば、メッセージ・テキストをパラメータとしてsetTextMessage API514を呼び出すと、API514はそのテキストをデータ収集オブジェクト518に保存する。
C:sendMessage API516が、型付きSMSメッセージ・エンコーダ701を呼び出す。これは、メッセージ型名をデータ収集オブジェクト518から取り出す。メッセージ型名は、messageInstanceCreationAPI510によって捉えられる。このステップでは、また、型付きSMSメッセージ・エンコーダ701は、データ収集オブジェクト518から、送信時間、送信の優先度、ResponseTemplateId,テキスト・メッセージ、受信者(receiver)情報などの他の情報の収集も行う。
D:型付きSMSメッセージ・エンコーダ701は、このメッセージ型に対するSMSユニバーサル・エンコーディング・テンプレート113をメッセージ型名を用いて取り出す。
E:型付きSMSメッセージ・エンコーダ701は、テンポラリ型付きSMSメッセージ・インスタンス702の作成を、SMSユニバーサル・エンコーディング・テンプレート113を(XMLのための内部構造である)ドキュメント・オブジェクト・モデルで表現されたテンポラリ型付きSMSメッセージ・インスタンス702へと変換し、Cのデータ収集オブジェクト518から収集した情報で満たすことによって行う。
F:次いで、テンポラリ型付きSMSメッセージ・インスタンス702は、妥当性検査を実行するため、SMSメッセージ妥当性検査部703に渡す。妥当性検査プロセスは、義務的データ、データ・セマンティクス、データ・シンタクス、データ・レンジの検査を含む。
G:妥当性検査が成功した場合、SMSメッセージ妥当性検査部はテンポラリ型付きSMSメッセージ・インスタンス702をコピーして最終的な型付きSMSメッセージ・インスタンス(番号6)114とする。
図7のステップ801ないし808で、上記のプロセスを流れ図で示している。
2.2 応答の要求されるメッセージのエンコーディング
応答を要求するSMSメッセージについては、受信者へのオリジナルのアウトバウンドSMSメッセージにインバウンド・テンプレートを含めるべきである。インバウンド・テンプレートにより、受信者に対するフォーム・ベースの入力機構が提供される。すなわち、これは、SMSメッセージの受信者の期待される応答をエンコードするように適合されている。インバウンド・テンプレートにより、受信者にアウトバウンドSMSメッセージを発信したアプリケーション・コンポーネント108に返される応答を定式通り作成する(formulate)受信者ユーザの負担が取り除かれる。応答テンプレートは、ユーザの要求される応答のフォーマットを示すことによって、ユーザの応答を制約するのに役立つ。結果的に、ユーザの応答は、返信されたときにWebアプリケーション・サーバが自動的に処理できる形をとることになる。
インバウンド・テンプレート:インバウンド・テンプレートの構造を次に示す。
<Short Message Text>
--
<Encrypted String>
--
<responseaction 1>
<responseaction 2>
<response action n>
PIN:<mobile user personalidentification>
上に示したインバウンド・テンプレートの構造により、複数の応答アクションがサポートされている。トランザクションの型に応じて、おそらくモバイル・ユーザである受信者は、応答アクションの1つを選ぶことになる。
図8に、受信者ユーザに対する要求される応答の表示を伴うアウトバウンドSMSメッセージの様子を、ユーザのデジタル携帯電話の画面901上に現れる形で示している。
これを達成するSMSメッセージの文字列は次のものに似ていたはずである。Yourcheque bounced!-kis2-CONFIRMED:_ PIN:_
(小切手が不渡りです!-kis2-確認済み:_個人識別番号:_)
2.2.1 SMS応答メッセージ・エンコーディング・テンプレート要素
図9から見てわかるように、インバウンド・テンプレートに対するSMS応答メッセージ・エンコーディング・テンプレート要素は、次のものを含む。すなわち、
・短いメッセージ・テキスト、902
・暗号化文字列、903
・<応答アクション、904>:<応答データ、906>
・PIN、905
図9に、送信前にユーザ応答を入力した状態のSMSインバウンド・メッセージを示している。
2.2.1.1 短いメッセージ・テキスト902
これは、メッセージ発信者が受信者(receiver)に送ることを意図したメッセージである。
2.2.1.2 暗号化文字列903
暗号化文字列は、‘−’の対で区切られた4キャラクタのハッシュされた(hashed)文字列である。
暗号化文字列は、次の情報の混合(amalgamation)に基づいて作成する。すなわち、
− WebアプリケーションID(Webアプリケーション管理者があらかじめ定義する。たとえば、店舗ID)
− ユーザID(この店舗の受信者(receiver)のログインID)
− データベース・エントリごとの(コマンドおよび期待されるパラメータを含む)インバウンド・テンプレートID。これは、インバウンド・テンプレートDB(部品番号8)から得られる。
− アクションID(このメッセージで許される応答アクションを表すID)
− ハッシュ・キー−ユーザは、このキーをいつでも変更して期限切れにすることができる。これは機密性のある(restricted)ディレクトリにあるファイルに保存することができる。
上の情報を入力としてこの暗号化文字列を生成するのは、ランタイム・プロセッサ110の役割である。また、SMSメッセージを無線メッセージ・ゲートウェイ103へと転送する前にインバウンド・テンプレートを生成するのも、ランタイム・プロセッサの役割である。
暗号化文字列を使用することの利点は次のものである。
− 暗号化文字列は、160キャラクタの制限からのスペースを節約するために4バイトに限ることができる。
− 暗号化文字列は理解不能である。
− ハッシュ・キーは、ビジネス・ユーザがいつでも変更して任意にタイム・アウトを課することができる。
− ランタイム・プロセッサ110は、望まない着信メッセージをフィルタして取り除くことができる。暗号化文字列が無効またはない場合は、そのメッセージが望まないものであることを示す。
− ユーザは、インバウンド・テンプレートをそのモバイル装置に保存して、指定するWebアプリケーションとのトランザクションをいつでも自らの意思で開始することができる。この利点は、セクション2.3で詳細に論じることとする。
2.2.1.3 <応答アクション>:<応答データ>
応答アクション904は、正当な(allowable)応答アクションおよび対応するパラメータを識別するためのキーワードである。この例では、正当な応答904はCONFIRMED(確認済み)である。この例、すなわち図10では、ユーザはYという応答906を入力している。異なるトランザクションに対して2つ以上の正当な応答がありうる。この応答では、3つの下位要素がある。すなわち、
1.応答アクション−アクションを表すキーワード。たとえば、CONFIRMED
2.コマンド−ランタイム・プロセッサが呼び出すWebアプリケーション・プログラムまたはコマンド
こうした応答アクションおよびコマンドは、一意のインバウンド・テンプレートIDでインデクスの付けられたインバウンド・テンプレートDB(部分番号8)に保存することができる。ビジネス・ユーザはSMSメッセージ作成ウイザード(部品番号4)を使用してこうした応答アクションを管理することができる。セクション2.2.3「SMSメッセージ作成ウイザードを用いてインバウンド・テンプレートをどのように管理するか」を参照されたい。
ランタイム・プロセッサは、応答を行うSMSメッセージを受け取ると、コマンドを<応答データ 906>とともに呼び出すことになる。
2.2.1.4 PIN
PIN要素905は、ユーザが、ユーザ登録の際に指定したPIN番号904を入力するためのものである(この例ではユーザは1234を入力している)。PINおよびユーザID(暗号化文字列に暗号化されている)によって、ランタイム・プロセッサ110はインバウンド・メッセージの原本性(originality)を認証することができる。
2.2.2 ユーザが応答に何を入力したかを示すSMS応答
図9に、デジタル携帯電話の画面1001をユーザ応答とともに示している。
モバイル携帯電話のユーザが、SMSメッセージに応答したときには、Webアプリケーション用の指定された電話番号への「forward message」(メッセージを転送する)を選択しさえすればよかったはずである。すなわち、応答アクションの1つに対する応答データを入力し、PIN番号を入力し、「send」(送信)ボタンを押すことである。
この例では、モバイル携帯電話のユーザはCONFIRMED:904の隣りにY906を入力して、自分がそのメッセージの受領を認めることを示している。
Webアプリケーションが受信したはずのSMSメッセージは、次のものに似ていたはずである。Your cheque bounced!-kis2-CONFIRMED:Y PIN:1234
(小切手が不渡りです!-kis2-確認済み:Y個人識別番号:1234)
インバウンドSMSメッセージの処理については、セクション3.2「応答が要求されるメッセージおよびインバウンド・メッセージのエンド・ツー・エンド・フロー」を参照されたい。
2.2.3 SMSメッセージ作成ウイザードを用いてインバウンド・テンプレートをどのように管理するか
インバウンド・テンプレート・マネージャ502(図5を参照)、すなわちSMSメッセージ作成ウイザード(部分番号4)(図4を参照)の下位コンポーネントは、インバウンド・テンプレートを管理する役割を担う。これは、応答アクションとWebアプリケーションのコマンドの間の対応付けの作成および削除を含んでいる。
2.2.3.1 GUI
図10に、Webアプリケーション・サーバがモバイル・ユーザに送るようなSMSメッセージを作成するのに使用することもできる、GUI1101を示している。このインスタンスでは、図10は図8のメッセージを出力するのに使用できたはずの支払い例外メッセージ(payment exception message)用のGUIを示している。
ビジネス・ユーザが、このGUI1101から導出された新しいSMSメッセージ型を作成したい場合は、「New」(新規)ボタン1102を押すと、図4に示す「Create a new SMS Message Type」(新しいSMSメッセージ型の作成)パネル400が呼び出される。すると、このパネルを使用して新しいメッセージ型を作成することができる。
「Add」(追加)ボタン412をクリックすると、図11に示す「Add SMS(Reply) Inbound Template」(SMS(返信)インバウンド・テンプレートの追加)パネルが呼び出される。
2.2.3.2 インバウンド・テンプレート・マネージャの構造図(structurediagram)
図12に、インバウンド・テンプレート・マネージャ202の構造を示している。
以下はインバウンド・テンプレート・マネージャに関するフローの注記である。
A:ビジネス・ユーザ900が、新規メッセージ型作成部201を呼び出して、新しいメッセージ型を作成する。
B:ビジネス・ユーザ900が、インバウンド・テンプレート・マネージャ200を呼び出して、新しいメッセージ型のための新しいインバウンド・テンプレートを作成する。
C:インバウンド・テンプレート・マネージャが、インバウンド・テンプレートDB115からあらかじめ定義されたコマンドのリストを取り出す。コマンド・リストは、アプリケーション・コンポーネント108(図1)が定義する。
D:インバウンド・テンプレート・マネージャ202が、GUIから情報を収集し、インバウンド・テンプレートDB115を更新する。
E:インバウンド・テンプレート・マネージャ202が、(インバウンド・テンプレートDB115の生成した)新たに作成したインバウンド・テンプレートIDを新規メッセージ型作成部201に返す。
F:次いで、新規メッセージ型作成部201が、(インバウンド・テンプレートIDとともに埋め込まれた)新たに作成したメッセージ型をSMSユニバーサル・エンコーディング・テンプレート(部分番号5)113へと保存する。
2.2.3.3 インバウンド・テンプレートの管理の流れ図
図13に、どのようにSMSメッセージ作成ウイザードを使用して上で述べた応答アクションを管理するかのステップ150ないし158を示す流れ図が示されている。
2.3 インバウンド・メッセージをユーザの利用向けにエンコードする
インバウンド・テンプレートのもう1つの有用な適用例は、モバイル・ユーザが要求をWebアプリケーションに提出できるようにすることである。たとえば、ユーザはWebアプリケーションに口座残高に関する要求を送ることができる。モバイル装置中の口座残高要求に対する保存されたインバウンド・テンプレートを使用して、ユーザはこのインバウンド・テンプレートをインバウンドSMSメッセージとして送ることができる。この要求に応答して、Webアプリケーションは、着信メッセージが妥当性検査および認証をパスしたと仮定して、口座残高をアウトバウンドSMSメッセージとして送る。
2.3.1 この機能を実装する諸ステップ
ステップ1:ビジネス・ユーザが、インバウンド・テンプレートのリストを定義する。これは、新しいメッセージ型を作成する際の類似の手順を用いて行うことができる。「InboundRequestGenericMsg」と呼ばれる新しいメッセージ型を最初に定義しなければならない。すると、ビジネス・ユーザは、別のインバウンド要求メッセージ型を、インバウンド・テンプレートを付加した状態で導出することができる。
ステップ2:「顧客サービス」と呼ばれるアプリケーション・コンポーネントが、その店舗Webサイト内で定義済みインバウンド・テンプレートのリストを公開する。
ステップ3:ユーザが店舗Webサイトにログオンし、ダウンロードを希望するインバウンド・テンプレートを選択する。
ステップ4:顧客サービス・アプリケーション・コンポーネントが、選択されたインバウンド・テンプレートをモバイル装置に送る。送信は、データ収集インターフェースのAPI(部分番号1)を呼び出す共通メッセージ・サブシステムによって完了させることができる。
2.3.1 構造図
図14に、ビジネス・ユーザがSMSメッセージを送るプロセスを示す、本発明の好ましい一実施形態によるSMSシステムの構造図を示している。
以下はフローの注記である。
A:ビジネス・ユーザ900が、新しいメッセージ型および対応するインバウンド・テンプレートを定義する。これは、SMSメッセージ作成ウイザード112(図1)によって行うことができる。
B:SMSメッセージ作成ウイザード112が、これらの新しいメッセージ型およびインバウンド・テンプレートを、SMSユニバーサル・エンコーディング・テンプレート(部分番号5)113およびインバウンド・テンプレートDB(部分番号8)115にそれぞれ保存する。
C:モバイル・ユーザ901が、このシステム用のWebサイトにログオンし、インバウンド・テンプレートのリストを要求する。
D:顧客サービス・アプリケーション・コンポーネント161が、インバウンド・テンプレートIDをSMSユニバーサル・エンコーディング・テンプレート113から得る。このIDを用いて、顧客サービス・アプリケーション・コンポーネント161は、このIDを使用するインバウンド・テンプレートDB115から利用可能なインバウンド・テンプレートを取り出す。
E:顧客サービス・アプリケーション・コンポーネント161が、インバウンド・テンプレートのリストをモバイル・ユーザ901に表示する。
F:モバイル・ユーザ901が、所望のインバウンド・テンプレートを選択し、それを自分のモバイル装置へと送ることを要求する。
G:顧客サービス・アプリケーション・コンポーネント161が、選択したインバウンド・テンプレートを総称的なSMSメッセージとして送るために、共通メッセージ・サブシステム107に要求を送る。
H:共通メッセージ・サブシステム107が、インバウンド・テンプレートを総称的なSMSメッセージとして送信するために、データ収集インターフェースのAPI(部分番号1)117を呼び出す。
I:SMSメッセージ・エンコーディング・エンジン(部分番号2)111が、インバウンド・テンプレートを含むSMSメッセージをエンコードし、それらをランタイム・プロセッサ(部分番号3)110へと送る。
J:ランタイム・プロセッサ110が、暗号化文字列をSMSメッセージに挿入する。テンプレートは入力要求のために使われるので、この暗号化文字列は、好ましくは、有効期限を持たせるべきではない。SMSメッセージは無線メッセージ・ゲートウェイ162へと送られる。
K:無線メッセージ・ゲートウェイ162が、これらのメッセージをモバイル・ユーザ901に送付する。
L:モバイル・ユーザ901が、これらのインバウンド・テンプレートを自分のモバイル装置の保存領域(storage)に保存する。モバイル・ユーザ901は、いまやこれらのインバウンド・テンプレートを使用して、アプリケーション・コンポーネント108に要求または要求群を提出することができる。
M:無線ゲートウェイ162が、インバウンドSMSメッセージをモバイル・ユーザからランタイム・プロセッサ110へと転送する。
N:ランタイム・プロセッサ110が、インバウンドSMSメッセージ内の暗号化文字列を検査して、これがインバウンド要求であるかどうかを判断する。メッセージが認証された場合、ランタイム・プロセッサ110がSMS可能コマース・システムの関連するアプリケーション・コンポーネント108が所有者である対応するコマンドを呼び出すことになる。
2.3.2 流れ図
図15に、ビジネス・ユーザが本発明の好ましい一実施形態に従って選択したインバウンド・テンプレートを得る、図13に示したものと類似の流れ図を示している。
3.ラン・タイムのエンド・ツー・エンド・フロー
このセクションでは、本発明の一実施形態のラン・タイム処理を略述し、アウトバウンド・メッセージの生成およびインバウンド応答メッセージの処理を扱う。
3.1 アウトバウンド・メッセージ・エンド・ツー・エンド・メッセージ処理フロー
図5は、本発明のある実施形態のSMS e−コマース・システムのアウトバウンド・メッセージ取り扱いフローを示す、アウトバウンドの流れ図である。
図17に、本発明の環境のアウトバウンドの流れ図を示す。図17を参照すると、次のことがわかる。すなわち、
・メッセージ・エンコーディング・エンジン111の生成する型付きSMSメッセージ・インスタンス114を、スケジューリングされたメッセージかどうかを検査する。
・それがスケジューリングされたメッセージであった場合、そのメッセージをSMSメッセージ追跡DB195に保存する。スケジューラ182が、定期的にSMSメッセージ追跡DB195を読み込んで、送る予定になっているメッセージを取り出す。
・メッセージが送る予定になっている場合、そのメッセージの型エラー(typeerror)に関する検査を、ユニバーサル・エンコーディング・テンプレート113内に保存されている型と比較することによって行う。
・型エラーがある場合、エラーを生成して返す。
・型エラーがない場合、そのメッセージの構文解析を、ユニバーサル・エンコーティング・テンプレート113の入力とともにXMLパーサ1918を用いて行う。
・XMLパーサ1918が、DOMツリー(DOM tree)フォーマット1912になっている型付きSMSメッセージ・インスタンスを構文解析する。
・そのメッセージが応答を要求しているかどうかを検査する。
・応答が要求されていない場合、そのメッセージを無線ゲートウェイ103を用いて発送し、そして停止する。
・応答が要求されている場合、構文解析したメッセージからメッセージ・テンプレートIDを抽出する。
・インバウンド・テンプレート1916を、インバウンド・テンプレートDB115からメッセージ・テンプレートを用いて見つける。
・型付きSMSメッセージ・インスタンス114およびインバウンド・テンプレート1916を用いて、最終的なSMSメッセージを生成する。
・セッション・オブジェクト1927を作成する。
・そのセッション・オブジェクト、WebApp ID1928、ユーザID1929、テンプレートID1930および暗号化キー1931を用いて、暗号化文字列1924を生成する。
・暗号化文字列1924を最終的なSMSメッセージに挿入する。
・最終的なSMSメッセージを無線ゲートウェイ103を用いて発送し、そして停止する。
3.2 ResponseRequiredMessageおよびインバウンド・メッセージ・エンド・ツー・エンド・メッセージの処理フロー
図18に、インバウンドの流れ図を示す。これから、次のことがわかる。すなわち、
・無線ゲートウェイ103がインバウンドSMSメッセージ2003を受け取る。
・ランタイム・プロセッサ110がインバウンドSMSメッセージ2003から4キャラクタの暗号化文字列2005を抽出する。
・暗号化キー1931によって、暗号化文字列2005を復号する。
・復号が成功しない場合、停止する。
・復号が成功した場合、WebApp IDを暗号化文字列2005から抽出する。
・WebApp IDが現在の(current)WebApp IDと一致しなかった場合、停止する。
・WebApp IDが現在の(current)WebApp IDと一致する場合、テンプレートIDを暗号化文字列2005から抽出する。
・上で抽出したテンプレートIDを用いて、インバウンド・テンプレート2014をインバウンド・テンプレートDB115から得る。
・パラメータ名、コマンドおよび値2017をインバウンドSMSメッセージ2003から抽出する。
・ユーザIDを暗号化文字列2005から抽出する。
・コマース・サーバ(コマンド・コンテキスト・オブジェクト2020)に対するメッセージの作成を、上で抽出したコマンド名、パラメータおよびユーザIDを用いて行う。
・前記メッセージをコマース・サーバ108に発送する。
・すべてが完了する。
図16に、確認応答ラン・タイム処理フローの説明に十分な詳細を示す、本発明の一実施形態のランタイム・プロセッサ110の詳細な例を示している。以下は、ランタイム・プロセッサ110の諸要素およびそのやり取りの説明である。
型付きメッセージ・インスタンス:型付きメッセージ・インスタンス114は、エンコーディング・エンジン(またはスケジューリングされたメッセージの場合はスケジューラ)から、ラン・タイム時までに受け取った実際のアウトバウンドSMSメッセージである。現在の実装方式では、このメッセージは、ユニバーサル・エンコーディング・テンプレート・スキーマにより、XMLでエンコードされている。
型付きメッセージ構文解析サブシステム:型付きメッセージ構文解析サブシステム181は、型付きXMLメッセージ用パーサからなる。その仕事は、着信メッセージがスキーマに従って正しくエンコードされているかどうかを検査すること、そしてまた(現在の実装では)このメッセージを構文解析してDOMツリーにすることである。
このサブシステムの出力は、アウトバウンドSMSメッセージの内容全体を含む、コンピュータ可読のメモリ・オブジェクト・フォーマットの構文解析されたオブジェクトである。
メッセージ追跡サブシステム:メッセージ追跡サブシステム183は、メッセージ送信時間、メッセージ受信時間などに関する統計情報でSMS追跡DBを更新する。
スケジューラ:スケジューラ・サブシステム182は、SMSメッセージの時間指定(timed)中継の役割を担う。SMSメッセージをあるスケジューリングされた時間に送る必要がある場合は、このサブシステムがメッセージ追跡DBにそのメッセージをキャッシュする役割を担う。
また、このサブシステムは、ビジネス・マネージャが決めた間隔でメッセージ追跡DBをポーリングし、発送の準備のできたメッセージを選び、送付のための型付きメッセージ構文解析サブシステムに転送する役割も担っている。
アプリケーション・キー生成部サブシステム:アプリケーション・キー生成部サブシステム184は、ユーザ応答を要求するSMSメッセージと一緒に送られる暗号化文字列を生成する役割を担う。このサブシステムでは、このセッション文字列の暗号化に、システム共通(system-wide)で時間に依存する暗号化/復号キー(encoding/decoding key)が使用されている。
暗号化文字列自体は次のものからなる。
1.WebApp ID
2.ユーザID
3.インバウンド・テンプレートID
4.セッション・オブジェクトID
この暗号化文字列は時間に依存する暗号化/復号キーに基づいているため、以前達成することのできなかった、SMSでのセッションの効果を達成することが可能である。
いまやSMSに導入されたセッションの概念を用いて、SMSベースのセッション・データ・ストレージに使用できるセッション・オブジェクトをいまでは作成することができる。
暗号化文字列を時間に依存する復号キーによって復号した後で、各要素(WebApp ID、ユーザID、インバウンド・テンプレートID、およびセッションID)を、第2段階でそれ自体の復号キー(WebAppIDKey, UseridKey, inboundTemplateKey, sessionIDKey)で復号することができる。
したがって、最終的な暗号化は、システム共通の暗号化キーとWebApp IDのどちらもが正しい場合にだけ首尾よく復号できる、2段階の暗号化方式である。これにより、アウトバウンド・セッション文字列に対するさらなるセキュリティがもたらされる。
アウトバウンド・メッセージ生成部:アウトバウンド・メッセージ生成部サブシステム185は、型付きメッセージ構文解析サブシステムの生成した構文解析済みアウトバウンドSMSメッセージおよびアプリケーション・キー生成サブシステムの生成したセッション文字列を使用することによって最終的な160キャラクタのアウトバウンド・メッセージをエンコードする。このSMSメッセージの作成後、このサブシステムは、無線ゲートウェイ103にエンド・ユーザへの最終的な送付のためにこれを転送する。
インバウンド・メッセージ構文解析サブシステム:インバウンド・メッセージ構文解析サブシステム186には、まず、着信メッセージのそれぞれを暗号化文字列ならびにシステム共通の暗号化キーおよびWebApp IDを用いて復号する作業がある。このメッセージが正しく復号できることを検査した後、このサブシステムはインバウンド・テンプレートIDを抽出し、インバウンド・テンプレートDBからインバウンド・テンプレートを調べて着信メッセージの構文解析を行う。
インバウンド・メッセージの構文解析が成功すると、着信したコマンドおよびパラメータの抽出が行われる。次いで、このサブシステムは、ユーザIDを暗号化文字列から抽出し、この着信した要求のためのコマンド・コンテキスト・オブジェクトを作成する。また、コマンド・コンテキスト・オブジェクトの作成前に、このコンポーネントは、着信した認証用のPIN番号の検査をアプリケーション・コンポーネント108の認証機構を用いて行う。
次のステップは、このメッセージを関連するアプリケーション・コンポーネントへと実際に発送することである。
このサブシステムは、メッセージ追跡サブシステムと協力して、受信時間および他の統計情報に関して着信したSMSメッセージの追跡を行う。
本明細書に記載の諸実施形態は、以前のSMSメッセージング・システムにまさるいくつかの利点および特質を提供する。すなわち、
1.確認
− インバウンド・テンプレートがアウトバウンドSMSメッセージのテキスト本体の一部であることにより、Webアプリケーションが容易に処理できるような確認のためのシステムが提供される。
− SMS応答データベースにより、メッセージ型が要求するラン・タイム確認の可能性が提供される。
− これまでのSMSシステムに確認がない点は、SMSの商取引での適用を阻害している。ユーザの確認を可能にするユーザIDやPINなどの暗号化文字列により、この制限に対する解決策を開示している。
2.セキュリティ
− インバウンドSMSメッセージは、好ましくは、2レベルの暗号化を伴う暗号化文字列を含むことができる。これにより、関連するWebアプリケーションが、そのWebアプリケーションに向けられた着信SMSメッセージだけを取り扱うことが保証される。
− ユーザIDは第2のレベルのユーザIDキーによって、ユーザの指定するPIN番号とともに得られ、これにより、セキュリティ保護の層がさらに提供される。
− 4バイトのセキュリティ機構により、商取引におけるSMSの適用が可能になる。
− ここで使用する2レベルの暗号化は、2レベルのキーにより復号する4要素(WebApp ID、ユーザID、インバウンド・テンプレートID、およびセッション・オブジェクトID)の4バイトへの混合(amalgamation)と同様、新しいものである。
3.セッション制御
− セッションIDをSMS文字列の中で暗号化する(encode)場合、これにより、典型的なhttpセッションのためのタイム・アウト制御が提供される。
− 暗号化文字列をアウトバウンド・メッセージとマッチングすることにより、要求および応答モデルが提供され、セッションの形成が可能になる。
− このセッションにより、ユーザとWebアプリケーションの間の密接な(cohesive)要求および応答がいまや可能となり、SMSでの商取引の適用が実際的なものになる。
− メッセージ内の4バイトの暗号化文字列は新しいものである。
− 暗号化文字列に追加したタイムスタンプおよびシステム・キーは新しいものである。
− ラン・タイム時の要求/応答SMSメッセージのセッション効果を管理するためのラン・タイム・プロセスを伴うSMS応答DBは、SMSメッセージングにとって新しいものである。
4.拡張可能なシンタクス:SMSメッセージをエンコードおよびデコードするための規則
− エンコードされたインバウンド・メッセージ・テンプレートにより、インバウンドSMSメッセージの一義的な解釈が可能になり、これは、メッセージング・システムのWebアプリケーションを選択したビジネス・アクションに一義的に対応付けることにつながる。
− このシンタクスは、新しいインバウンド・メッセージ・テンプレートを作成するために拡張可能である。
− ユーザが自分のインバウンド・メッセージを定式通り作成しなくてすむようにインバウンド・メッセージ・テンプレートをアウトバウンド・メッセージに含めることは、SMSにとって新しいものである。いまや、ユーザは要求される特定のパラメータを満たすだけでよくなっている。
− 新しいメッセージ型の中で他のシンタクスを作成するためのシンタクスの拡張性は、新しいものである。
5.1 拡張可能なセマンティクス:一義的なビジネス・アクションに対応付けられるエンコーディングの解釈
− 本発明の諸実施形態のあらかじめ定義された分類は、ユーザとビジネス・プロセスのWebアプリケーションとの間の契約として働き、その結果、所与のSMSメッセージの解釈は一義的となり、あらかじめ定義されたビジネス・プロセスの一定のビジネス・アクションに対応付けられ、これにより、SMSの商取引の適用が可能になる。
− 基本の分類は、ビジネス・アクションの新しい対応付けのために新しい分類を定義するように拡張可能である。
− (分類および新しい分類を導出することを含む固有の特徴を伴う)XMLスキーマをSMSユニバーサル・エンコーディング・テンプレートとしてSMSの空間内で適用することは、新しいものである。
5.2 拡張可能なセマンティクス:対応するメッセージ型におけるエンコーディング特徴によるラン・タイム時におけるSMSメッセージの取り扱い
− SMSユニバーサル・エンコーディング・テンプレートにより、Webアプリケーションとメッセージ・ランタイム・プロセッサの間で共有されることになるSMSメッセージについての付加情報が可能になる。ランタイム・プロセッサは、いまや(SMSの型で定義する付加的なセマンティクス特徴に基づいて)Webアプリケーションの理解する送り手(ビジネス・ユーザ)の意図と矛盾のない、型の点で適切なラン・タイム・タスクを実行することができる。
6.向上した使用可能性
− ビジネス・ユーザは、いまやそのビジネスの意図に合わせる(match)ためにSMSメッセージをエンコードすることの技術的な複雑さを味わうことはない。ビジネス・ユーザは、いまやSMSメッセージのエンコーディングで悩むことなく、メッセージの内容に集中することができる。
− この発明のSMSコマースの解決策により、エンコーディング・エラーの可能性が減少する(SMSのエンコーディング・エラーはラン・タイム時に解決するのが困難であり、高く付くため)。エンコーディングの機構により、エラー検査が確実なものとなり、エンコーディング・エラーの早期の特定が提供される。
本発明の一実施形態における、SMSを用いてe−コマースを実行するシステムを示す構成図である。 SMSコマース・インフラストラクチャ・コンポーネントの構造的対応付け(structuralmapping)を示す図である。 SMSメッセージ作成ウイザードを使用して新しいSMSの型をSMSユニバーサル・エンコーディング・テンプレートに作成することを示す図である。 SMSメッセージ作成GUIを使用して新しいSMSの型を作成することを示す図である。 SMSエンコーディングの流れ図である。 SMSメッセージ・エンコーディング・エンジンのDCI構造図(structurediagram)である。 SMSメッセージ・エンコーディング・エンジンの流れ図である。 受信者ユーザに見える実際のアウトバウンドSMSメッセージの例を示す図である。 ユーザの応答で満たしたSMSのインバウンド・メッセージを示す図である。 SMSメッセージを作成するためのGUIを示す図である。 SMSインバウンド・テンプレートのメッセージ型への追加を示す図である。 インバウンド・テンプレート・マネージャの構造図である。 インバウンド・テンプレート管理に関する流れ図である。 SMSメッセージを送るビジネス・ユーザに関する構造図である。 図16に関する流れ図である。 確認応答のラン・タイムのフローを示す図である。 アウトバウンドの流れ図1である。 アウトバウンドの流れ図2である。 アウトバウンドの流れ図3である。 インバウンドの流れ図1である。 インバウンドの流れ図2である。 インバウンドの流れ図3である。[MSOffice1]このエレメントの骨格は、「メッセージ・エンコーディング・エンジンがエンコードするステップ」です。to generateのtoを原稿のように「結果のto」として訳すと、まるで原文がencoding and generatingであるかのような日本語となってしまいます。これでは、generatingステップが明らかに発明の必須要素になり、権利行使上不利になります。

Claims (22)

  1. ソフトウェア・アプリケーションによる処理のためのSMSビジネス・メッセージを生成する方法であって、
    SMSビジネス・メッセージの分類及び型を定義するユニバーサル・エンコーディング・テンプレートが備えられ、
    新しい型のSMSビジネス・メッセージがユーザによって定義された場合に、SMSメッセージ作成ウィサードが前記ユニバーサル・エンコーディング・テンプレートの更新を行うステップと、
    データ収集インターフェースが、前記ソフトウェア・アプリケーションから発信される指示およびデータを受理するステップと、
    メッセージ・エンコーディング・エンジンが、前記ソフトウェア・アプリケーションからの指示で規定されるSMSビジネス・メッセージの型に応じた前記ユニバーサル・エンコーディング・テンプレートを用いて、前記ソフトウェア・アプリケーションから発信される前記データをエンコードして、データ処理システムによる処理のためにフォーマットされかつ分類されたSMSメッセージとして前記SMSビジネス・メッセージを生成するステップと、
    ディスパッチャ・ランタイム・プロセッサが、前記SMSビジネス・メッセージを、受信者にネットワークを介して送信するために処理するステップと、
    を含む方法。
  2. 前記SMSビジネス・メッセージを、ネットワークを介して受信者に送信するステップをさらに含む、請求項1に記載の方法。
  3. 前記SMSビジネス・メッセージが、
    受信者に商取引イベントについて注意を喚起するためのメッセージ・テキスト・エントリ・フィールドと、
    暗号化文字列エントリ・フィールドと
    を含む、請求項2に記載の方法。
  4. 前記SMSビジネス・メッセージが、
    応答インジケータ・ラベル(indicator label)と、
    前記応答インジケータ・ラベルと関連付けられた受信者データ・エントリ・フィールドと、
    受信者認証インジケータ・ラベルと、
    前記受信者認証インジケータ・ラベルと関連付けられた受信者認証データ・エントリ・フィールドと
    をさらに含む、請求項3に記載の方法。
  5. 前記暗号化文字列エントリ・フィールドが、通信セッション識別データを受理するように適合されている、請求項3または4に記載の方法。
  6. 前記通信セッション識別データを使用して、送ったメッセージに対する応答を関連付けることができる、請求項5に記載の方法。
  7. 前記通信セッション識別データを使用して、送ったメッセージに対する応答を処理するソフトウェア・アプリケーションを識別することができる、請求項6に記載の方法。
  8. 前記暗号化文字列エントリ・フィールドが、セキュリティ・データを受理するように適合されている、請求項3または4に記載の方法。
  9. 前記受信者認証データ・エントリ・フィールドが、前記受信者からの個人識別番号(PIN)を受理するように適合されている、請求項4に記載の方法。
  10. SMSビジネス・メッセージが、
    応答する受信者が応答を挿入できるように適合されている、前記応答インジケータ・ラベルと関連付けられた第1の受信者データ・エントリ・フィールドと、
    応答する受信者が応答を挿入できるように適合されている、前記受信者認証インジケータ・ラベルと関連付けられた第2の受信者データ・エントリ・フィールドと
    をさらに含む、請求項4に記載の方法。
  11. 前記ユニバーサル・エンコーディング・テンプレートが、
    SMSビジネス・メッセージの分類を定義する分類メタ・データを含み、
    前記分類が、特定のビジネスを意図した使用法を表し、
    前記分類メタ・データが、前記分類の定義を提供し、
    前記分類メタ・データは、前記データ処理システムにより、SMSビジネス・メッセージを生成するために構文解析可能である、請求項1に記載の方法。
  12. 前記ユニバーサル・エンコーディング・テンプレートが、
    受信者がアクセスするためにSMSメッセージの長さ全体のメッセージ・エントリを挿入するためのメッセージ・エントリ・フィールドを含み、
    前記ユニバーサル・エンコーディング・テンプレートが、分類メタ・データのために、前記SMSビジネス・メッセージ内に追加のフィールドを提供し、
    前記分類メタ・データが、SMSビジネス・メッセージのビジネスを意図した使用法をエンコードするための指示を提供する、請求項11に記載の方法。
  13. 前記分類メタ・データが、
    前記SMSビジネス・メッセージを発送するための指示を含み、
    前記指示が、
    メッセージ優先度と、送付時間と、受信者数と、送付チャネルと、確認の必要性と、認証の必要性と、暗号化の必要性と、応答を取り扱うためのWebアプリケーションとのうちより選択される指示を含む、請求項12に記載の方法。
  14. 前記分類メタ・データが、前記SMSビジネス・メッセージへの応答を取り扱うためのソフトウェア・アプリケーションを識別するための指示を含む、請求項12に記載の方法。
  15. サーバが、前記SMSビジネス・メッセージの送信に応答して、受信者からの応答メッセージを受け取るステップと、
    前記応答メッセージが前記サーバに向けられたものであることを検証するために、前記SMS応答メッセージ内部の暗号化文字列を適切なキーによって復号するステップと、
    前記応答内の情報を処理するために、前記SMS応答メッセージから情報を抽出するステップと、
    前記サーバからの前記応答メッセージに対する対応するインバウンド・テンプレートを識別して得るステップと、
    前記応答メッセージに含まれる着信するデータおよび着信する指示の抽出を、それが存在する場合には、前記データおよび指示の処理のために行うために、前記応答メッセージを前記インバウンド・テンプレートによって構文解析するステップと
    をさらに含む、請求項2に記載の方法。
  16. 前記着信するデータおよび着信する指示を、処理のためにアプリケーション・サーバへと転送するステップをさらに含む、請求項15に記載の方法。
  17. 前記SMS応答メッセージが、暗号化キーによって暗号化された暗号化文字列と、
    前記応答を処理する能力のあるソフトウェア・アプリケーションの識別と、
    ユーザ認証情報と
    を含む、請求項16に記載の方法。
  18. 前記サーバが前記暗号化キーに対するアクセス権を有し、
    前記サーバが前記インバウンド・テンプレートに対するアクセス権を有する、
    請求項17に記載の方法。
  19. サーバが、前記SMSビジネス・メッセージの送信に応答して、受信者からSMS応答メッセージを受け取るステップと、
    応答追跡データベースが、応答追跡データベース内の前記SMS応答メッセージを追跡するステップと
    をさらに含む、請求項2に記載の方法。
  20. インバウンド・テンプレート・データベースが、前記SMS応答メッセージを識別し構文解析するステップと、
    前記ディスパッチャ・ランタイム・プロセッサが、前記SMS応答メッセージを処理し、前記SMS応答メッセージを前記ソフトウェア・アプリケーションへと転送するステップと
    をさらに含む、請求項19に記載の方法。
  21. ソフトウェア・アプリケーションによる処理のためのSMSビジネス・メッセージを生成するシステムであって、
    SMSビジネス・メッセージの分類及び型を定義するユニバーサル・エンコーディング・テンプレートが備えられ、
    新しい型のSMSビジネス・メッセージがユーザによって定義された場合に、前記ユニバーサル・エンコーディング・テンプレートの更新を行うSMSメッセージ作成ウィサードと、
    前記ソフトウェア・アプリケーションから発信される指示およびデータを受理するデータ収集インターフェースと、
    前記ソフトウェア・アプリケーションからの指示で規定されるSMSビジネス・メッセージの型に応じた前記ユニバーサル・エンコーディング・テンプレートを用いて、前記ソフトウェア・アプリケーションから発信される前記データをエンコードして、データ処理システムによる処理のためにフォーマットされかつ分類されたSMSメッセージとして前記SMSビジネス・メッセージを生成するメッセージ・エンコーディング・エンジンと、
    前記SMSビジネス・メッセージを、受信者にネットワークを介して送信するために処理するディスパッチャ・ランタイム・プロセッサと、
    を含むシステム。
  22. デジタル・コンピュータの内蔵メモリへと直接ロード可能なコンピュータ・プログラムであって、前記コンピュータ・プログラムをコンピュータ上で稼動させると、請求項1ないし20のいずれかに記載の方法を実行するソフトウェア・コード部分を含む、コンピュータ・プログラム。
JP2004540999A 2002-10-04 2003-10-03 ショート・メッセージ・サービスを用いたe−コマース・メッセージのための方法および装置 Expired - Lifetime JP4345893B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CA002406711A CA2406711A1 (en) 2002-10-04 2002-10-04 Method and apparatus for generation and processing of sms ecommerce messages
CA002406880A CA2406880A1 (en) 2002-10-04 2002-10-04 Method and apparatus for an ecommerce message using sms
CA002406869A CA2406869A1 (en) 2002-10-04 2002-10-04 Method and apparatus for processing an incoming ecommerce sms message
CA002406568A CA2406568A1 (en) 2002-10-04 2002-10-04 Method and apparatus for a universal encoding template for sms ecommerce messaging
PCT/GB2003/004336 WO2004032542A2 (en) 2002-10-04 2003-10-03 Method and apparatus for an e-commerce message using sms

Publications (2)

Publication Number Publication Date
JP2006501561A JP2006501561A (ja) 2006-01-12
JP4345893B2 true JP4345893B2 (ja) 2009-10-14

Family

ID=32074434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004540999A Expired - Lifetime JP4345893B2 (ja) 2002-10-04 2003-10-03 ショート・メッセージ・サービスを用いたe−コマース・メッセージのための方法および装置

Country Status (4)

Country Link
JP (1) JP4345893B2 (ja)
KR (1) KR100861740B1 (ja)
AU (1) AU2003269255A1 (ja)
WO (1) WO2004032542A2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8150923B2 (en) 2003-10-23 2012-04-03 Microsoft Corporation Schema hierarchy for electronic messages
US8370436B2 (en) 2003-10-23 2013-02-05 Microsoft Corporation System and method for extending a message schema to represent fax messages
US8468093B2 (en) * 2004-03-25 2013-06-18 International Business Machines Corporation Method and system for performing a commercial transaction by using a short message service terminal
US8073473B2 (en) * 2005-11-14 2011-12-06 Airwide Solutions, Inc Method for processing a message
KR101431260B1 (ko) * 2007-07-23 2014-08-20 삼성전자주식회사 휴대 방송에서 구매 서비스 목록 관리를 위한 메시지 구성방법
US8213971B2 (en) * 2009-04-27 2012-07-03 Qualcomm Incorporated Apparatus and method for activating computer applications with SMS messaging
KR100990361B1 (ko) 2009-05-04 2010-10-29 주식회사 비즈모델라인 메시지 전송 시스템
RU2524866C2 (ru) * 2009-08-24 2014-08-10 Интел Корпорейшн Короткие пользовательские сообщения в сигнализации управления системой

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5719918A (en) * 1995-07-06 1998-02-17 Newnet, Inc. Short message transaction handling system
US6125281A (en) * 1997-01-31 2000-09-26 Nokia Mobile Phones Limited Real-time SMS application messaging using an SMSC-linked server
FI109505B (fi) * 1997-03-24 2002-08-15 Fd Finanssidata Oy Pankkipalvelujen käyttö digitaalisessa solukkoradiojärjestelmässä
FI20000637A0 (fi) * 2000-03-17 2000-03-17 Codeonline Oy Menetelmä ja järjestelmä kysymysten esittämiseen ja vastausten vastaanottoon

Also Published As

Publication number Publication date
JP2006501561A (ja) 2006-01-12
KR100861740B1 (ko) 2008-10-06
KR20050050656A (ko) 2005-05-31
WO2004032542A3 (en) 2004-08-12
AU2003269255A1 (en) 2004-04-23
WO2004032542A2 (en) 2004-04-15

Similar Documents

Publication Publication Date Title
US10810623B2 (en) E-commerce messaging using SMS
US8255566B2 (en) System and method for routing messages between applications
US9219678B2 (en) Method, system, and computer program product for sending and receiving messages
US8364711B2 (en) Contact management system and method
US7516191B2 (en) System and method for invocation of services
TW200534723A (en) Methods and systems for mobile device messaging
CN101689210A (zh) 聚集和搜索来自多个服务的简档数据
US8688113B2 (en) Method and system for implementing location service
KR20050084488A (ko) 전역 분배 네트워크에서 정보를 통신하기 위한 방법 및장치
JP4345893B2 (ja) ショート・メッセージ・サービスを用いたe−コマース・メッセージのための方法および装置
WO2007076698A1 (fr) Systeme et procede de collecte, de transmission et de traitement d&#39;informations sur la base de messages courts de telephone mobile
US20070050371A1 (en) Interacting with an online database through a variety of communications media
US20080176587A1 (en) System and a method for sending digital content to a mobile device
CA2406568A1 (en) Method and apparatus for a universal encoding template for sms ecommerce messaging
CA2406711A1 (en) Method and apparatus for generation and processing of sms ecommerce messages
CA2406869A1 (en) Method and apparatus for processing an incoming ecommerce sms message
KR20080101850A (ko) 제작 및 출판기반 팩스 서비스 방법 및 그 시스템
KR20090088499A (ko) 광고 데이터 제공방법
WO2008092204A1 (en) Sending user selected content to a mobile communications device
US20070288570A1 (en) Automatic numbering method and system exploiting e-mail
Fernando et al. Mjoy-common platform for mobile ticketing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060727

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090212

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20090212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090522

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090623

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20090624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090707

R150 Certificate of patent or registration of utility model

Ref document number: 4345893

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120724

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130724

Year of fee payment: 4

EXPY Cancellation because of completion of term