File indexing completed on 2024-04-28 16:42:53

0001 // SPDX-FileCopyrightText: 2021 Alexey Andreyev <aa13q@ya.ru>
0002 //
0003 // SPDX-License-Identifier: LicenseRef-KDE-Accepted-GPL
0004 
0005 #include "modem-controller.h"
0006 
0007 #include <QDebug>
0008 
0009 ModemController::ModemController(QObject *parent)
0010     : QObject(parent)
0011 {
0012 }
0013 
0014 QString ModemController::protocol()
0015 {
0016     return QStringLiteral("tel");
0017 }
0018 
0019 QString ModemController::subsystem()
0020 {
0021     return QStringLiteral("native");
0022 }
0023 
0024 QStringList ModemController::deviceUniList()
0025 {
0026     return _deviceUniList;
0027 }
0028 
0029 void ModemController::appendDeviceUni(const QString &deviceUni)
0030 {
0031     if (!deviceUniList().contains(deviceUni)) {
0032         qDebug() << "found new device:" << deviceUni;
0033         _deviceUniList.append(deviceUni);
0034         Q_EMIT deviceUniListChanged(_deviceUniList);
0035     }
0036 }
0037 
0038 void ModemController::setDeviceUniList(const QStringList &newDeviceUniList)
0039 {
0040     if (_deviceUniList == newDeviceUniList)
0041         return;
0042     _deviceUniList = newDeviceUniList;
0043     Q_EMIT deviceUniListChanged(_deviceUniList);
0044 }
0045 
0046 QString ModemController::equipmentIdentifier(const QString &deviceUni)
0047 {
0048     Q_UNUSED(deviceUni);
0049     return QString();
0050 }
0051 
0052 QString ModemController::deviceUni(const QString &equipmentIdentifier)
0053 {
0054     // TODO: improve deviceUni getter
0055     for (const auto &deviceUni : qAsConst(_deviceUniList)) {
0056         if (equipmentIdentifier == ModemController::equipmentIdentifier(deviceUni)) {
0057             return deviceUni;
0058         }
0059     }
0060 
0061     return QString();
0062 }
0063 
0064 void ModemController::ussdInitiate(const QString &deviceUni, const QString &command)
0065 {
0066     Q_UNUSED(deviceUni);
0067     Q_UNUSED(command);
0068 }
0069 
0070 void ModemController::ussdRespond(const QString &deviceUni, const QString &reply)
0071 {
0072     Q_UNUSED(deviceUni);
0073     Q_UNUSED(reply);
0074 }
0075 
0076 void ModemController::ussdCancel(const QString &deviceUni)
0077 {
0078     Q_UNUSED(deviceUni);
0079 }
0080 
0081 QString ModemController::callNumber(const QString &deviceUni, const QString &callUni)
0082 {
0083     Q_UNUSED(deviceUni);
0084     Q_UNUSED(callUni);
0085     return QString();
0086 }
0087 
0088 void ModemController::createCall(const QString &deviceUni, const QString &callUni)
0089 {
0090     Q_UNUSED(deviceUni);
0091     Q_UNUSED(callUni);
0092 }
0093 
0094 void ModemController::acceptCall(const QString &deviceUni, const QString &callUni)
0095 {
0096     Q_UNUSED(deviceUni);
0097     Q_UNUSED(callUni);
0098 }
0099 
0100 void ModemController::hangUp(const QString &deviceUni, const QString &callUni)
0101 {
0102     Q_UNUSED(deviceUni);
0103     Q_UNUSED(callUni);
0104 }
0105 
0106 void ModemController::sendDtmf(const QString &deviceUni, const QString &callUni, const QString &tones)
0107 {
0108     Q_UNUSED(deviceUni);
0109     Q_UNUSED(callUni);
0110     Q_UNUSED(tones);
0111 }
0112 
0113 DialerTypes::CallDataVector ModemController::fetchCalls()
0114 {
0115     return DialerTypes::CallDataVector();
0116 }
0117 
0118 DialerTypes::CallData ModemController::getCall(const QString &deviceUni, const QString &callUni)
0119 {
0120     Q_UNUSED(deviceUni);
0121     Q_UNUSED(callUni);
0122     DialerTypes::CallData callData;
0123     return callData;
0124 }
0125 
0126 void ModemController::deleteCall(const QString &deviceUni, const QString &callUni)
0127 {
0128     Q_UNUSED(deviceUni);
0129     Q_UNUSED(callUni);
0130 }