Sto cercando di creare un gateway SMS. Ho una richiesta proveniente da un client (modulo web o API o record del database) che devo elaborare e inoltrare a un'API di terze parti o al provider SMS. Per semplificare le cose, ho deciso di creare un'interfaccia che implementasse l'implementazione di ciascun provider:
interface SMSProvider
public method sendSMS(sendTo,message)
public method sendWakeup(sendTo)
Ho pensato che sarebbe stato il mio miglior modo di procedere perché non avrei dovuto cambiare il mio codice quando l'invio a un altro provider - sapevo che quando creo il mio provider, chiamo semplicemente il metodo per eseguire la funzione con il normale i parametri e tutto va bene ... Beh, finché non avrò un nuovo provider che richiede nuovi parametri
new provider requires
- sendTo
- message
- sendFrom
- validityPeriod
Quindi cosa devo fare? come posso usare la mia interfaccia ora? quando il nuovo provider ha bisogno di parametri extra?