extend info by name

This commit is contained in:
hg
2015-05-29 22:38:24 +02:00
parent 5ee153bd6a
commit 9d8a8d9ebd
9 changed files with 65 additions and 39 deletions

View File

@ -99,12 +99,12 @@ String SendOctets::exec(String params) {
if (err) {
return "error";
} else {
m_meterBusMaster->sendBufferReady(sendBufLen, 1, this);
m_meterBusMaster->sendBufferReady(sendBufLen, 1, 0, this);
return "success";
}
}
void SendOctets::sendResponse(uint8_t *responseBuffer, uint16_t responseBufferLength, uint8_t token) {
void SendOctets::sendResponse(uint8_t *responseBuffer, uint16_t responseBufferLength, uint8_t token, char *name) {
Print *out = m_server;
out->print("SO RESP: ");
uint16_t i = 0;
@ -122,7 +122,7 @@ void SendOctets::sendResponse(uint8_t *responseBuffer, uint16_t responseBufferLe
out->println("");
}
void SendOctets::sendError(uint8_t code, uint8_t token) {
void SendOctets::sendError(uint8_t code, uint8_t token, char *name) {
switch (code) {
case 1:
m_server->println("SO RESP: no resp.");
@ -160,12 +160,13 @@ uint8_t *MeterBusMaster::getSendBuffer() {
return m_expectResponse ? 0 : m_sendBuffer;
}
void MeterBusMaster::sendBufferReady(uint16_t sendBufLen, uint8_t token, ResponseCallback *responseCallback) {
void MeterBusMaster::sendBufferReady(uint16_t sendBufLen, uint8_t token, char *name, ResponseCallback *responseCallback) {
m_cmdReadyToSend = true;
m_retransmitCount = 0;
m_sendBufLen = sendBufLen;
m_responseCallback = responseCallback;
m_token = token;
m_name = name;
}
void MeterBusMaster::prepareResponse(bool err, uint8_t in) {
@ -177,7 +178,7 @@ void MeterBusMaster::prepareResponse(bool err, uint8_t in) {
if (err) {
//Serial << "r1" << endl;
if (m_responseCallback != 0) {
m_responseCallback->sendError(1, m_token);
m_responseCallback->sendError(1, m_token, m_name);
}
expectedChars = 0;
state = 0;
@ -225,7 +226,7 @@ void MeterBusMaster::prepareResponse(bool err, uint8_t in) {
if (expectedChars == 0) {
//Serial << "r9" << endl;
if (m_responseCallback != 0) {
m_responseCallback->sendResponse(m_recvBuffer, m_recvBufLen, m_token);
m_responseCallback->sendResponse(m_recvBuffer, m_recvBufLen, m_token, m_name);
}
m_expectResponse = false;
m_token = 0;