Example #1
0
 def process(self):
     """
     Translates the 'DND' header's value into a bool.
     """
     (headers, data) = _Message.process(self)
     headers['DND'] = headers.get('DND') == 'Enabled'
     return (headers, data)
Example #2
0
    def process(self):
        """
        Translates the 'CumulativeLoss', 'SentOctets', 'SentPackets', 'SentRTP', and
        'TheirLastSR' values into ints, setting them to -1 on error.

        Translates the 'DLSR', 'FractionLost', 'IAJitter', and 'SentNTP' values into floats, setting
        them to -1 on error.

        Splits 'To' into a tuple of IP:str and port:int, or sets it to `None` if the format is
        unknown.
        """
        (headers, data) = _Message.process(self)
        
        for header in ('CumulativeLoss', 'SentOctets', 'SentPackets', 'SentRTP', 'TheirLastSR'):
            try:
                headers[header] = int(headers.get(header))
            except Exception:
                headers[header] = -1

        headers['DLSR'] = (headers.get('DSLR') or '').split(' ', 1)[0]
        for header in ('DLSR', 'FractionLost', 'IAJitter', 'SentNTP'):
            try:
                headers[header] = float(headers.get(header))
            except Exception:
                headers[header] = -1

        to = headers.get('To')
        if to and ':' in to:
            headers['To'] = tuple(to.rsplit(':', 1))
        else:
            headers['To'] = None
            
        return (headers, data)
Example #3
0
 def process(self):
     """
     Translates the 'DND' header's value into a bool.
     """
     (headers, data) = _Message.process(self)
     headers['DND'] = headers.get('DND') == 'Enabled'
     return (headers, data)
Example #4
0
    def process(self):
        """
        Translates the 'HighestSequence', 'LastSR', 'PacketsLost', 'ReceptionReports,
        and 'SequenceNumbercycles' values into ints, setting them to -1 on error.

        Translates the 'DLSR', 'FractionLost', 'IAJitter', and 'SentNTP' values into floats, setting
        them to -1 on error.

        Splits 'From' into a tuple of IP:str and port:int, or sets it to `None` if the format is
        unknown.
        """
        (headers, data) = _Message.process(self)
        
        for header in ('HighestSequence', 'LastSR', 'PacketsLost', 'ReceptionReports', 'SequenceNumbercycles'):
            try:
                headers[header] = int(headers.get(header))
            except Exception:
                headers[header] = -1

        headers['DLSR'] = (headers.get('DSLR') or '').split(' ', 1)[0]
        for header in ('DLSR', 'FractionLost', 'IAJitter'):
            try:
                headers[header] = float(headers.get(header))
            except Exception:
                headers[header] = -1

        to = headers.get('From')
        if to and ':' in to:
            headers['From'] = tuple(to.rsplit(':', 1))
        else:
            headers['From'] = None
            
        return (headers, data)
Example #5
0
 def process(self):
     """
     'Paused' is set to a bool.
     """
     (headers, data) = _Message.process(self)
     paused = headers.get('Paused')
     headers['Paused'] = paused and paused == '1'
     return (headers, data)
Example #6
0
    def process(self):
        """
        Translates the 'TalkingStatus' header's value into a bool.
        """
        (headers, data) = _Message.process(self)

        headers['TalkingStatus'] = headers.get('TalkingStatus') == 'on'

        return (headers, data)
 def process(self):
     """
     Translates the 'Status' header's value into a bool.
     """
     (headers, data) = _Message.process(self)
     
     headers['Status'] = headers.get('Status') == 'on'
     
     return (headers, data)
 def process(self):
     """
     Translates the 'Admin' and 'MarkedUser' headers' values into bools.
     """
     (headers, data) = _Message.process(self)
     
     for header in ('Admin', 'MarkedUser'):
         headers[header] = headers.get(header) == 'Yes'
         
     return (headers, data)
Example #9
0
 def process(self):
     """
     'Restart' is set to a bool.
     """
     (headers, data) = _Message.process(self)
     
     restart = headers.get('Restart')
     headers['Restart'] = restart and restart == 'True'
     
     return (headers, data)
Example #10
0
 def process(self):
     """
     Translates the 'Seconds' header's value into an int, setting it to -1 on error.
     """
     (headers, data) = _Message.process(self)
     try:
         headers['Seconds'] = int(headers.get('Seconds'))
     except Exception:
         headers['Seconds'] = -1
     return (headers, data)
Example #11
0
    def process(self):
        """
        Translates the 'Admin' and 'MarkedUser' headers' values into bools.
        """
        (headers, data) = _Message.process(self)

        for header in ('Admin', 'MarkedUser'):
            headers[header] = headers.get(header) == 'Yes'

        return (headers, data)
Example #12
0
 def process(self):
     """
     Translates the 'Cause' header's value into an int, setting it to `None` if coercion fails.
     """
     (headers, data) = _Message.process(self)
     try:
         headers['Cause'] = int(headers['Cause'])
     except Exception:
         headers['Cause'] = None
     return (headers, data)
Example #13
0
 def process(self):
     """
     Sets the 'Reason' values to an int, one of the `ORIGINATE_RESULT` constants, with -1
     indicating failure.
     """
     (headers, data) = _Message.process(self)
     try:
         headers['Reason'] = int(headers.get('Reason'))
     except Exception:
         headers['Reason'] = -1
     return (headers, data)
Example #14
0
 def process(self):
     """
     Translates the 'Position' and 'Wait' headers' values into ints, setting them to -1 on error.
     """
     (headers, data) = _Message.process(self)
     for header in ('Position', 'Wait'):
         try:
             headers[header] = int(headers.get(header))
         except Exception:
             headers[header] = -1
     return (headers, data)
