|
@@ -35,9 +35,10 @@ void net_service::on_timer()
|
|
sit_list::instance()->accept(vss);
|
|
sit_list::instance()->accept(vss);
|
|
mine_business::inst()->run_business();
|
|
mine_business::inst()->run_business();
|
|
}
|
|
}
|
|
|
|
+
|
|
void net_service::on_message(std::shared_ptr<client> clt,const char*data,size_t len)
|
|
void net_service::on_message(std::shared_ptr<client> clt,const char*data,size_t len)
|
|
{
|
|
{
|
|
- logn_bin(1,"",data,len);//输出二进制日志
|
|
|
|
|
|
+ logn_bin(1,clt->name().c_str(),data,len);//输出二进制日志
|
|
|
|
|
|
zistream is(data,len-2);
|
|
zistream is(data,len-2);
|
|
uint16_t cmd;
|
|
uint16_t cmd;
|
|
@@ -47,7 +48,8 @@ void net_service::on_message(std::shared_ptr<client> clt,const char*data,size_t
|
|
case 0x843b://tof
|
|
case 0x843b://tof
|
|
{
|
|
{
|
|
uint32_t site_id;
|
|
uint32_t site_id;
|
|
- is>>site_id>>skip(12);
|
|
|
|
|
|
+ uint8_t power;
|
|
|
|
+ is>>site_id>>skip(11)>>power;
|
|
auto site_ptr = sit_list::instance()->get(static_cast<int32_t>(site_id));
|
|
auto site_ptr = sit_list::instance()->get(static_cast<int32_t>(site_id));
|
|
if(!site_ptr)
|
|
if(!site_ptr)
|
|
{
|
|
{
|
|
@@ -55,6 +57,7 @@ void net_service::on_message(std::shared_ptr<client> clt,const char*data,size_t
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
site_ptr->set_client(clt);
|
|
site_ptr->set_client(clt);
|
|
|
|
+ site_ptr->on_power_status((power&1)==0);
|
|
|
|
|
|
struct timeval tv;
|
|
struct timeval tv;
|
|
gettimeofday(&tv,NULL);
|
|
gettimeofday(&tv,NULL);
|
|
@@ -66,7 +69,7 @@ void net_service::on_message(std::shared_ptr<client> clt,const char*data,size_t
|
|
index++;
|
|
index++;
|
|
task*t=task::alloc<message_locinfo>();
|
|
task*t=task::alloc<message_locinfo>();
|
|
message_locinfo&m=t->body<message_locinfo>();
|
|
message_locinfo&m=t->body<message_locinfo>();
|
|
- m.load(is,cmd==0x863b);
|
|
|
|
|
|
+ m.load(is,false);
|
|
m.m_time_stamp=tstamp;
|
|
m.m_time_stamp=tstamp;
|
|
m.m_site_id=site_id;
|
|
m.m_site_id=site_id;
|
|
|
|
|
|
@@ -86,7 +89,7 @@ void net_service::on_message(std::shared_ptr<client> clt,const char*data,size_t
|
|
{
|
|
{
|
|
task*t=task::alloc<message_locinfo>();
|
|
task*t=task::alloc<message_locinfo>();
|
|
message_locinfo&m=t->body<message_locinfo>();
|
|
message_locinfo&m=t->body<message_locinfo>();
|
|
- m.load(is,cmd==0x863b);
|
|
|
|
|
|
+ m.load(is,true);
|
|
m.m_site_id=site_id;
|
|
m.m_site_id=site_id;
|
|
t->m_cmd_code=cmd;
|
|
t->m_cmd_code=cmd;
|
|
t->m_hash_id=m.m_card_id;
|
|
t->m_hash_id=m.m_card_id;
|