Example #1
0
 def __init__(self, hostname=None, logger=None):
     self.__hostname = hostname if hostname is not None else "http://127.0.0.0:5000"
     self.__log = setup_console_logger(logger, "CallConnectHandler")
     self.__jh = JsonHandler(hostname=self.__hostname, logger=self.__log)
     self.__hh = HttpHandler(hostname=self.__hostname, logger=self.__log)
     self.__log.debug("CallConnect handler initialized for: %s" %
                      self.__hostname)
class FlaskrilioHandler:
    """A simple wrapper for the local Flaskrilio service"""


    def __init__(self, hostname=None, logger=None):
        self.__hostname = hostname if hostname is not None else "http://127.0.0.0:5000"
        self.__log = setup_console_logger(logger, "FlaskrilioHandler")
        self.__jh = JsonHandler(hostname=self.__hostname, logger=self.__log)
        self.__hh = HttpHandler(hostname=self.__hostname, logger=self.__log)
        self.__log.debug("Flaskrilio handler initialized for: %s" % self.__hostname)


    def get_home(self):
        return self.__jh.get(endpoint="/")


    def get_twiml(self, ctx):
        self.__log.debug("Getting TwilML for an endpoint: %s" % ctx)
        return self.__hh.get(endpoint=ctx)


    def get_calls(self):
        calls =  self.__jh.get(endpoint="/calls")
        self.__log.debug("Got calls: %s" % calls)
        if calls is None:
            return []
        else:
            return calls
Example #3
0
 def setUp(self):
     self.test_data_dict = {
         "len": 12,
         "input": "AAAABBBBCCCC",
         "more_data": ["a", "bb"]
     }
     self.test_data_raw = '{\n    "len": 12,\n    "input": "AAAABBBBCCCC",\n    "more_data": [\n        "a",\n        "bb"\n    ]\n}'
     self.handler = JsonHandler(data_dict=self.test_data_dict,
                                data_raw=self.test_data_raw)
     mutators = BadMutator()
     self.handler.mutators = mutators
class CallConnectHandler:
    """A simple wrapper for Call Connect endpoints"""

    def __init__(self, hostname=None, logger=None):
        self.__hostname = hostname if hostname is not None else "http://127.0.0.0:5000"
        self.__log = setup_console_logger(logger, "CallConnectHandler")
        self.__jh = JsonHandler(hostname=self.__hostname, logger=self.__log)
        self.__hh = HttpHandler(hostname=self.__hostname, logger=self.__log)
        self.__log.debug("CallConnect handler initialized for: %s" % self.__hostname)


    def get_new_caller_id(self):
        caller_id =  self.__jh.post(endpoint="/api/id", data="{}").json()['id']
        self.__log.debug("Received new Caller ID: %s" % caller_id)
        return caller_id


    def get_redirect_to(self, caller_id, number):
        payload = {
                    "id": caller_id,
                    "redirectTo": number
                }
        # use json.dumps to convert payload tupple into a string
        redir = self.__jh.post(endpoint="/api/callers",
                               data=json.dumps(payload))
        self.__log.debug("POST %s/api/callers payload: %s" % (self.__hostname, payload))
        self.__log.debug("Received new redirect_to: %s" % redir.json())
        return redir


    def delete_caller_id(self, callerId):
        self.__log.debug("Deleting callerId: %s" % callerId)
        return self.__hh.delete(endpoint="/api/callers/%s" % callerId)


    def get_callers_details(self, callerId):
        self.__log.debug("Getting details for callerId: %s" % callerId)
        return self.__jh.get(endpoint="/api/callers/%s" % callerId)


    def get_number_pool(self):
        pool = self.__jh.get(endpoint="/api/pool")
        self.__log.debug("Got Number pool: %s" % pool.json())
        return pool
Example #5
0
 def init_json_handler(self) -> None:
     """
     Initialize handler for JSON files
     """
     with open(self.input_path, "r") as json_file:
         data = json.load(json_file)
         # Seeks to the start
         json_file.seek(0)
         raw_data = json_file.read()
         # Remove last blank line if exists
         raw_data = raw_data.rstrip()
         self.handlers.append(JsonHandler(data, raw_data))
