Cześć, czy ktoś miałby ochotę pomóc w implementacji wysyłania SMSów z MobileGadu? Poruszyłem temat
tutaj, ale lepiej prowadzić dyskusję w tym dziale.
Oczywiście w takim przypadku oczekiwałbym zgodności ze zdefiniowanym interfejsem, który aktualnie wygląda tak (w uproszczeniu):
class Sms
{
public:
struct SMS_PARAMS
{
virtual ~SMS_PARAMS();
SMS_PARAMS();
SMS_PARAMS(const SMS_PARAMS& SmsParams);
SMS_PARAMS& operator=(const SMS_PARAMS& SmsParams);
};
public:
virtual ~Sms();
Sms(const TCHAR* tProxy = NULL);
public:
Sms(const Sms& sms);
Sms& operator=(const Sms& sms);
public:
virtual BOOL Send(const TCHAR* tRecipient,const TCHAR* tMessage,SMS_PARAMS* pSmsParams) = 0;
public:
enum SMS_GATEWAY
{
SMS_GATEWAY_TMOBILE = 0,
SMS_GATEWAY_PLUS = 1,
SMS_GATEWAY_ORANGE = 2,
SMS_GATEWAY_PLAY = 3
};
public:
static Sms* GetSms(SMS_GATEWAY SmsGateway,const TCHAR* tProxy);
static SMS_PARAMS* GetSmsParams(SMS_GATEWAY SmsGateway);
};
Dodatkowo klasa bazowa zapewnia dostęp do (tego w tym kodzie nie pokazałem):
metod pomocniczych takich jak konwersje ciągów znakowych, utf8 itp.
uchwytu HINTERNET z InternetOpen() - dalsze działania zależą od implementacji Send()
Dwie ostatnie metody (statyczne) są oczywiste - fabryka obiektów.
Klasa TMobile jest już w 100% gotowa (oczywiście mogę się podzielić kodem jako przykładem), do implementacji byłyby więc klasy:
class Orange : public Sms {};
class Plus : public Sms {};
class Play : public Sms {};
Są zainteresowani?