early concept v1
This commit is contained in:
38
get_bm_message.py
Normal file
38
get_bm_message.py
Normal file
@@ -0,0 +1,38 @@
|
||||
import argparse
|
||||
import base64
|
||||
import json
|
||||
import xmlrpclib
|
||||
|
||||
def get_next_message(api, to_address, prev_id):
|
||||
messages = json.loads(api.getAllInboxMessages())['inboxMessages']
|
||||
messages = [m for m in messages if m['toAddress'] == to_address]
|
||||
if len(messages) == 0:
|
||||
return None
|
||||
if not prev_id:
|
||||
return messages[0]
|
||||
for (prev, next) in zip(messages, messages[1:]):
|
||||
if prev['msgid'] == prev_id:
|
||||
return next
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('--prev-id')
|
||||
parser.add_argument('--api', default="http://username:password@127.0.0.1:8442/")
|
||||
parser.add_argument('--to-address')
|
||||
parser.add_argument('--from-address')
|
||||
parser.add_argument('--output-id')
|
||||
parser.add_argument('--output-text')
|
||||
args = parser.parse_args()
|
||||
api = xmlrpclib.ServerProxy(args.api)
|
||||
next_message = get_next_message(api, args.to_address, args.prev_id)
|
||||
if not next_message:
|
||||
return
|
||||
with open(args.output_text, 'w') as f:
|
||||
f.write(base64.b64decode(next_message['message']))
|
||||
with open(args.output_id, 'w') as f:
|
||||
f.write(next_message['msgid'])
|
||||
with open(args.from_address, 'w') as f:
|
||||
f.write(next_message['fromAddress'])
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
Reference in New Issue
Block a user