Example #15
0
 def process(self):
     """
     Translates 'Begin' and 'End' into booleans, and adds a 'Received':bool header.
     """
     (headers, data) = _Message.process(self)
     
     for header in ('Begin', 'End'):
         headers[header] = headers.get(header) == 'Yes'
     headers['Received'] = headers.get('Direction') == 'Received'
     
     return (headers, data)
Example #16
0
 def process(self):
     """
     Translates the 'ListItems' header's value into an int, or -1 on failure.
     """
     (headers, data) = _Message.process(self)
     
     try:
         headers['ListItems'] = int(headers['ListItems'])
     except Exception:
         headers['ListItems'] = -1
         
     return (headers, data)
Example #17
0
 def process(self):
     """
     Translates the 'Timeout' header's value into an int, setting it to `None` if coercion
     fails, and leaving it absent if it wasn't present in the original response.
     """
     (headers, data) = _Message.process(self)
     timeout = headers.get('Timeout')
     if not timeout is None:
         try:
             headers['Timeout'] = int(timeout)
         except Exception:
             headers['Timeout'] = None
     return (headers, data)
Example #18
0
 def process(self):
     """
     Translates the 'Available', 'Callers', 'HoldTime', 'LoggedIn', 'LongestHoldTime' and 'TalkTime' headers' values into
     ints, setting them to -1 on error.
     """
     (headers, data) = _Message.process(self)
     
     for header in ('Available', 'Callers', 'HoldTime', 'LoggedIn', 'LongestHoldTime', 'TalkTime'):
         try:
             headers[header] = int(headers.get(header))
         except Exception:
             headers[header] = -1
     
     return (headers, data)
Example #19
0
    def process(self):
        """
        Translates the 'Marked' and 'Parties' headers' values into ints, or -1 on failure.
        
        Translates the 'Locked' header's value into a bool.
        """
        (headers, data) = _Message.process(self)

        for header in ('Marked', 'Parties'):
            try:
                headers[header] = int(headers[header])
            except Exception:
                headers[header] = -1

        headers['Locked'] = headers.get('Locked') == 'Yes'

        return (headers, data)
Example #20
0
 def process(self):
     """
     Translates the 'Result' header's value into a bool.
     
     Translates the 'ResultCode' header's value into an int, setting it to `-1` if coercion
     fails.
     """
     (headers, data) = _Message.process(self)
     
     try:
         headers['ResultCode'] = int(headers['ResultCode'])
     except Exception:
         headers['ResultCode'] = -1
         
     headers['Result'] = headers.get('Result') == 'Success'
     
     return (headers, data)
 def process(self):
     """
     Translates the 'Marked' and 'Parties' headers' values into ints, or -1 on failure.
     
     Translates the 'Locked' header's value into a bool.
     """
     (headers, data) = _Message.process(self)
     
     for header in ('Marked', 'Parties'):
         try:
             headers[header] = int(headers[header])
         except Exception:
             headers[header] = -1
             
     headers['Locked'] = headers.get('Locked') == 'Yes'
     
     return (headers, data)
Example #22
0
 def process(self):
     """
     Translates the 'CallsTaken', 'LastCall', 'Penalty', and 'Status' headers' values into ints,
     setting them to -1 on error.
     
     'Paused' is set to a bool.
     """
     (headers, data) = _Message.process(self)
     
     for header in ('CallsTaken', 'LastCall', 'Penalty', 'Status'):
         try:
             headers[header] = int(headers.get(header))
         except Exception:
             headers[header] = -1
             
     paused = headers.get('Paused')
     headers['Paused'] = paused and paused == '1'
     
     return (headers, data)
Example #23
0
 def process(self):
     """
     Translates the 'Port' header's value into an int, setting it to `None` if coercion
     fails, and leaving it absent if it wasn't present in the original response.
     
     Translates the 'Dynamic', 'Natsupport', 'VideoSupport', 'ACL', and 'RealtimeDevice' headers'
     values into bools.
     """
     (headers, data) = _Message.process(self)
     
     ip_port = headers.get('IPport')
     if not ip_port is None:
         try:
             headers['IPport'] = int(ip_port)
         except Exception:
             headers['IPport'] = None
             
     for header in ('Dynamic', 'Natsupport', 'VideoSupport', 'ACL', 'RealtimeDevice'):
         headers[header] = headers.get(header) == 'yes'
         
     return (headers, data)
Example #24
0
 def process(self):
     """
     Translates the 'ChannelState' header's value into an int, setting it to `None` if coercion
     fails.
     
     Replaces the 'Duration' header's value with the number of seconds, as an int, or -1 if
     conversion fails.
     """
     (headers, data) = _Message.process(self)
     
     try:
         headers['ChannelState'] = int(headers['ChannelState'])
     except Exception:
         headers['ChannelState'] = None
         
     try:
         (h, m, s) = (int(v) for v in headers['Duration'].split(':'))
         headers['Duration'] = s + m * 60 + h * 60 * 60
     except Exception:
         headers['Duration'] = -1
         
     return (headers, data)
Example #25
0
 def process(self):
     """
     Translates the 'Abandoned', 'Calls', 'Completed', 'Holdtime', and 'Max' headers' values into
     ints, setting them to -1 on error.
     
     Translates the 'ServiceLevel', 'ServiceLevelPerf', and 'Weight' values into
     floats, setting them to -1 on error.
     """
     (headers, data) = _Message.process(self)
     
     for header in ('Abandoned', 'Calls', 'Completed', 'Holdtime', 'Max'):
         try:
             headers[header] = int(headers.get(header))
         except Exception:
             headers[header] = -1
             
     for header in ('ServiceLevel', 'ServiceLevelPerf', 'Weight'):
         try:
             headers[header] = float(headers.get(header))
         except Exception:
             headers[header] = -1
     
     return (headers, data)