summaryrefslogtreecommitdiff
path: root/net-misc/asterisk/files/1.6.2/find_call_sip_trace.sh
blob: 5b2e69e517b411911f5624fa1db9cfa0d99fbd1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#! /bin/bash

logfile=$1
callid=$2

function usage()
{
	echo "USAGE: $1 logfile Call-ID [Call-ID ...]"
	exit -1
}

[ -r "${logfile}" ] || usage $0
[ -n "${callid}" ] || usage $0

shift; shift;
while [ $# -gt 0 ]; do
	callid="${callid}|$1"
	shift
done

dos2unix < "${logfile}" | grep -P '^.*\n<--- (SIP read|(Reliably )?(Ret|T)ransmitting) .*\n([^<\n].*\n)*Call-ID: ('"${callid//./\\.}"')\n((|[^<\n].*)\n)*<-+>$|^.* chan_sip.c: (Reliably )?(Ret|T)ransmitting .*\n([^-\n].*\n)*Call-ID: ('"${callid//./\\.}"')\n((|[^-\n].*)\n)*---$'