LXXXV. MCVE (Monetra) 支払い関数

導入

以下の関数は MCVE (Monetra) API (libmonetra、以前は libmcve と呼ばれていました) のインターフェイスで、PHP スクリプトから MCVE/Monetra を直接使用することができるようになります。 MCVE/Monetra は Main Street Softworks のソリューションであり、 Linux/Unix/MacOSX/Windows 上で クレジットカード/デビットカード/ギフトカード を直接処理することが可能です (http://www.mainstreetsoftworks.com/)。 MCVE/Monetra は、*nix マシン、モデムまたはインターネット接続により、 直接クレジットカードを処理することを可能とします (Authorize.Net や Pay Flow Pro のような付加的なサービスは不要と なります)。 PHP で MCVE/Monetra モジュールを使用することにより、PHP スクリプトで MCVE/Monetra を通じて直接クレジットカード処理が可能となります。 以下のリファレンスに処理の概要を示します。

注意: MCVE/Monetra は、RedHat の CCVS を置き換えるものです。MCVEは 2001 年末に RedHat に採用され、全ての既存システムを MCVE プラットフォームに移行することになりました。

注意: この拡張モジュールは PECL レポジトリに移動 されており、以下のバージョン以降 PHP にバンドルされなくなっています。 PHP 5.1.0.

注意: この拡張モジュールは Windows 環境では利用できません。

インストール手順

MCVE (Monetra) サポートを PHP で有効にするには、まず、システムの LibMonetra (以前は libmcve と呼ばれていました) インストールディレクトリを 調べてください。MVCE/Monetra サポートを直接 PHP に組み込むには、 --with-mcve オプションを 指定して PHP の configure を実行する必要があります。 libmonetra のインストール場所へのパスを指定せずにこのオプションを 使用した場合、PHP は デフォルトの LibMonetra インストールパス (/usr/local) を探します。Monetra (MCVE) が標準以外の場所にある場合、 --with-mcve=$mcve_path を指定して configure を実行してください。ただし、$mcve_path は MCVE/Monetra を インストールしたパスです。MCVE/Monetra サポートは、$mcve_path/lib および $mcve_path/include が存在し、include ディレクトリの下に mcve.h あるいは monetra.h、 lib ディレクトリの下にlibmcve.solibmcve.alibmonetra.solibmonetra.a が存在しなければならないことに 注意してください。

MCVE/Monetra サポートをモジュールとしてインストールしたい場合は、 もし PEAR のバージョン 1.4.0 以降が稼動しているなら、 PECL リポジトリを利用して 'pecl install mcve' コマンドを発行します。

MCVE/Monetra はサーバ/クライアントを完全に分離しているため、 PHP で MCVE サポートを実行する際に追加するべきものはありません。 PHP で MCVE/Monetra 拡張モジュールをテストするには、PHP API を使用し、 IP の場合は testbox.monetra.com のポート 8333、SSL の場合はポート 8444 に接続します。ユーザ名として 'vitale'、 パスワードとして 'test' を使用してください。 テスト機能に関する詳細な情報については http://www.mainstreetsoftworks.com/ を参照ください。

参考

MCVE/Monetra の PHP API に関する追加のドキュメントについては、 http://www.mainstreetsoftworks.com/documentation.html にあります。 Main Streetのドキュメントは完全なものであり、関数のリファレンスは まず最初にここを参照するべきです。

リソース型

この拡張モジュールでは MCVE_CONN リソースを定義しています。これは m_initconn() が返すものです。

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

M_PENDING (integer)

M_DONE (integer)

M_ERROR (integer)

M_FAIL (integer)

M_SUCCESS (integer)

目次
m_checkstatus -- トランザクションが完了したかどうかを確かめる
m_completeauthorizations --  キューの中の認証済み件数を数え、その ID の配列を返す
m_connect -- MCVE との接続を確立する
m_connectionerror -- 接続が失敗した理由をテキストで取得する
m_deletetrans -- MCVE_CONN 構造体から、指定したトランザクションを削除する
m_destroyconn -- 接続および MCVE_CONN 構造体を破壊する
m_destroyengine -- IP/SSL 接続に関連付けられたメモリを開放する
m_getcell -- カンマ区切りの応答から、カラム名を指定してセルを取得する
m_getcellbynum -- カンマ区切りの応答から、カラム番号を指定してセルを取得する
m_getcommadelimited -- MCVE が返すデータを、もとのカンマ区切り形式のままで取得する
m_getheader -- カンマ区切りの応答から、カラム名を取得する
m_initconn -- MCVE_CONN 構造体を作成し、初期化する
m_initengine -- IP/SSL 通信のためのクライアントの準備をする
m_iscommadelimited -- 応答がカンマ区切りかどうかを調べる
m_maxconntimeout -- API が MCVE への接続を試みる時間の最大値
m_monitor -- MCVE との通信 (データの送受信) を非ブロックモードで行う
m_numcolumns -- カンマ区切りの応答の中のカラム数を返す
m_numrows -- カンマ区切りの応答の中の行数を返す
m_parsecommadelimited -- カンマ区切りの応答をパースし、m_getcell などが動作するようにする
m_responsekeys --  このトランザクションの応答パラメータとして使用することが可能な キーを表す文字列の配列を返す
m_responseparam -- カスタム応答パラメータを取得する
m_returnstatus -- トランザクションが成功したかどうかを確かめる
m_setblocking -- 接続モードを、ブロックモードあるいは非ブロックモードに設定する
m_setdropfile -- Drop-File への接続方法を設定する
m_setip -- IP での接続方法を設定する
m_setssl_cafile --  サーバ証明書を検証するための SSL CA (Certificate Authority) ファイルを設定する
m_setssl_files --  サーバがクライアント証明書による検証を要求している場合に、証明書のキーファイルを設定する
m_setssl -- SSL での接続方法を設定する
m_settimeout -- (トランザクション単位の) 最大の時間を設定する
m_sslcert_gen_hash -- SSL クライアント証明書の検証のためのハッシュを作成する
m_transactionssent -- 送信バッファが空かどうかを確かめる
m_transinqueue -- クライアントキューの中のトランザクション数を返す
m_transkeyval -- トランザクションにキー/値のペアを追加する。transparam() の代替関数
m_transnew -- 新しいトランザクションを開始する
m_transsend -- トランザクションを終了し、送信する
m_uwait -- x マイクロ秒だけ待つ
m_validateidentifier --  指定したトランザクションについて、ID の検証を行うかどうか
m_verifyconnection -- 接続の検証を行うために PING を行うかどうかを設定する
m_verifysslcert -- サーバの ssl 証明書を検証するかどうかを設定する