Star webPRNT User's Manual

StarWebPrintTrader.js

Star webPRNT送信エレメント列を送信したり、受信したStar webPRNT受信エレメント列から状態を確認/抽出します。

コンストラクタ

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

メソッド

名称説明
sendMessageStar webPRNT送信エレメント列を送信します。
isCoverOpenStar webPRNT受信エレメント列からカバーオープンか確認します。
isOffLineStar webPRNT受信エレメント列からオフラインか確認します。
isCompulsionSwitchCloseStar webPRNT受信エレメント列からコンパルジョンスイッチがクローズしているか確認します。
isEtbCommandExecuteStar webPRNT受信エレメント列からETBコマンド実行済みか確認します。
isHighTemperatureStopStar webPRNT受信エレメント列から印字ヘッド高温停止中か確認します。
isNonRecoverableErrorStar webPRNT受信エレメント列から復帰不可能エラーか確認します。
isAutoCutterErrorStar webPRNT受信エレメント列から用紙カッターエラーか確認します。
isBlackMarkErrorStar webPRNT受信エレメント列から用紙区切り検出エラーか確認します。
isPaperEndStar webPRNT受信エレメント列から用紙エンドか確認します。
isPaperNearEndStar webPRNT受信エレメント列から用紙ニアエンドか確認します。
isPaperPresentStar webPRNT受信エレメント列から用紙排出口に用紙があるか確認します。
isRollPositionErrorStar webPRNT受信エレメント列から用紙位置エラーか確認します。
extractionEtbCounterStar webPRNT受信エレメント列からETBカウンタを抽出します。

プロパティ

名称説明
onReceive正常受信イベント
onError異常受信イベント
timeout通信タイムアウト時間 (ms)
holdprint_timeout用紙抜き取り待ちタイムアウト時間 (ms)

機種別対応リスト

機種別のインターフェイス対応表はこちらをご確認ください。

POSプリンター
名称FVP
10
TSP
650II
TSP
650II
SK *2
TSP
700II
TSP
800II
mPOPmC-
Print2
mC-
Print3
TSP
100IV
TSP
100IV
SK
mC-
Label3
sendMessage*1
isCoverOpen
isOffLine
isCompulsionSwitchClose
isEtbCommandExecute
isHighTemperatureStop
isNonRecoverableError
isAutoCutterError
isBlackMarkError-------
isPaperEnd
isPaperNearEnd---○*3---
isPaperPresent--------
isRollPositionError----------
extractionEtbCounter

*1 Bluetooth/USBプリンターは印刷完了待ち有効固定、名前付き引数’checkedblock'は作用しない

*2 日本国内では販売しておりません

*3 MCP30は除く(日本国内では通常販売しておりません)

モバイルプリンター (ESC/POS)
名称SM-S210iSM-S220i
(Jpモデル
以外)
SM-S230iSM-T300iSM-T400i
sendMessage*1 *2
isCoverOpen
isOffLine
isCompulsionSwitchClose-----
isEtbCommandExecute-----
isHighTemperatureStop-----
isNonRecoverableError-----
isAutoCutterError-----
isBlackMarkError-----
isPaperEnd
isPaperNearEnd-----
isPaperPresent-----
isRollPositionError-----
extractionEtbCounter-----

*1 印刷完了待ち有効固定、名前付き引数’checkedblock'は作用しない

*2 名前付き引数’papertype'は作用しない

モバイルプリンター (StarPRNT)
名称SM-S210iSM-S220i
(Jpモデル
以外)
SM-S230iSM-T300iSM-T400iSM-L200SM-L300
sendMessage*1 *2
isCoverOpen
isOffLine
isCompulsionSwitchClose-------
isEtbCommandExecute
isHighTemperatureStop
isNonRecoverableError-------
isAutoCutterError-------
isBlackMarkError
isPaperEnd
isPaperNearEnd-------
isPaperPresent-------
isRollPositionError-------
extractionEtbCounter

*1 印刷完了待ち有効固定、名前付き引数’checkedblock'は作用しない

*2 名前付き引数’papertype'は作用しない

StarWebPrintTrader

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

構文

StarWebPrintTrader(args);

名前付き引数

名称説明省略時
urlStar webPRNTエンドポイントURL
※省略時はsendMessageメソッドで指定すること
String-
checkedblock印刷完了待ち
  • true … 印刷完了待ち有効
  • false … 印刷完了待ち無効
Booleantrue
papertype用紙の種類
  • normal … 普通紙
  • black_mark … ブラックマーク紙
  • black_mark_and_detect_at_power_on … ブラックマーク紙 (電源投入時の位置検出有効)
String-
timeout通信タイムアウト時間(ms)Number90000
holdprint_timeout用紙保持制御の抜き取り待ちタイムアウト時間(ms)
※timeoutよりも短い値を設定すること。
 長い時間を設定した場合、timeoutが優先される。
