|
1
2
3
4
5
6
7
8
|
//
// CommunicationProtocol.h
// DUREX Vendor Control
//
// Created by Imanol Barba on 5/23/14.
// Copyright (c) 2014 Emmoco. All rights reserved.
//
|
|
9
10
|
@class CommunicationProtocol;
|
|
11
12
13
|
#import <Foundation/Foundation.h>
#import "EMFramework.h"
|
|
14
|
#define SLEEP_TIME ((NSTimeInterval)1)
|
|
15
16
17
|
#define MAX_STRING_LENGTH ((int)200)
#define MAX_RETRIES ((int)3)
#define MAX_PRODUCT_NAME_LENGTH ((int)64)
|
|
18
|
#define MAX_CHANNELS ((int)16)
|
|
19
20
21
|
#define MONEY_IN_NUM_UNITS ((int)6)
#define MONEY_OUT_NUM_UNITS ((int)3)
#define CHANGE_NUM_UNITS ((int)2)
|
|
22
|
#define MAX_PRODUCTS ((int)16)
|
|
23
|
#define SALE_STRING_LENGTH ((int)36)
|
|
24
|
#define INCIDENT_STRING_LENGTH ((int)20)
|
|
25
|
#define REPORT_SERVER_URL @"http://seneca.upc.es:8090/machine"
|
|
26
|
|
|
27
|
@protocol CommunicationProtocolDelegate <NSObject>
|
|
28
|
- (void) processMessage:(CommunicationProtocol*)protocol didFinishEnteringItem:(NSString*) response;
|
|
29
|
- (void) reportProtocolError: (CommunicationProtocol*)protocol didFinishEnteringItem:(NSString*) error;
|
|
30
31
|
@end
|
|
32
33
|
@interface CommunicationProtocol : NSObject
|
|
34
35
|
@property (nonatomic, strong) id <CommunicationProtocolDelegate> delegate;
|
|
36
37
|
-(void) writeMessage: (NSString*) message;
-(void) readMessage;
|
|
38
|
-(void) establishConnection;
|
|
39
|
-(void) disconnect;
|
|
40
41
42
43
44
|
-(void) updateTime: (NSDateComponents*) date;
-(void) updatePrice: (uint8_t) channel : (uint8_t) product : (uint8_t) eur : (uint8_t) cents;
-(void) updateProductName: (uint8_t) channel : (uint8_t) product : (NSString*) name;
-(void) readSensorData;
-(void) readSalesLog: (NSDateComponents*) start : (NSDateComponents*) end;
|
|
45
|
-(void) readIncidentLog: (NSDateComponents*) start : (NSDateComponents*) end;
|
|
46
47
48
|
+(id) sharedProtocol;
@end
|