mirror of
https://git.centos.org/centos-git-common.git
synced 2025-02-23 16:22:56 +00:00
56 lines
1.5 KiB
Python
56 lines
1.5 KiB
Python
![]() |
#!/usr/bin/env python3.6
|
||
|
#pylint: disable=line-too-long
|
||
|
#
|
||
|
# Copyright (2019). Fermi Research Alliance, LLC.
|
||
|
# Initial Author: Pat Riehecky <riehecky@fnal.gov>
|
||
|
#
|
||
|
'''
|
||
|
Example command to run from listen-on-dbus-for-mqtt-signals.py
|
||
|
'''
|
||
|
|
||
|
## Uncomment these for python2 support
|
||
|
#from __future__ import unicode_literals
|
||
|
#from __future__ import absolute_import
|
||
|
#from __future__ import print_function
|
||
|
|
||
|
import json
|
||
|
import sys
|
||
|
import textwrap
|
||
|
|
||
|
from pprint import pprint
|
||
|
|
||
|
try:
|
||
|
from argparse import ArgumentParser
|
||
|
except ImportError: # pragma: no cover
|
||
|
print("Please install argparse - rpm: python-argparse", file=sys.stderr)
|
||
|
raise
|
||
|
|
||
|
##########################################
|
||
|
def setup_args():
|
||
|
'''
|
||
|
Setup the argparse object.
|
||
|
|
||
|
Make sure all fields have defaults so we could use this as an object
|
||
|
'''
|
||
|
parser = ArgumentParser(description=textwrap.dedent(__doc__))
|
||
|
|
||
|
parser.add_argument('signal', help='The dbus signal is set here')
|
||
|
|
||
|
return parser
|
||
|
|
||
|
##########################################
|
||
|
|
||
|
##########################################
|
||
|
##########################################
|
||
|
if __name__ == '__main__':
|
||
|
|
||
|
PARSER = setup_args()
|
||
|
ARGS = PARSER.parse_args()
|
||
|
|
||
|
MESSAGE = json.loads(sys.stdin.read())
|
||
|
print("Your dbus-signal was %s" % ARGS.signal)
|
||
|
print("Your message was decoded as %s (between the lines)" % type(MESSAGE))
|
||
|
print("------------------------------------------------")
|
||
|
pprint(MESSAGE)
|
||
|
print("------------------------------------------------")
|