2016-10-27 2 views
0

Ich verwende Epos Drucker iOS SDK in meinem Projekt. Ich kann eine Quittung drucken, aber keine Geldlade öffnen. Irgendwelche Vorschläge welche Methoden in Epos SDK verwendet werden, um Befehle an die Kassenschublade zu senden? (Drucker EPSON TM-U220B, APG Cash Drawer.)Epos Drucker iOS SDK

mit folgendem Code versucht, aber funktioniert nicht

let builder:Epos2Printer = Epos2Printer.init(printerSeries:15, lang: 1) 
var result:Int32 
let a : Int = 1 
let b : Int32 = Int32(a) 
//To send commands to cash drawer 
result = builder.addPulse(b, time:0) 

let str:String = "<XCT>27,112,0,25,250" 
let data:NSData = str.dataUsingEncoding(NSUTF8StringEncoding)! 
result = builder.addCommand(data) 
+0

Haben Sie überprüft diese: http://stackoverflow.com/questions/31626722/open-cash-drawer-with-tmt-t81-epson-ios-sdk?rq=1 – Arasuvel

+0

yep !! dass doesn 't arbeiten .. –

Antwort

0

Früher habe ich zu kämpfen, dies zu tun Ich erinnere mich ... ich meine eigenen Wrapper um ihren Baumeister gebaut, aber Unten ist meine Funktion, die carrerdrawer zu öffnen (die Reihenfolge des zu sendenden Bytes ist ihrer Druckerdokumentation entnommen). Dies funktioniert auch für TM-TII-Drucker, so dass die Byte-Reihenfolge mit Ihrem Modell abweichen kann, aber Sie können definitiv den gleichen Ansatz verwenden, um Bytes zu senden.

ps: transport ist eine interne Funktion meines Wrappers, die verspricht, mit dem Drucker zu kommunizieren.

func openCashDrawer() { 
    transport { 
     let cashDrawerOpenCmd: [Int8] = [0x1B, 0x70, 0x0, 0x20, 0x20] 
     self.builder?.addCommand(NSData(bytes: cashDrawerOpenCmd, length: 5)) 
    }.fail { error in 
     // @TODO properly handle error 
     print("openCashDrawer() error: \(error)") 
    } 
    } 
+0

Wo finde ich SDK für Epos? –