Im trying to create an SMS gateway .. I have a request coming in from a client (web form or API or database record) that I need to process and forward on to a 3rd Party API - or SMS provider. So that things would be simpler going forward I decided to create an interface that each provider implementation would implement :
interface SMSProvider public method sendSMS(sendTo,message) public method sendWakeup(sendTo)
I thought this would be my best way forward because then I wouldn't have to change my code when sending to a different provider - i knew that when i create my provider i just call the method to perform the function with the normal parameters and everything is good ... Well until I have a new provider that requires new parameters
new provider requires - sendTo - message - sendFrom - validityPeriod
So now what do i do ? how can i now use my interface ? when the new provider needs extra parameters ?