Browse Source

Added IMSI

v_master
Sara Damiano 5 years ago
parent
commit
cef8aefefc
3 changed files with 18 additions and 15 deletions
  1. +4
    -0
      src/TinyGsmClientXBee.h
  2. +0
    -15
      src/TinyGsmCommon.h
  3. +14
    -0
      src/TinyGsmGPRS.tpp

+ 4
- 0
src/TinyGsmClientXBee.h View File

@ -836,6 +836,10 @@ class TinyGsmXBee
return sendATGetString(GF("IM"));
}
String getIMSIImpl() {
return sendATGetString(GF("II"));
}
SimStatus getSimStatusImpl(uint32_t) {
return SIM_READY; // unsupported
}


+ 0
- 15
src/TinyGsmCommon.h View File

@ -117,18 +117,3 @@ uint32_t TinyGsmAutoBaud(T& SerialAT, uint32_t minimum = 9600,
}
#endif // SRC_TINYGSMCOMMON_H_
// Asks for International Mobile Subscriber Identity IMSI via the AT+CIMI command
#define TINY_GSM_MODEM_GET_IMSI_CIMI() \
String getIMSI() { \
sendAT(GF("+CIMI")); \
if (waitResponse(GF(GSM_NL)) != 1) { \
return ""; \
} \
String res = stream.readStringUntil('\n'); \
waitResponse(); \
res.trim(); \
return res; \
}

+ 14
- 0
src/TinyGsmGPRS.tpp View File

@ -38,6 +38,10 @@ class TinyGsmGPRS {
String getIMEI() {
return thisModem().getIMEIImpl();
}
// Asks for International Mobile Subscriber Identity IMSI
String getIMSI() {
return thisModem().getIMSIImpl();
}
SimStatus getSimStatus(uint32_t timeout_ms = 10000L) {
return thisModem().getSimStatusImpl(timeout_ms);
}
@ -105,6 +109,16 @@ class TinyGsmGPRS {
return res;
}
// Asks for International Mobile Subscriber Identity IMSI via the AT+CIMI
// command
String getIMSIImpl() {
thisModem().sendAT(GF("+CIMI"));
String res = thisModem().stream.readStringUntil('\n');
thisModem().waitResponse();
res.trim();
return res;
}
SimStatus getSimStatusImpl(uint32_t timeout_ms = 10000L) {
for (uint32_t start = millis(); millis() - start < timeout_ms;) {
thisModem().sendAT(GF("+CPIN?"));


Loading…
Cancel
Save