M module-services/service-cellular/ServiceCellular.cpp => module-services/service-cellular/ServiceCellular.cpp +13 -5
@@ 558,8 558,11 @@ void ServiceCellular::registerMessageHandlers()
connect(typeid(CellularSimStateMessage),
[&](sys::Message *request) -> sys::MessagePointer { return handleSimStateMessage(request); });
- connect(typeid(CellularSimResponseMessage),
- [&](sys::Message *request) -> sys::MessagePointer { return handleSimResponse(request); });
+ connect(typeid(CellularSimPinDataMessage),
+ [&](sys::Message *request) -> sys::MessagePointer { return handleSimPinMessage(request); });
+
+ connect(typeid(CellularSimPukDataMessage),
+ [&](sys::Message *request) -> sys::MessagePointer { return handleSimPukMessage(request); });
connect(typeid(cellular::StateChange),
[&](sys::Message *request) -> sys::MessagePointer { return handleStateRequestMessage(request); });
@@ 1100,21 1103,26 @@ bool ServiceCellular::unlockSimPuk(std::string puk, std::string pin)
return false;
}
-auto ServiceCellular::handleSimResponse(sys::Message *msgl) -> std::shared_ptr<sys::ResponseMessage>
+auto ServiceCellular::handleSimPinMessage(sys::Message *msgl) -> std::shared_ptr<sys::ResponseMessage>
{
-
auto msgSimPin = dynamic_cast<CellularSimPinDataMessage *>(msgl);
if (msgSimPin != nullptr) {
- LOG_DEBUG("Unclocking sim");
+ LOG_DEBUG("Unlocking sim");
return std::make_shared<CellularResponseMessage>(unlockSimPin(SimCard::pinToString(msgSimPin->getPin())));
}
+ LOG_ERROR("Request message is not CellularSimPinDataMessage!");
+ return std::make_shared<CellularResponseMessage>(false);
+}
+auto ServiceCellular::handleSimPukMessage(sys::Message *msgl) -> std::shared_ptr<sys::ResponseMessage>
+{
auto msgSimPuk = dynamic_cast<CellularSimPukDataMessage *>(msgl);
if (msgSimPuk != nullptr) {
LOG_DEBUG("Unlocking puk");
return std::make_shared<CellularResponseMessage>(
unlockSimPuk(SimCard::pinToString(msgSimPuk->getPuk()), SimCard::pinToString(msgSimPuk->getNewPin())));
}
+ LOG_ERROR("Request message is not CellularSimPukDataMessage!");
return std::make_shared<CellularResponseMessage>(false);
}
M module-services/service-cellular/service-cellular/CellularMessage.hpp => module-services/service-cellular/service-cellular/CellularMessage.hpp +0 -48
@@ 348,54 348,6 @@ class CellularSimMessage : public CellularMessage
static const Store::GSM::SIM defaultSimCard = Store::GSM::SIM::SIM1;
};
-class CellularSimResponseMessage : public CellularSimMessage
-{
- public:
- enum class SimState
- {
- SIMUnlocked,
- PINRequired,
- PINInvalidRetryPossible,
- PUKRequired,
- PUKInvalidRetryPossible,
- SIMBlocked
- };
- CellularSimResponseMessage(Store::GSM::SIM sim,
- SimState state,
- unsigned int pinSize,
- unsigned int attemptsLeft = defaultAttemptsLeft)
- : CellularSimMessage(MessageType::CellularSimResponse, sim), state(state), attemptsLeft(attemptsLeft)
- {}
-
- SimState getSimState() const noexcept
- {
- return state;
- }
- utils::PhoneNumber::View getPhoneNumber() const noexcept
- {
- return number;
- }
- unsigned int getPinSize() const noexcept
- {
- return pinSize;
- }
- unsigned int getAttemptsLeft() const noexcept
- {
- return attemptsLeft;
- }
-
- private:
- SimState state = defaultSimState;
- utils::PhoneNumber::View number;
- unsigned int pinSize = defaultPinSize;
- /// ignored if state is not one of { PINInvalidRetryPossible, PUKInvalidRetryPossible }
- unsigned int attemptsLeft = defaultAttemptsLeft;
-
- static const unsigned int defaultPinSize = 4;
- static const unsigned int defaultAttemptsLeft = 4;
- static const SimState defaultSimState = SimState::SIMUnlocked;
-};
-
/// Message use only for mockup GUI purposes
class CellularSimVerifyPinRequestMessage : public CellularSimMessage
{
M module-services/service-cellular/service-cellular/ServiceCellular.hpp => module-services/service-cellular/service-cellular/ServiceCellular.hpp +2 -1
@@ 299,7 299,8 @@ class ServiceCellular : public sys::Service
void handleUSSDTimer();
bool handleSimState(at::SimState state, const std::string message);
- auto handleSimResponse(sys::Message *msgl) -> std::shared_ptr<sys::ResponseMessage>;
+ auto handleSimPinMessage(sys::Message *msgl) -> std::shared_ptr<sys::ResponseMessage>;
+ auto handleSimPukMessage(sys::Message *msgl) -> std::shared_ptr<sys::ResponseMessage>;
std::shared_ptr<cellular::RawCommandRespAsync> handleCellularStartOperatorsScan(
CellularStartOperatorsScanMessage *msg);