|
@@ -9,11 +9,14 @@ fieldsFilter = ('id', 'linkedid', 'appdata', 'lastdata')
|
|
|
class CdrChannel:
|
|
class CdrChannel:
|
|
|
def __init__(self, chanData):
|
|
def __init__(self, chanData):
|
|
|
self._str = chanData
|
|
self._str = chanData
|
|
|
- (self.tech,
|
|
|
|
|
- self.peer,
|
|
|
|
|
- self.context,
|
|
|
|
|
- self.id,
|
|
|
|
|
- self.leg) = re.match(r'(\w+)/(\w+)(?:@([\w-]+))?-([0-9a-f]{8})(?:;([0-9]+))?', chanData).groups()
|
|
|
|
|
|
|
+ try:
|
|
|
|
|
+ (self.tech,
|
|
|
|
|
+ self.peer,
|
|
|
|
|
+ self.context,
|
|
|
|
|
+ self.id,
|
|
|
|
|
+ self.leg) = re.match(r'(\w+)/(\w+)(?:@([\w-]+))?-([0-9a-f]{8})(?:;([0-9]+))?', chanData).groups()
|
|
|
|
|
+ except:
|
|
|
|
|
+ pass
|
|
|
def __repr__(self):
|
|
def __repr__(self):
|
|
|
return self._str
|
|
return self._str
|
|
|
|
|
|
|
@@ -88,7 +91,7 @@ class CdrUserEvents(CdrEvents):
|
|
|
hi = len(self._events)
|
|
hi = len(self._events)
|
|
|
while lo < hi:
|
|
while lo < hi:
|
|
|
mid = (lo+hi)//2
|
|
mid = (lo+hi)//2
|
|
|
- if event.calldate < self._events[mid].calldate:
|
|
|
|
|
|
|
+ if event.calldate <= self._events[mid].calldate:
|
|
|
hi = mid
|
|
hi = mid
|
|
|
else:
|
|
else:
|
|
|
lo = mid+1
|
|
lo = mid+1
|