MiaRec supports post-recording filters. In a contrast to regular recording filters, which are executed when call is started, the port-recording filters are executed when call is completed.
Post-recording filters allows to do a post-processing of a call. For example, delete automatically calls, which are shorter than 5 seconds. Or move completed calls to other location (to network drive).
Post-recording filters are configured inside section [Filters::OnCallStop] in MiaRec.ini configuration file.
Example of post-recording filters:
[Filters::OnCallStop]
filter1_codition = duration < 5
filter1_action = delete
default_action = rename
default_filename = \\my-storage\Calls\%{filename}
In this example, short calls (shorter than 5 seconds) are removed automatically. Remaining calls are moved to network storage directory \\my-storage\Calls.
Syntax of port-recording filters is similar to regular recording filters (see Recording filters).
This page describes only differences between regular filters and port-recording filters.
Post-recording filters support the following actions:
| Action | Description |
|---|---|
| rename | Rename or move to other location the audio file after call is completed. |
| delete | Delete a call after it is completed. |
| record | Store a call as normal. Do not do any modification of a call after it is completed. |
Post-recording filters support all call parameters, which are supported in regular recording filters (see Syntax of filter condition), plus additional parameters, listed in the following table:
| Call parameter | Description |
|---|---|
| alerting-time | Date/time when phone started ringing. Format: YYYY-mm-DD HH:MM:SS Where:
Example: alerging-time = 2007-06-10 13:45:51 |
| connect-time | Date/time when call was answered. Format: YYYY-mm-DD HH:MM:SS |
| disconnect-time | Date/time when call was disconnected. Format: YYYY-mm-DD HH:MM:SS |
| duration | Duration of voice part of a call in seconds. This is a difference beween connect-time and disconnect-time. Examples: duration < 5 duration >= 30 |
| total-duration | Total duration of a call in seconds. This is a difference beween setup-time and disconnect-time. Examples: total-duration < 5 |
| call-state | Phase (state) of the call. It is a numeric value, one of:
Example: call-state = 7 |
[Filters::OnCallStart]
filter1_condition = caller-number = '123456' OR callee-number = '123456'
filter1_action = record
filter1_filename = C:\MyCalls\%{setup-time#%Y%m%d%H%M%S}.mp3
default_action = ignore
[Filters::OnCallStop]
default_action = rename
default_filename = D:\MyRecordings\%{filename}
Above example demonstrates both regular recording filters (section [Filters::OnCallStart]) and post-recording filters (section [Filters::OnCallStop]):
filter1_condition = caller-number = '123456' OR callee-number = '123456' filter1_action = record
filter1_filename = C:\MyCalls\%{setup-time#%Y%m%d%H%M%S}.mp3
[Filters::OnCallStart] default_action = ignore
[Filters::OnCallStop]
default_action = rename
default_filename = D:\MyRecordings\%{filename}