API 레퍼런스가이드 Rev. 1.05 http://www.bixolon.co.kr
목차 1. 매뉴얼안내... 3 2. 개요... 3 2-1 특징... 3 2-2 용어... 3 2-3 지원 O/S & 웹브라우저... 3 2-3-1 Windows... 3 2-3-2 웹브라우저... 3 2-4 지원프린터모델... 4 2-4-1 Label 프린터... 4 2-4-2 POS 프린터... 4 2-4-3 Mobile 프린터... 4 2-4-4 B-gate... 4 3. 설치... 5 3-1 Overview... 5 3-2 WebDriver 설치및삭제... 5 3-2-1 설치하기... 5 3-2-2 삭제하기... 7 3-3 프린터설정... 8 3-3-1 프린터추가... 9 3-3-2 프린터삭제... 11 3-3-3 프린터설정변경... 11 3-3-4 프린터인쇄테스트... 11 3-4 설정... 12 3-4-1 실행시창보이기... 13 3-4-2 Listening port 설정... 13 3-4-3 중복요청체크... 13 3-4-4 Log... 13 4. API 레퍼런스... 14 4-1 개요... 14 4-2 JSON 데이터생성하기... 14 4-2-1 mode... 14 4-2-2 id... 14 4-2-3 인쇄요청데이터... 15 4-3 bxlcommon.js... 17 4-3-1 인쇄요청... 17 4-3-2 인쇄결과요청... 19 Rev. 1.05-2 -
1. 매뉴얼안내 이매뉴얼은빅솔론 와함께빅솔론이제공하는라벨프린터, POS 프린터, 모바일프린터제품군을사용하기위한어플리케이션제작에필요한정보들을포함하고있습니다. 를사용하실분들은사용전에이설명서에있는내용을주의깊게읽어보시기바랍니다. 2. 개요 2-1 특징 웹브라우저에서 빅솔론의프린터를제어하는것을용이하게합니다. 주의 V1.0.4 부터 Web Browser 의수신포트의기본값이 18080 포트로변경되었습니다. 2-2 용어 BIXOLON Label SDK: 에서라벨프린터를제어하기위해사용하는 SDK B-gate SDK: 에서 POS 프린터, 모바일프린터를제어하기위해사용하는 SDK JSON: JavaScript Object Notation 의약자로, 간단한형태의데이터를주고받기위한데이터포맷 2-3 지원 O/S & 웹브라우저 2-3-1 Windows Microsoft Windows XP (32bit/64bit) Microsoft Windows VISTA (32bit/64bit) Microsoft Windows 7 (32bit/64bit) Microsoft Windows 8 (32bit/64bit) Microsoft Windows 10 (32bit/64bit) 2-3-2 웹브라우저 jquery 및 XmlHttpRequest Object 사용이가능한웹브라우저 - IE10 이상 - Edge - Chrome Rev. 1.05-3 -
2-4 지원프린터모델 2-4-1 Label 프린터 SLP-TX400 / SLP-TX403 / SLP-TX420 / SLP-TX423 / SLP-TX220 / SLP-TX223 SLP-DX420 / SLP-DX423 / SLP-DX220 / SLP-DX223 / SLP-DL410 / SLP-DL413 SRP-770II / SRP-770III / SRP-E770III XT5-40 / XT5-43 / XT5-46 SPP-L3000 SPP-L310 / SPP-L410 XD3-40d 2-4-2 POS 프린터 SRP-S300 SRP-Q300 / SRP-Q302 / SRP-QE300 / SRP-QE302 SRP-380 / SRP-382 / SRP-383 SRP-F310II / SRP-F312II / SRP-F313II SRP-350III / SRP-352III / SRP-350plusIII / SRP-352plusIII SRP-330II / SRP-332III / SRP-340II / SRP-342II SRP-E300 / SRP-E302 SRP-Q200 2-4-3 Mobile 프린터 SPP-R210 / SPP-R220 / SPP-R200III SPP-R310 SPP-R410 / SPP-R400II 2-4-4 B-gate BGT-100P / BGT-102P SRP-Q300H / SRP-Q302H IFJ-BGT(B-gate 인터페이스타입 ) Rev. 1.05-4 -
3. 설치 3-1 Overview 의설치및 PC 와연결된프린터를설정하고 에포함된웹서버구동에필요한설정을합니다. 3-2 WebDriver 설치및삭제 3-2-1 설치하기 1) Software_BIXOLON_Web_driver_Setup.exe 파일을실행하여안내메세지에따라설치를진행합니다. 2) 설치가완료되면 Finish 를클릭합니다. Rev. 1.05-5 -
3) 아래와같은방화벽설정화면이표시되면 액세스허용 을클릭합니다. 주의 액세스를허용하지않을경우 가정상적으로동작하지않을수있습니다. 4) Web driver 가실행되면서아래화면이표시됩니다. Rev. 1.05-6 -
3-2-2 삭제하기 Web driver 를삭제하기전현재실행되고있는 Web driver 를종료합니다. Web driver 의종료는모니터우측하단의트레이아이콘을오른쪽클릭하고 Exit 를클릭합니다. 주의 를종료하지않고삭제하는경우정상적으로삭제되지않습니다. 1) 시작 프로그램 BIXOLON Web driver 에서 Uninstall BIXOLON Web driver 을선택하거나 제어판 프로그램추가 / 삭제 에서 BIXOLON Web driver 를삭제합니다. 삭제화면이표시되면안내메시지에따라버튼을클릭하시면됩니다. 2) 정상적으로삭제되었다면아래메시지창이나타납니다. 확인 을클릭합니다. Rev. 1.05-7 -
3) 정상적으로삭제되지않았다면아래메시지창이나타납니다. 확인 을클릭합니다. 이런경우 의설치폴더를찾아남은파일을삭제하면됩니다. 참고 기본설치경로 : C:\BIXOLON Web driver 3-3 프린터설정 에서사용할프린터를설정합니다. 프린터는 가구동되는 PC에연결되어있어야합니다. 프린터를추가하고, 등록된프린터의설정을수정 / 삭제할수있습니다. Rev. 1.05-8 -
3-3-1 프린터추가 1) Add Printer 를클릭합니다. Logical name 을지정하고연결된프린터의통신설정을하고 Save 를클릭합니다. 주의 - Printer Type 이연결된프린터와다른경우정상동작하지않을수있습니다. 빅솔론의제품군에맞게선택해야합니다. - Logical name 을지정하지않는경우 Web Application 에서프린터를사용할수없습니다. - 현재 USB 로연결된프린터가없는경우 USB 를선택하면 No printers connected 메시지가출력되고, Serial 이선택됩니다. Rev. 1.05-9 -
2) Ethernet 통신설정은 Search 버튼을클릭하면현재 PC와동일네트워크에있는프린터의 IP 주소가표시됩니다. 프린터의 IP가표시되지않는경우직접입력할수있습니다. 이름 설명 Printer Type 프린터타입이표시됩니다. Logical name Web Application에서인쇄를요청할프린터의이름입니다. Device name 실제장치의이름입니다. Interface type 연결된프린터의인터페이스 USB인경우연결된프린터이름또는 USB 정보표시 Port Serial 또는 Bluetooth 인경우 COM포트선택 LPT인경우 LPT포트선택 Ethernet인경우 IP주소 Test Print 인쇄테스트 Rev. 1.05-10 -
3) 프린터설정을완료하면아래와같이등록된프린터목록이나타납니다. 3-3-2 프린터삭제프린터목록에서원하는프린터를선택후 Remove Printer 를클릭합니다. 선택한프린터가목록에서삭제됩니다. 3-3-3 프린터설정변경프린터목록에서수정을원하는프린터를선택후 Printer setting 을클릭합니다. 프린터추가하기와같은화면이표시됩니다. 3-3-4 프린터인쇄테스트프린터목록에서원하는프린터를선택후 Test Print 을클릭합니다. 프린터로인쇄가되는지확인합니다. 주의인쇄가되지않는다면통신설정을확인해야합니다. Rev. 1.05-11 -
3-4 설정 의설정을할수있습니다. 1) setting 을클릭합니다. 주의 설정은저장후재실행시적용됩니다. Rev. 1.05-12 -
3-4-1 실행시창보이기 실행시 의창이보일지여부를설정합니다. 창이안보이게하는경우트레이아이콘으로표시되어실행됩니다. 기본값은실행시보임으로설정되어있습니다. 3-4-2 Listening port 설정 Web driver의 Listening port를설정합니다. Listening port는 Web driver가 Web Application 의데이터요청을처리하는포트번호입니다. 기본값은 18080입니다. 3-4-3 중복요청체크 웹브라우저에서중복된데이터요청을하는경우 Web driver에서중복요청을확인할수있습니다. 기본값은중복요청미확인입니다. 3-4-4 Log Web driver 의 Log 를기록할수있습니다. 기본값은비활성화입니다. Rev. 1.05-13 -
4. API 레퍼런스 4-1 개요 에서프린터를제어하는기본적인기능을제공하고, 웹브라우저에서 에요청은 XmlHttpRequest 객체를사용하며, 전달하는데이터형식은 JSON 을사용합니다. 샘플은 설치폴더에있으며아래와같이구성되어있습니다. - bxlcommom.js : 인쇄요청및인쇄결과학인요청 - Sample_PosPrinter.html : 영수증프린터샘플 ( 샘플 JSON 데이터포함 ) - Sample_LabelPrinter.html : 라벨프린터샘플 ( 샘플 JSON 데이터포함 ) 참고 샘플은 설치폴더에있습니다. 기본설치경로 : C:\BIXOLON 4-2 JSON데이터생성하기 의데이터처리를요청하기위해서 mode값, 각요청의 id 값그리고인쇄요청데이터가포함되어야합니다. 4-2-1 mode 데이터처리모드값입니다. 데이터처리모드에따라인쇄요청데이터를생성해야합니다. 값설명 0 API 모드 1 텍스트모드 2 Hex 문자열모드 4-2-2 id 에서동일데이터의중복처리를막기위한값입니다. 숫자값만사용가능합니다. 중복처리옵션을비활성화할수있습니다. *sample code { mode :0, id :1, Rev. 1.05-14 -
4-2-3 인쇄요청데이터 1) API 모드 *sample code { mode :0, //API mode id :1, functions :{ func1 :{ function name :[func1 parameters], func2 :{ function name :[func2 parameters],. funcn :{ function name :[funcn parameters] 참고 - 라벨프린터인쇄요청데이터생성시각함수의 API 설명은빅솔론 Label SDK 매뉴얼을참조하십시오. - POS프린터및모바일프린터인쇄요청데이터생성시각함수의 API 설명은 B-gate SDK 매뉴얼을참조하십시오. 2) 텍스트모드데이터를변경없이프린터로전송합니다. 라벨프린터의경우라벨에뮬레이션을그대로사용할수있습니다. *sample code { mode :1, //text mode id :1, functions :{ data : Web driver text mode sample\n Rev. 1.05-15 -
3) Hex 문자열모드프린터로전달하는데이터를 16진수형식의문자열로사용합니다. POS프린터및모바일프린터의경우 16진수형식의문자열로사용할수있습니다. *sample code { mode :2, //Hex string mode id :1, functions :{ data : 776562206472697665722074657874206d6f64652073616d706c650a Rev. 1.05-16 -
4-3 bxlcommon.js 참고 - 의요청 URL : http://127.0.0.1:18080/webdriver/ - var serverurl 변수가 js 파일에선언되어있습니다. 4-3-1 인쇄요청 XmlHttpRequestObject 생성하여인쇄요청을합니다. 인쇄요청순서는아래와같습니다. 1) XmlHttpRequest 객체를생성합니다. //------------------------- XmlHttpRequest 객체생성코드 -------------------------------- var httprequest; if (window.xmlhttprequest) { httprequest = new XMLHttpRequest(); else if (window.activexobject) { // IE 6 httprequest = new ActiveXObject("Microsoft.XMLHTTP"); Rev. 1.05-17 -
2) 의인쇄요청 URL로인쇄요청아래는 Web driver에서설정된 Printer1 에인쇄요청하는예제코드입니다. * sample code function requestprint(strprintername, strsubmit, _callback) { var requesturl = serverurl + strprintername +".bxl"; var xmlhttpreq = false; if (window.xmlhttprequest) { // Chrome/Mozilla/Safari, IE7 or later xmlhttpreq = new XMLHttpRequest(); //make XmlHttpRequest Object xmlhttpreq.open('post', requesturl, true); xmlhttpreq.setrequestheader('content-type', 'application/x-www-form-urlencoded'); xmlhttpreq.send(strsubmit); xmlhttpreq.onreadystatechange = function() { if (xmlhttpreq.readystate == 4 && xmlhttpreq.status == 200) { var res = JSON.parse(xmlHttpReq.responseText); var ret = res.result; if(ret.search("ready") >= 0 ret.search("progress") >= 0) { //If response is not properly, can select POST or GET method. checkresult('post', strprintername, res.requestid, res.responseid, _callback); //checkresult('get', strprintername, res.requestid, res.responseid, _callback); else if(ret.search("duplicated") >= 0) { _callback(res.result); else if (xmlhttpreq.readystate == 4 && xmlhttpreq.status == 404) { _callback("no printers"); else if(xmlhttpreq.readystate == 4) { _callback("can?t connect to server"); Rev. 1.05-18 -
4-3-2 인쇄결과요청 XmlHttpRequest Object 생성하여인쇄결과확인요청을합니다. 인쇄결과확인요청순서는아래와같습니다. 1) XmlHttpRequest 객체를생성합니다. 2) 인쇄결과확인요청 JSON Data 만들기 function makeresultinquirydata(requestid, responseid, timeout) { return "{\"RequestID\":"+requestId+", + \"ResponseID\":\""+responseId+"\", + \"Timeout\":"+timeout+""; 3) 인쇄결과 URL로요청 참고 인쇄결과요청은 GET 과 POST 방식모두지원합니다. 방식에따라 URL 이다르니주의하시기바랍니다. Printer1 에인쇄요청결과를확인하는예제코드입니다. Rev. 1.05-19 -
* sample code function checkresult(method, strprintername, requestid, responseid, _callback) { var requesturl = serverurl + strprintername +"/checkstatus.bxl"; // POST if(method == 'GET'){ requesturl = serverurl + strprintername + "/" + responseid; // GET var xmlhttpcheck = false; if (window.xmlhttprequest) { xmlhttpcheck = new XMLHttpRequest(); var inquirydata = makeresultinquirydata(requestid, responseid, 30); xmlhttpcheck.open(method, requesturl, true); xmlhttpcheck.setrequestheader('content-type', 'application/x-www-form-urlencoded'); xmlhttpcheck.send(inquirydata); xmlhttpcheck.onreadystatechange = function() { if (xmlhttpcheck.readystate == 4 && xmlhttpcheck.status == 200) { var res = JSON.parse(xmlHttpCheck.responseText); var ret = res.result; if(ret.search("ready") >= 0 ret.search("progress") >= 0) { checkresult(method, strprintername, requestid, responseid, _callback); else { _callback(res.responseid + ":"+ ret); else if (xmlhttpcheck.readystate == 4 && xmlhttpcheck.status == 404) { _callback("no printers"); else if(xmlhttpcheck.readystate == 4) { _callback("cannot connect to server"); Rev. 1.05-20 -
저작권 BIXOLON Co., Ltd. 모든권한을소유합니다. 이사용설명서와제품에사용된저작물은저작권법에의해보호되어있습니다. ( 주 ) 빅솔론의사전서면동의없이사용설명서및제품에사용된저작물에대한일부또는전체를무단으로복제, 저장, 전송하는것을금합니다. 제공된정보는본제품에만해당되며다른제품에대해서는적용되지않습니다. 또한본정보사용으로인해발생하는직 / 간접적손해에대해책임지지않습니다. 빅솔론로고는 ( 주 ) 빅솔론의등록상표입니다. 모든다른상표또는제품이름은해당하는회사또는조직의상표입니다. ( 주 ) 빅솔론은제품의기능과품질향상을위하여지속적인개선을하고있습니다. 이로인하여제품의사양과매뉴얼의내용은사전통보없이변경될수있습니다. 사용시주의사항 프린터와같은전자제품은정전기에의해쉽게훼손될수있습니다. 정전기로부터프린터를보호하기위해서는프린터후면부에케이블을연결하거나제거하기전에반드시프린터전원을끄십시오. 만약프린터가정전기로부터손상을입었을경우에는가까운구입처에문의하십시오. Rev. 1.05-21 -
개정이력 Rev. 날짜 페이지 설명 1.00 18.01.12 - 신규제작 1.01 18.03.09 4,5,6,7,8,9,10, 11,12,15,16,17, B-gate모델추가및샘플내용변경 18,19,20 1.02 18.05.23 4 XT5 모델명변경 1.03 18.09.05 4 SRP-383 모델추가 1.04 19.01.02 3,4,18 TCP수신포트변경 SPP-L310/L410 모델추가예제코드수정 1.05 19.03.04 3,14,17,18,20 지원웹브라우저표기변경샘플구성및경로표기 bxlcommon.js 항목추가변경샘플적용 SRP-Q200, XD3-40d 모델추가 Rev. 1.05-22 -