Star WebPRNT User's Manual

StarWebPrintExtManager.js

バーコードリーダやプリンタステータスの監視を、StarWebPRNTExtManager送信エレメント列やStarWebPRNTExtManager受信エレメント列を通して行います。

この機能は、現在WebPRNT Browserのみ対応しています。

コンストラクタ

名称説明
StarWebPrintExtManagerStarWebPrintExtManagerオブジェクトを生成します。

メソッド

名称説明
connectマネージメントを開始します。
disconnectマネージメントを停止します。
writeデータを送信します。

プロパティ

名称説明
onReceive正常受信イベント
onError異常受信イベント
onPrinterImpossibleプリンター使用不能を通知
onPrinterOnlineプリンターオンラインを通知
onPrinterOfflineプリンターオフラインを通知
onPrinterPaperReadyプリンター用紙レディを通知
onPrinterPaperNearEmptyプリンター用紙ニアエンプティを通知
onPrinterPaperEmptyプリンター用紙エンプティを通知
onPrinterCoverOpenプリンターカバーオープンを通知
onPrinterCoverCloseプリンターカバークローズを通知
onCashDrawerOpenキャッシュドロアーオープンを通知
onCashDrawerCloseキャッシュドロアークローズを通知
onBarcodeReaderImpossibleバーコードリーダー使用不能を通知
onBarcodeReaderConnectバーコードリーダー接続を通知
onBarcodeReaderDisconnectバーコードリーダー切断を通知
onBarcodeDataReceiveバーコードデータ受信を通知
onAccessoryConnectSuccessアクセサリー(Bluetooth)接続成功を通知
onAccessoryConnectFailureアクセサリー(Bluetooth)接続失敗を通知
onAccessoryDisconnectアクセサリー(Bluetooth)切断を通知
onStatusUpdateステータスアップデートを通知
onWriteデータ送信の完了を通知

機種別対応リスト

POSプリンター
名称FVP10TSP650IITSP700IITSP800IImPOPmC-Print2mC-Print3
connect
disconnect
write-○*1○*1○*1---
onReceive
onError
onPrinterImpossible
onPrinterOnline
onPrinterOffline
onPrinterPaperReady
onPrinterPaperNearEmpty--
onPrinterPaperEmpty
onPrinterCoverOpen
onPrinterCoverClose
onCashDrawerOpen
onCashDrawerClose
onBarcodeReaderImpossible-○*1○*1○*1
onBarcodeReaderConnect-○*1○*1○*1
onBarcodeReaderDisconnect-○*1○*1○*1
onBarcodeDataReceive-○*1○*1○*1
onAccessoryConnectSuccess
onAccessoryConnectFailure
onAccessoryDisconnect
onStatusUpdate
onWrite-○*1○*1○*1---

*1 IFBD-HI01X/02X使用時のみ対応しています。(日本国内では販売していません。)


モバイルプリンター (ESC/POS)
名称SM-S210iSM-S220i
(Jpモデル以外)
SM-S230iSM-T300iSM-T400i
connect
disconnect
write-----
onReceive
onError
onPrinterImpossible
onPrinterOnline
onPrinterOffline
onPrinterPaperReady
onPrinterPaperNearEmpty-----
onPrinterPaperEmpty
onPrinterCoverOpen
onPrinterCoverClose
onCashDrawerOpen-----
onCashDrawerClose○*1○*1○*1○*1○*1
onBarcodeReaderImpossible-----
onBarcodeReaderConnect-----
onBarcodeReaderDisconnect-----
onBarcodeDataReceive-----
onAccessoryConnectSuccess
onAccessoryConnectFailure
onAccessoryDisconnect
onStatusUpdate
onWrite-----

*1 常にドロアークローズとして呼び出されます。


モバイルプリンター (StarPRNT)
名称SM-S210iSM-S220i
(Jpモデル以外)
SM-S230iSM-T300iSM-T400iSM-L200SM-L300
connect○*2○*2
disconnect○*2○*2
write-------
onReceive○*2○*2
onError○*2○*2
onPrinterImpossible○*2○*2
onPrinterOnline○*2○*2
onPrinterOffline○*2○*2
onPrinterPaperReady○*2○*2
onPrinterPaperNearEmpty-------
onPrinterPaperEmpty○*2○*2
onPrinterCoverOpen○*2○*2
onPrinterCoverClose○*2○*2
onCashDrawerOpen-------
onCashDrawerClose○*1○*1○*1○*1○*1○*1 *2○*1 *2
onBarcodeReaderImpossible-------
onBarcodeReaderConnect-------
onBarcodeReaderDisconnect-------
onBarcodeDataReceive-------
onAccessoryConnectSuccess○*2○*2
onAccessoryConnectFailure○*2○*2
onAccessoryDisconnect○*2○*2
onStatusUpdate○*2○*2
onWrite-------