Example #6
0
class CallConnectHandler:
    """A simple wrapper for Call Connect endpoints"""
    def __init__(self, hostname=None, logger=None):
        self.__hostname = hostname if hostname is not None else "http://127.0.0.0:5000"
        self.__log = setup_console_logger(logger, "CallConnectHandler")
        self.__jh = JsonHandler(hostname=self.__hostname, logger=self.__log)
        self.__hh = HttpHandler(hostname=self.__hostname, logger=self.__log)
        self.__log.debug("CallConnect handler initialized for: %s" %
                         self.__hostname)

    def get_new_caller_id(self):
        caller_id = self.__jh.post(endpoint="/api/id", data="{}").json()['id']
        self.__log.debug("Received new Caller ID: %s" % caller_id)
        return caller_id

    def get_redirect_to(self, caller_id, number):
        payload = {"id": caller_id, "redirectTo": number}
        # use json.dumps to convert payload tupple into a string
        redir = self.__jh.post(endpoint="/api/callers",
                               data=json.dumps(payload))
        self.__log.debug("POST %s/api/callers payload: %s" %
                         (self.__hostname, payload))
        self.__log.debug("Received new redirect_to: %s" % redir.json())
        return redir

    def delete_caller_id(self, callerId):
        self.__log.debug("Deleting callerId: %s" % callerId)
        return self.__hh.delete(endpoint="/api/callers/%s" % callerId)

    def get_callers_details(self, callerId):
        self.__log.debug("Getting details for callerId: %s" % callerId)
        return self.__jh.get(endpoint="/api/callers/%s" % callerId)

    def get_number_pool(self):
        pool = self.__jh.get(endpoint="/api/pool")
        self.__log.debug("Got Number pool: %s" % pool.json())
        return pool
class FlaskrilioHandler:
    """A simple wrapper for the local Flaskrilio service"""
    def __init__(self, hostname=None, logger=None):
        self.__hostname = hostname if hostname is not None else "http://127.0.0.0:5000"
        self.__log = setup_console_logger(logger, "FlaskrilioHandler")
        self.__jh = JsonHandler(hostname=self.__hostname, logger=self.__log)
        self.__hh = HttpHandler(hostname=self.__hostname, logger=self.__log)
        self.__log.debug("Flaskrilio handler initialized for: %s" %
                         self.__hostname)

    def get_home(self):
        return self.__jh.get(endpoint="/")

    def get_twiml(self, ctx):
        self.__log.debug("Getting TwilML for an endpoint: %s" % ctx)
        return self.__hh.get(endpoint=ctx)

    def get_calls(self):
        calls = self.__jh.get(endpoint="/calls")
        self.__log.debug("Got calls: %s" % calls)
        if calls is None:
            return []
        else:
            return calls
Example #8
0
class JsonHandlerTests(unittest.TestCase):
    """
    Test JsonHandler methods
    """
    def setUp(self):
        self.test_data_dict = {
            "len": 12,
            "input": "AAAABBBBCCCC",
            "more_data": ["a", "bb"]
        }
        self.test_data_raw = '{\n    "len": 12,\n    "input": "AAAABBBBCCCC",\n    "more_data": [\n        "a",\n        "bb"\n    ]\n}'
        self.handler = JsonHandler(data_dict=self.test_data_dict,
                                   data_raw=self.test_data_raw)
        mutators = BadMutator()
        self.handler.mutators = mutators

    def test_mutate_elem(self):
        """
        Tests that a primitive is correctly mutated
        """
        self.assertEqual(list(self.handler.mutate_elem("1")), ["A"])
 def __init__(self, hostname=None, logger=None):
     self.__hostname = hostname if hostname is not None else "http://127.0.0.0:5000"
     self.__log = setup_console_logger(logger, "FlaskrilioHandler")
     self.__jh = JsonHandler(hostname=self.__hostname, logger=self.__log)
     self.__hh = HttpHandler(hostname=self.__hostname, logger=self.__log)
     self.__log.debug("Flaskrilio handler initialized for: %s" % self.__hostname)