test sms sending

This commit is contained in:
Evgeny Zinoviev 2021-03-23 02:25:27 +03:00
parent d33f28a1bf
commit 848cef4ce0
2 changed files with 29 additions and 8 deletions

View File

@ -6,11 +6,18 @@ from bs4 import BeautifulSoup
from bs4.element import Tag
def build_request(params: dict):
def build_request(params: dict, depth=1):
if depth == 1:
return build_request({
'request': params
}, depth=depth+1)
items = []
for key, value in params.items():
if isinstance(value, dict):
value = build_request(value, depth=depth+1)
items.append(f'<{key}>{value}</{key}>')
return '<request>'+''.join(items)+'</request>'
return ''.join(items)
def xml2dict(node):
@ -69,8 +76,18 @@ class WebAPI:
return sms_list
def send_sms(self):
pass
def send_sms(self, phone: str, content: str):
return self.request('sms/send-sms', build_request({
'Index': -1,
'Phones': {
'Phone': phone,
},
'Sca': '',
'Content': content,
'Length': len(content),
'Reserved': 1,
'Date': -1
}))
def dataswitch(self, on=True):
return self.request('dialup/mobile-dataswitch', data=build_request({

12
main.py
View File

@ -8,16 +8,20 @@ def main():
parser.add_argument('--ip',
default='192.168.8.1',
help='Modem IP address')
parser.add_argument('--phone')
parser.add_argument('--content')
args = parser.parse_args()
client = WebAPI(args.ip)
client.auth()
info = client.device_information()
signal = client.device_signal()
# info = client.device_information()
# signal = client.device_signal()
pprint(info)
pprint(signal)
result = client.send_sms(phone=args.phone,
content=args.content)
print(result)
print(type(result))
# messages = client.get_sms()
#