*1 常にドロアークローズとして呼び出されます。

*2 iOS版のWebPRNT Browserは対応しておりません。

StarWebPrintExtManager

StarWebPrintExtManagerオブジェクトを生成します。

構文

StarWebPrintExtManager(args);

名前付き引数

名称説明省略時
urlStarWebPRNTエンドポイントURL
※省略時はconnectメソッド、writeメソッドで指定すること
String-
pollingTimeoutclaim管理用ポーリングのタイムアウト(ms単位)Number30000
pollingIntervalclaim管理用ポーリングの送信インターバル時間(ms単位)Number200

戻り値

説明
StarWebPrintExtManagerオブジェクトStarWebPrintExtManager
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.connect({url:url});
}
// -->
</script>

connect

マネージメントを開始します。

構文

connect(args);

名前付き引数

名称説明省略時
urlStarWebPRNTエンドポイントURL
※省略時はStarWebPrintExtManagerコンストラクタで指定された値
String-
pollingTimeout claim管理用ポーリングタイムアウト(ms単位)
※省略時は、StarWebPrintExtManagerコンストラクタで指定された値
Number-
pollingIntervalclaim管理用ポーリングの送信インターバル時間(ms単位)
※省略時は、StarWebPrintExtManagerコンストラクタで指定された値
Number-

戻り値

説明
true … 成功
false … 失敗
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.connect({url:url});
}
// -->
</script>

disconnect

マネージメントを停止します。

構文

disconnect();

名前付き引数

名称説明省略時
----

戻り値

説明
true … 成功
false … 失敗
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onDisconnect(url) {
    manager.disconnect();
}
// -->
</script>

write

データを送信します。

構文

write();

名前付き引数

名称説明省略時
urlStarWebPRNTエンドポイントURL
※省略時はStarWebPrintExtManagerコンストラクタで指定された値
※connect済みの状態では、本引数は無視されます。
String省略不可
requestStarWebPRNTExtManager送信エレメント列String省略不可

戻り値

説明
true … 成功
false … 失敗
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onWrite(url, request) {
    manager.write({url:url, request:request});
}
// -->
</script>

onReceive

正常受信イベント

構文

function(response);

名前付き引数

名称説明
managerSuccessプリンターとの通信結果
  • true … 通信成功
  • false … 通信失敗
String
managerCode通信結果コード
  • 0 … 正常終了
  • 1010 … プリンター未接続状態
  • 1200 … 周辺機器が未接続状態
  • 2001 … プリンタービジー状態(他の端末機器がプリンター使用中:要再送)
  • 3000 … Claim未取得状態
Number
managerClaimClaim状態結果
  • true … Claim取得状態
  • false … Claim未取得状態
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onReceive = function(response) {
        var msg;
        if (response.managerSuccess == 'true' && response.managerClaim == 'true') {
            msg = 'Connected\n\n'
        }
        else {
            msg = 'Not connected\n\n'
        }

        msg = '- onReceive -\n\n';
        msg += 'ManagerSuccess : [ ' + response.managerSuccess + ' ]\n';
        msg += 'ManagerCode    : [ ' + response.managerCode + ' ]\n';

        alert(msg);
    }

    manager.connect({url:url});
}
// -->
</script>

onError

異常受信イベント

構文

function(response);

名前付き引数

