source: SMSSender/gateways/CoopMobile/business/gateway.h @ 461:6282b93fcfca

new-gtwy-coopmobile
Last change on this file since 461:6282b93fcfca was 461:6282b93fcfca, checked in by Sämy Zehnder <saemy.zehnder@…>, 4 years ago

Implements the contact importer for the CoopMobile? gateway.

File size: 1.7 KB
Line 
1/*
2  Coop Mobile gateway plugin - The smssender plugin for the Coop Mobile platform.
3  Copyright (C) 2014-2015, gorrión. See http://smssender.gorrion.ch
4
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  GNU General Public License for more details.
14
15  You should have received a copy of the GNU General Public License
16  along with this program.  If not, see <http://www.gnu.org/licenses/>.
17*/
18#ifndef COOPMOBILE_GATEWAY_H
19#define COOPMOBILE_GATEWAY_H
20
21#include <QSet>
22
23#include "common/business/igateway.h"
24
25#ifdef FRONTEND_GUI
26class QIcon;
27#endif
28
29namespace CoopMobile {
30
31class Gateway : public IGateway {
32    Q_INTERFACES(IGateway)
33
34public: /* IGateway */
35    static const QString URL_BASE;
36    static const QString URL_ADDRESS_BOOK;
37    static const QString URL_LOGIN;
38    static const QString URL_SEND_SMS;
39    static const short MAX_RECIPIENTS_PER_SMS;
40    static const short NUM_SHORT_SMS_PER_LONG_SMS;
41
42    QString name() const;
43
44    QList<int> validRecipientCountryCodes() const;
45    IAccount *createAccountInstance();
46
47#ifdef FRONTEND_GUI
48    QIcon icon() const;
49    IAccountSettingsWidget *createAccountSettingsWidget(QWidget *parent) const;
50#endif
51
52public: /* IStorable */
53    ::Persistence::IStorageHelper *createStorageHelper(
54            Persistence::IMainStorage *storage);
55};
56
57}
58
59#endif /* POSTATEWAY_H */
Note: See TracBrowser for help on using the repository browser.