открыть денежный ящик с помощью TM-T81 epson iOS SDK

Я хочу открыть денежный ящик, который я купил для денежного ящика с принтером. И у меня есть чековый принтер Epson TM-T81.

У меня вызывается делегат, когда я открываю и закрываю принтер вручную, но я хочу, чтобы он открывался автоматически при печати квитанции.

Код, который я написал:

-(void)openDrawer{
    EposBuilder *builder = [[EposBuilder alloc] initWithPrinterModel:@"TM-P20" Lang:0];
    if(builder == nil){
        return ;
    }

//add command
int result;
result  = [builder addPulse:EPOS_OC_DRAWER_1 Time:EPOS_OC_PULSE_100];
NSLog(@"%d command result",result);
NSString *str = @"27 112 48 55 121";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
result = [builder addCommand:data];

NSLog(@"%d pulse",result);

if(result != EPOS_OC_SUCCESS){
    NSLog(@"cut failed");
    return ;
}

//send builder data
unsigned long status = 0;
unsigned long battery = 0;
result = [printer sendData:builder Timeout:10000 Status:&status Battery:&battery];

//remove builder
[builder clearCommandBuffer];

}

Ищите решение от таких экспертов, как вы.


person Aamir'ss    schedule 25.07.2015    source источник
comment
Нет необходимости отправлять символы вручную. Смотрите мой ответ ниже.   -  person Saul Martínez    schedule 10.11.2015
comment
Это возможно только при открытом денежном ящике?   -  person Ziyad Godil    schedule 08.09.2017


Ответы (2)


Ознакомьтесь с документацией.

http://spsrprofessionals.com/ClientSite/readers/ePOS-Print_SDK_141020E/iOS/ePOS-Print_SDK_iOS_en_revN.pdf#page98

Вы ищете метод addPulse строителя.

Единственное, что вам нужно знать, это то, к какому разъему подключен денежный ящик, если у вашего принтера более одного разъема для денежного ящика.

person Saul Martínez    schedule 10.11.2015

Я добавил ниже строку кода и начал работать с серией TM-T20.

[printer_ addPulse:EPOS2_DRAWER_HIGH time:EPOS2_PULSE_100];
person Vikram Chaudhary    schedule 20.02.2020