top of page

3. サーバ間連携

3.1. サーバ間連携概要
サーバ間連携は2種類の方向に分かれます。

アプリリンクを介して

Nexmileクライアント → Nexmileサーバ → 連携先サーバとリクエストが遷移し、その逆順でレスポンスするパターン
 

連携先サーバの要求により
  連携先サーバ → Nexmileサーバ → Nexmileクライアントに要求を遷移させるパターン

 

これらの機能を利用するためにはI/F設定仕様書を弊社に提出頂き、サイトコードを取得する必要があります。
I/F設定仕様書は下記よりダウンロードして下さい。記入にあたり当節の一読をお願い致します。

 

設定仕様書ダウンロード

 ご記入の上、                                   まで送付下さい。

 尚ご不明な点等も左記メールアドレスで承ります。

3.1.1. サーバ間連携インターフェース

① 文字コード UTF-8

② インターフェース一覧

Nexmileサーバ → 連携先サーバ

連携先サーバ→Nexmileサーバ

③ 表中のTYPEについて

QUERY:URL+?+QUERY形式文字列(&key=value)が設定される。

JSON :Nexmileサーバで指定するクラスをJSON形式にシリアライズされた文字列が設定される。

 

④ URLエンコード

QUERY形式の場合valueにエンコード対象文字列を含む場合、URLエンコードを行う必要がある。

JSON形式の場合、シリアライズ後の文字列にURLエンコードを行う必要がある。

両サーバ共に上記規則によりURLエンコードまたはデコードを行う。

3.1.2. サーバ間連携共通パラメータ

サーバ間連携に関し、頻出する下記フィルードについては以下の内容が設定される。

3.2 アプリリンクを介して発生するサーバ間連携(ユーザ認証)

3.2.1. ユーザー認証

① シーケンス図
認証要求から最終的にユーザに登録完了が表示されまでのシーケンス

ユーザー認証シーケンス図

 認証リクエスト

URL+QUERY形式文字列がGETで送信される。

③ 認証結果
レスポンスはQUERY形式文字列。

3.3 アプリリンクを介して発生するサーバ間連携(通話・ライブ共通事項)

3.3.1. 連携先サーバレスポンス方法

通話・ライブ共に連携先サーバからのレスポンスは既定のクラスをJSONにシリアライズし、さらにそのシリアライズテキストをURLエンコードしたものを使用する。

①  リクエストに対して正常終了である場合、下記の何れかの形式でレスポンスを行う。

result=0&service=URLエンコード(シリアライズされた既定のクラス)
result=0 (要求の種別によりresultのみをレスポンスとする場合)
 

➁  リクエストに対して拒否応答である場合、下記の形式でレスポンスを行う。

result=-1&messsge=URLエンコード(エラーメッセージ)

正常終了である場合は常にresultは0となり、0以外が設定されている場合には要求が拒否されたと見なされ、

ユーザに対して連携先サーバで設定したエラーメッセージが表示される。

特に記述が無い場合いを除きNexmileサーバにおいてresultが0以外の場合は拒否処理を行う以外の作用はない。

(error resultによる処理振分には対応していない。)

 

3.3.2. レスポンスクラス階層

①  階層図
レスポンスクラスは下記階層をもつクラスの集合となる。C#によるクラス定義のサンプルは

https://dl.stream-works.biz/download/sample/SiteService.txtを参照のこと。

レスポンスクラス階層図

➁ クラス用途概要

ライブサービス用クラス

※網掛け部について

1.2.4 Nexmileクライアントでは未実装の機能を参照

3.3.3. レスポンス共有クラス詳細

①     ユーザ情報詳細

サービスを利用するユーザの情報を設定する。

※網掛け部について
1.2.4 Nexmileクライアントでは未実装の機能を参照

➁ 課金情報詳細

サービスを利用することで発生する、消費ポイントに関連する情報を設定する。

③ Nexmileサーバ内の課金方法

上記の課金情報を用いて以下の方式によりユーザポイントの減算・加算を行い、利用可能額が「unitPrice」を下回った場合に、そのサービスは終了となる。

課金対象秒数 = 現在時刻 – (課金開始時刻 + freeTrialSec)
課金対象秒数が0以上の場合

現在課金額 =(課金対象秒数 / unitSec)* unitPrice     ※少数以下を含む

利用可能総額 = currentPoint + 調整ポイント * pointPrice
利用可能残高 = 利用可能総額 - 現在課金額
 

利用可能残高が利用中サービスの下記単価を未満になった場合、そのサービスは切断される。
尚、上記処理はNexmileサーバ内で1秒毎に行われている。

 

調整ポイントについて

Nexmileサービスの利用中に当該ユーザが連携先サーバのサービス利用による減算、

またはオートチャージによる加算によりNexmileサーバ側の利用可能総額を変更する必要が

ある場合には後述「7.2ユーザポイント更新」により調整ポイントの更新を行う。

bottom of page