Number10000

戻り値

説明
StarWebPrintTraderオブジェクトStarWebPrintTrader
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

    trader.sendMessage({request:request});
}
// -->
</script>

sendMessage

Star webPRNT送信エレメント列を送信します。

構文

sendMessage(args);

名前付き引数

名称説明省略時
urlStar webPRNTエンドポイントURL
※省略時はStarWebPrintTraderコンストラクタで指定すること
String-
checkedblock 印刷完了待ち
  • true … 印刷完了待ち有効
  • false … 印刷完了待ち無効

※省略時はStarWebPrintTraderコンストラクタで指定された値
Boolean-
requestStar webPRNT送信エレメント列String省略不可
papertype用紙の種類
  • normal … 普通紙
  • black_mark … ブラックマーク検出有効
  • black_mark_and_detect_at_power_on … ブラックマーク検出有効+電源投入時のブラックマーク検出動作有効
  • gap … ダイカットラベル紙等のギャップ検出有効
  • gap_and_detect_at_power_on … ダイカットラベル紙等のギャップ検出有効+電源投入時のギャップ検出動作有効

※省略時はStarWebPrintTraderコンストラクタで指定された値
StarWebPrintTraderコンストラクタでも指定されていない場合は未設定
String-

戻り値

説明
--
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

    trader.sendMessage({request:request});
}
// -->
</script>

isCoverOpen

Star webPRNT受信エレメント列からカバーオープンか確認します。

構文

