/****************************************************************************** * * Copyright (c) 2017-2020 Belledonne Communications SARL. * * This file is part of linphone-desktop * (see https://www.linphone.org). * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * *******************************************************************************/ #include "Plugin.hpp" #include #include #include "DataAPI.hpp" #include "NetworkAPI.hpp" QString Plugin::getGUIDescriptionToJson()const{ QJsonObject description; description["pluginTitle"] = "Plugin Example"; description["pluginDescription"] = "This is a test plugin to import an address book from an URL"; QJsonObject field; QJsonArray fields; field["placeholder"] = "SIP Domain"; field["fieldId"] = "SIP_Domain"; field["defaultData"] = ""; // Set by the Data instance from Core field["type"] = 1; field["capability"] = PluginDataAPI::CONTACTS; fields.append(field); field = QJsonObject(); field["placeholder"] = "URL"; field["fieldId"] = "URL"; field["defaultData"] = ""; field["type"] = 1; field["capability"] = PluginDataAPI::CONTACTS; fields.append(field); field = QJsonObject(); field["placeholder"] = "Username"; field["fieldId"] = "Username"; field["defaultData"] = "username@domain.com"; field["type"] = 1; field["capability"] = PluginDataAPI::CONTACTS; fields.append(field); field = QJsonObject(); field["placeholder"] = "Password"; field["fieldId"] = "Password"; field["defaultData"] = "This is a pass"; field["type"] = 1; field["hiddenText"] = true; field["capability"] = PluginDataAPI::CONTACTS; fields.append(field); description["fields"] = fields; QJsonDocument document(description); return document.toJson(); } PluginDataAPI * Plugin::createInstance(void * core, QPluginLoader *pluginLoader){ return new DataAPI(this, core, pluginLoader); }