~aleteoryx/muditaos

ref: 357ae2d51cdc93679b23bb9c99bfe5ed4a54e27f muditaos/module-services/service-cellular/src/volte/VolteCapabilityHandlerCellular.cpp -rw-r--r-- 669 bytes
357ae2d5 — Marcin Zieliński [MOS-825] VoLTE steering according to IMSI 3 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

#include "VolteCapabilityHandlerCellular.hpp"
#include <modem/mux/CellularMux.h>
#include <module-cellular/modem/BaseChannel.hpp>

namespace cellular::service
{
    auto VolteCapabilityCellular::getImsi(at::BaseChannel &channel) -> std::optional<std::string>
    {
        auto result = channel.cmd(at::AT::CIMI);
        if (not result) {
            LOG_ERROR("[VoLTE] failed to read IMSI - will disable VoLTE");
            return std::nullopt;
        }

        return result.response[0];
    }
} // namespace cellular::service