名称説明
StatusXMLHttpRequestオブジェクトのstatusプロパティ
※XMLHttpRequest仕様参照
Number
responseTextXMLHttpRequestオブジェクトのresponseTextプロパティ
※XMLHttpRequest仕様参照
String
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onReceive = function(response) {
        var msg;
        if (response.managerSuccess == 'true' && response.managerClaim == 'true') {
            msg = 'Connected\n\n'
        }
        else {
            msg = 'Not connected\n\n'
        }

        msg = '- onReceive -\n\n';
        msg += 'ManagerSuccess : [ ' + response.managerSuccess + ' ]\n';
        msg += 'ManagerCode    : [ ' + response.managerCode + ' ]\n';

        alert(msg);
    }

    manager.onError = function(response) {
        var msg;

        msg = 'onError!'         + '\n';
        msg += '  Status:'       + args.status + '\n';
        msg += '  ResponseText:' + args.responseText;

        alert(msg);
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterImpossible

プリンター使用不能を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterImpossible = function() {
        alert('onPrinterImpossible');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterOnline

プリンターオンラインを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterOnline = function() {
        alert('onPrinterOnline');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterOffline

プリンターオフラインを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterOffline = function() {
        alert('onPrinterOffline');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterPaperReady

プリンター用紙レディを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterPaperReady = function() {
        alert('onPrinterPaperReady');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterPaperNearEmpty

プリンター用紙ニアエンプティを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterPaperNearEmpty = function() {
        alert('onPrinterPaperNearEmpty');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterPaperEmpty

プリンター用紙エンプティを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterPaperEmpty = function() {
        alert('onPrinterPaperEmpty');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterCoverOpen

プリンターカバーオープンを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterCoverOpen = function() {
        alert('onPrinterCoverOpen');
    }

    manager.connect({url:url});
}
// -->
</script>

onPrinterCoverClose

プリンターカバークローズを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onPrinterCoverClose = function() {
        alert('onPrinterCoverClose');
    }

    manager.connect({url:url});
}
// -->
</script>

onCashDrawerOpen

キャッシュドロアーオープンを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onCashDrawerOpen = function() {
        alert('onCashDrawerOpen');
    }

    manager.connect({url:url});
}
// -->
</script>

onCashDrawerClose

キャッシュドロアークローズを通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onCashDrawerClose = function() {
        alert('onCashDrawerClose');
    }

    manager.connect({url:url});
}
// -->
</script>

onBarcodeReaderImpossible

バーコードリーダー使用不能を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onBarcodeReaderImpossible = function() {
        alert('onBarcodeReaderImpossible');
    }

    manager.connect({url:url});
}
// -->
</script>

onBarcodeReaderConnect

バーコードリーダー接続を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onBarcodeReaderConnect = function() {
        alert('onBarcodeReaderConnect');
    }

    manager.connect({url:url});
}
// -->
</script>

onBarcodeReaderDisconnect

バーコードリーダー切断を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onBarcodeReaderDisconnect = function() {
        alert('onBarcodeReaderDisconnect');
    }

    manager.connect({url:url});
}
// -->
</script>

onBarcodeDataReceive

バーコードデータ受信を通知します。

構文

function(response);

名前付き引数

名称説明
dataバーコードデータ
※Base64形式
String
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onBarcodeDataReceive = function() {
        alert('onBarcodeDataReceive');
    }

    manager.connect({url:url});
}
// -->
</script>

onAccessoryConnectSuccess

アクセサリー(Bluetooth)接続成功を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onAccessoryConnectSuccess = function() {
        alert('onAccessoryConnectSuccess');
    }

    manager.connect({url:url});
}
// -->
</script>

onAccessoryConnectFailure

アクセサリー(Bluetooth)接続失敗を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onAccessoryConnectFailure = function() {
        alert('onAccessoryConnectFailure');
    }

    manager.connect({url:url});
}
// -->
</script>

onAccessoryDisconnect

アクセサリー(Bluetooth)切断を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onAccessoryDisconnect = function() {
        alert('onAccessoryDisconnect');
    }

    manager.connect({url:url});
}
// -->
</script>

onStatusUpdate

ステータスアップデートを通知します。

構文

function(response);

名前付き引数

名称説明
status自動ステータス(※)の3 バイト目~6 バイト目を16進数文字列化したもの
(例:”28000000”)
ステータス通知タイミング
  • ステータス変化時
  • ステータス未変化時、5 分毎

※STAR Line Mode コマンド仕様書もしくはStarPRNT コマンド仕様書をご参照ください
String
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onConnect(url) {
    manager.onStatusUpdate = function() {
        alert('onStatusUpdate');
    }

    manager.connect({url:url});
}
// -->
</script>

onWrite

データ送信完了を通知します。

構文

function();

名前付き引数

名称説明
---
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript' src='js/StarWebPrintExtManager.js'></script>

<script type='text/javascript'>
<!--
var manager = new StarWebPrintExtManager();

function onWrite(url, request) {
    manager.onWrite = function() {
        alert('onWrite');
    }

    manager.write({url:url, request:request});
}
// -->
</script>