33 lines
871 B
Python
33 lines
871 B
Python
from abc import ABC, abstractmethod
|
|
import requests
|
|
|
|
|
|
class SmsProviderABC(ABC):
|
|
@abstractmethod
|
|
def send_sms(self, mobile: str, message: str) -> bool:
|
|
pass
|
|
|
|
|
|
class DefaultSmsProvider(SmsProviderABC):
|
|
def send_sms(self, mobile: str, message: str) -> bool:
|
|
default_provider = DosefrNavadHashtSMS()
|
|
return default_provider.send_sms(mobile, message)
|
|
|
|
|
|
class DosefrNavadHashtSMS(SmsProviderABC):
|
|
def send_sms(self, mobile: str, message: str) -> bool:
|
|
payload = {
|
|
'USERNAME': 'vsms7937',
|
|
'PASSWORD': '335577775533',
|
|
'FROM': '30005367',
|
|
'TO': int(mobile),
|
|
'TEXT': f'{message}'
|
|
}
|
|
r = requests.get('http://www.0098sms.com/sendsmslink.aspx', params=payload)
|
|
|
|
if r.status_code == 200:
|
|
return True
|
|
else:
|
|
return False
|
|
|