isCoverOpen(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
カバーオープン状態
  • true … カバーオープン
  • false … カバークローズ
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
        if (trader.isCoverOpen({traderStatus:response.traderStatus})) {
            alert('CoverOpen');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isOffLine

Star webPRNT受信エレメント列からオフラインか確認します。

構文

isOffLine(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
オフライン状態
  • true … オフライン
  • false … オンライン
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isOffLine({traderStatus:response.traderStatus})) {
      alert('OffLine');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isCompulsionSwitchClose

Star webPRNT受信エレメント列からコンパルジョンスイッチがクローズしているか確認します。

構文

isCompulsionSwitchClose(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
コンパルジョンスイッチ状態
  • true … コンパルジョンスイッチクローズ
  • false … コンパルジョンスイッチオープン
Boolean
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isCompulsionSwitchClose({traderStatus:response.traderStatus})) {
      alert('CompulsionSwitchClose');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isEtbCommandExecute

Star webPRNT受信エレメント列からETBコマンド実行済みか確認します。

構文

isEtbCommandExecute(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
ETBコマンド実行状態
  • true … ETBコマンド実行済み
  • false … ETBコマンド未実行
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isEtbCommandExecute({traderStatus:response.traderStatus})) {
      alert('EtbCommandExecute');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isHighTemperatureStop

Star webPRNT受信エレメント列から印字ヘッド高温停止中か確認します。

構文

isHighTemperatureStop(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
印字ヘッド高温停止状態
  • true … 印字ヘッド高温停止
  • false … 印字ヘッド高温未停止
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isHighTemperatureStop({traderStatus:response.traderStatus})) {
      alert('HighTemperatureStop');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isNonRecoverableError

Star webPRNT受信エレメント列から復帰不可能エラーか確認します。

構文

isNonRecoverableError(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
復帰不可能エラー状態
  • true … 復帰不可能エラー発生
  • false … 復帰不可能エラー未発生
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isNonRecoverableError({traderStatus:response.traderStatus})) {
      alert('NonRecoverableError');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isAutoCutterError

Star webPRNT受信エレメント列から用紙カッターエラーか確認します。

構文

isAutoCutterError(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
用紙カッターエラー状態
  • true … 用紙カッターエラー発生
  • false … 用紙カッターエラー未発生
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isAutoCutterError({traderStatus:response.traderStatus})) {
      alert('AutoCutterError');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isBlackMarkError

Star webPRNT受信エレメント列から用紙区切り検出エラーか確認します。

構文

isBlackMarkError(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
用紙区切り検出エラー状態
  • true … 用紙区切り検出エラー発生
  • false … 用紙区切り検出エラー未発生
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isBlackMarkError({traderStatus:response.traderStatus})) {
      alert('BlackMarkError');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isPaperEnd

Star webPRNT受信エレメント列から用紙エンドか確認します。

構文

isPaperEnd(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
用紙エンド状態
  • true … 用紙エンド発生
  • false … 用紙エンド未発生
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isPaperEnd({traderStatus:response.traderStatus})) {
      alert('PaperEnd');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isPaperNearEnd

Star webPRNT受信エレメント列から用紙ニアエンドか確認します。

構文

isPaperNearEnd(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
用紙ニアエンド状態
  • true … 用紙ニアエンド発生
  • false … 用紙ニアエンド未発生
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      if (trader.isPaperNearEnd({traderStatus:response.traderStatus})) {
            alert('PaperNearEnd');
    }
  }

    trader.sendMessage({request:request});
}
// -->
</script>

isPaperPresent

Star webPRNT受信エレメント列から用紙排出口に用紙があるか確認します。

構文

isPaperPresent(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
用紙排出口の状態
  • true … 用紙排出口に用紙あり
  • false … 用紙排出口に用紙なし
Boolean
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
    var trader = new StarWebPrintTrader({url:url});

    trader.onReceive = function (response) {
        if (trader.isPaperPresent({traderStatus:response.traderStatus})) {
            alert('PaperPresent');
        }
    }

    trader.sendMessage({request:request});
}
// -->
</script>

isRollPositionError

Star webPRNT受信エレメント列から用紙位置エラーか確認します。

構文

isRollPositionError(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
用紙位置の状態
  • true … 用紙位置エラー発生
  • false … 用紙位置エラー未発生
Boolean
// --> <script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!-- function onSend(url, request) {
   var trader = new StarWebPrintTrader({url:url});
   trader.onReceive = function (response) {
    if (trader.isRollPositionError({traderStatus:response.traderStatus})) {
       alert('RollPositionError');
     }
   }
          trader.sendMessage({request:request});
 }
 // -->
</script>

extractionEtbCounter

Star webPRNT受信エレメント列からETBカウンタを抽出します。

構文

extractionEtbCounter(args);

名前付き引数

名称説明省略時
traderStatusonReceiveイベントに渡されたresponseのtraderStatusプロパティString省略不可

戻り値

説明
ETBカウンタ値Number
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
      alert('EtbCounter = ' + trader.extractionEtbCounter({traderStatus:response.traderStatus}).toString();
  }

    trader.sendMessage({request:request});
}
// -->
</script>

onReceive

正常受信イベント

構文

function(response);

名前付き引数

名称説明
traderSuccess印刷結果
  • true … 印刷成功
  • false … 印刷失敗
Boolean
traderCode終了コード
  • 0 … 正常終了
  • 1100 … プリンターオフライン状態(エラー発生中)
  • 2001 … プリンタービジー状態(他の端末機器がプリンター使用中:要再送)
Number
traderStatusスター自動ステータス
※コマンド仕様書参照
String
statusXMLHttpRequestオブジェクトのstatusプロパティ
※XMLHttpRequest仕様参照
Number
responseTextXMLHttpRequestオブジェクトのresponseTextプロパティ
※XMLHttpRequest仕様参照
String
// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
        var msg = '- onReceive -\n\n';

        msg += 'TraderSuccess:' + response.traderSuccess + '\n';

       msg += 'TraderCode:' + response.traderCode + '\n';

        msg += 'TraderStatus:' + response.traderStatus + '\n';

        msg += 'Status:' + response.status + '\n';

       msg += 'ResponseText:' + response.responseText;

        alert(msg);
  }

    trader.onError = function (response) {
        var msg = '- onError -\n\n';

        msg += '\tStatus:' + response.status + '\n';

        msg += '\tResponseText:' + response.responseText;

        alert(msg);
    }

    trader.sendMessage({request:request});
}
// -->
</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'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

  trader.onReceive = function (response) {
        var msg = '- onReceive -\n\n';

        msg += 'TraderSuccess:' + response.traderSuccess + '\n';

       msg += 'TraderCode:' + response.traderCode + '\n';

        msg += 'TraderStatus:' + response.traderStatus + '\n';

        msg += 'Status:' + response.status + '\n';

       msg += 'ResponseText:' + response.responseText;

        alert(msg);
  }

    trader.onError = function (response) {
        var msg = '- onError -\n\n';

        msg += '\tStatus:' + response.status + '\n';

        msg += '\tResponseText:' + response.responseText;

        alert(msg);
    }

    trader.sendMessage({request:request});
}
// -->
</script>
statusが413(ペイロードが大きすぎる)の場合は、300mmを目安にリクエストを分割して再度sendMessageメソッドを実行してください。
例:300mm(2400ドット)
<StarWebPrint><bitImage x=576, y=2400> ... </bitImage></StarWebPrint>

timeout

StarWebPrintTraderの通信タイムアウト時間(ms)

// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

       trader.timeout = 120000;

    trader.sendMessage({request:request});
}
// -->
</script>

holdprint_timeout

StarWebPrintTraderの用紙抜き取り待ちタイムアウト時間(ms)

// -->
<script type='text/javascript' src='js/StarWebPrintTrader.js'></script>
<script type='text/javascript'>
<!--
function onSend(url, request) {
  var trader = new StarWebPrintTrader({url:url});

       trader.holdprint_timeout = 30000;

    trader.sendMessage({request:request});
}
// -->
</script>