Official reference client implementation for Cumulocity SmartREST on u-blox C027.

Dependencies:   C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed

Fork of MbedSmartRestMain by Vincent Wochnik

DeviceInfo.h

Committer:
xinlei
Date:
2016-08-08
Revision:
139:f8ab852e83e7
Parent:
117:5de54f09f754

File content as of revision 139:f8ab852e83e7:

#ifndef DEVICEINFO_H
#define DEVICEINFO_H
#include "MDM.h"

class DeviceInfo
{
public:
    typedef struct {
        int rssi;  // RSSI [dBm]
        int ber;   // BER [%]
    } SignalQuality;

    DeviceInfo(MDMParser::DevStatus& devStatus) {
        *_cellId = 0;
        memcpy(&_devStatus, &devStatus, sizeof(MDMParser::DevStatus));
        memset(&_netStatus, 0, sizeof(MDMParser::NetStatus));
        memset(&_signalQuality, 0, sizeof(DeviceInfo::SignalQuality));
    }
    
    const char* cellId();
    const char* iccid() const { return _devStatus.ccid; }
    const char* imei() const { return _devStatus.imei; }
    const char* imsi() const { return _devStatus.imsi; }
    SignalQuality * signalQuality(bool realTime=true);

private:
    MDMParser::DevStatus _devStatus;
    MDMParser::NetStatus _netStatus;
    char _cellId[9];
    SignalQuality _signalQuality;
};

#endif