Orbitvu Stationは、以下に説明する仕様に基づき、オンラインストアとアプリケーションの間で通信を行います。 当仕様に基づき、お客様独自のショッププラットフォームに、同様のメカニズムを実装することができます。
ステップ1では、HTTPサーバーで任意の“cookie”を設定する必要があります(Orbitvu Stationは、指定されたURLの下に “Set-Cookie”ヘッダーが存在するかどうかを確認しますが、Cookieの名前は関係ありません)。そしてレスポンスを下記の様式でxml形式でOrbitvuStationに送信します。
<ovs_response>
<code>0</code>
<message>Authorization succeeded!</message>
<data>https://your_remote_upload_url?ov_action=upload</data>
</ovs_response>
ステップ2では、Orbitvu StationはPOSTリクエストを次のアドレスに送信します:https://your_remote_upload_url?ov_action=upload またこのリクエストには ZIP圧縮(“.ovus”)された Orbitvuプレゼンテーションを加えます。そしてHTTPサーバーからステータスメッセージを含むレスポンスをxml形式でOrbitvuStationに送信します。
実装のサンプル
index.php file:
上記のサンプルでは、Orbitvuプレゼンテーションは “orbitvu_presentations" フォルダーに保存されます。 アップロードが成功したら、PHPクラス "ZipArchive" を使用してOrbitvuプレゼンテーションを解凍する必要があります(サンプルには示されていません)。 プレゼンテーションを解凍すると、当フォルダーにプレゼンテーションのSKUを含む content2.xml ファイルが配置されます。
認証を伴う実装のサンプル
index.php file:
- リモートアップロード url : https://your_remote_upload_url?ov_key=my_secret_key
- サーバー側で、
$ _GET [‘ov_key’]
がサーバーで定義された定数"ov_key"
と同じであるかどうかをチェックします。 - 同じであれば、サーバー側で一意のトークンを生成し、それをグローバル変数
$_SESSION[‘ov_token’]
に保存します。そしてアップロード先URLを含めた形での下記のようなレスポンスをOrbitvu Stationに送信します。
https://your_remote_upload_url?ov_key=my_secret_key&ov_token=generated_token&ov_action=upload - Orbitvu StationはそのURLを基にサーバーに別のリクエストを送信します。
https://your_remote_upload_url?ov_key=my_secret_key&ov_token=generated_token&ov_action=upload - サーバー側で、
$_GET[‘ov_key’]
が適切でかつ$_GET[‘ov_token’]
が$_SESSION[‘ov_token’
と同じであるかどうかをチェックします。 - キーとトークンが有効な場合、プレゼンテーションをアップロードして
$_SESSION[‘token’]
を破棄することを許可します。 最後にOrbitvu Stationにレスポンスを返します。