################################################################
##                                                            ##
##   Configuration File for HighSee                           ##
##                                                            ##
##   It is a txt file with a sintax like:                     ##
##          <conf token name>:  <conf token value>            ##
##          # is used for comments                            ##
##                                                            ##
################################################################


################################################################
##  PCAP  Section                                             ##
################################################################
## Traffic input mode: 0: no signaling traffic; 1 = signaling traffic from pcap files; 2 = signaling traffic from interface
Traffic input mode: 0

## Path for input pcap files
Input pcap path: ${PRODUCT_HOME}/tmp/pcap

## Path for processed pcap files
Processed pcap path: ${PRODUCT_HOME}/tmp/pcap/processed

## Path for failure pcap files
Failure pcap path: ${PRODUCT_HOME}/tmp/pcap/failure

## Mode for file processing: 0 = Normal; 1 = Continuous
## Normal = each file is processed alone. Processing will be stopped at the end 
##          of each file and started at the beginning of the next file.
## Continuous = all the files will be ordered (based on names) and processed 
##              continuously without any start/stop sequence  
Files processing mode: 0

## Timeout for File availability (seconds)
## This timeout expires if the input folder stays empty for the configured seconds
## A value = 0 means no timeout.
## This timer expiration performs a pipeline stop when in "Continuous" mode 
Timeout input file folder empty: 0

################################################################
##  LOG Section                                               ##
################################################################
## Enabling stdout [Yes/No]
Enable stdout: No

## Setting log Level:  0(All) 1(Trace) 2(Debug) 3(Info) 4(Warn) 5(Error) 6(Fatal) 7(None) 8(No Log Level Configuration)
Log Level: 3

################################################################
##  IPC Section                                               ##
################################################################
## IPC Interface Type Settings: 
## inter process communication between external Probe and  Chunker
## Shared Memory = 1; Tcp = 2; File = 3; None = 7; 4,5,6 are reserved values
## Tcp = Engine accepts a TCP connection from a standard client
## IPC Shared Memory Name: is the name used for the SM interface
## IPC Tcp Endpoint: is the pair ip address/port used for the TCP interface
## IPC File Format is a string with format: <pathname>/<filename> with filename 
## having the format: DATA_AA_BB_MMMM_XXXXXXXXXX_CCCCC.dmp where AA=Producer index, 
## BB=Total number of Producers, MMMM = period of production in minutes,
## XXXXXXXXXX = Unix time seconds, CCCCC = counter
IPC Interface Type: 2

IPC Shared Memory Name: shared_packets_buffer
IPC Tcp Endpoint: localhost:6556
IPC File Format: ${PRODUCT_HOME}/tmp/fileinterface/DATA_01_01_0005_0000000000.dmp

################################################################
##  IPC HighSee Section                                       ##
################################################################
## HighSee IPC Interface Type Settings: 
## inter process communication between Chunker and Analytic
## Shared Memory = 1; Tcp = 2; None = 7; 3,4,5,6 are reserved values
## IPC Shared Memory Name is the name used for the SM interface
## IPC Endpoint is the pair ip address/port used for the TCP interface

## Analytic component settings
HS Analytic IPC Interface Type: 7

HS Analytic IPC Shared Memory Name: shared_session_buffer
HS Analytic IPC Tcp Endpoint: localhost:7556


################################################################
##  HighSee Process configuration                             ##
################################################################
## File .dat Format Configuration: 0 = JSON, 1 = CSV
HS File dat Format: 1

## Enabling embedded HighSee Pipeline [Yes/No]
## When set to Yes the previous configuration "HS Enable Chunker" and
## "HS Enable Analytic" will be both over-written to No.
## When set to Yes the "HS Chunker Pool Manager enabled" configuration
## will be over-written to No (Pool Manager disabled).
## When set to Yes no thread will be created.
HS Enable HighSee Embedded: Yes
## Enabling HighSee Embedded to dump input packet. It defines the period of 
## file production in minutes. 0 = packet dump disabled. 
HS Dump Input Period: 0
## Enabling HighSee Embedded to produce trace output [Yes/No]
HS Enable trace output: No
## Enabling HighSee pipeline to produce an object as output [Yes/No]
## When set to Yes the production of dat and tcr files will be disabled
HS Enable HighSee Output Object: Yes
## Enabling HighSee Main to dump Embedded Output to file [Yes/No]
HS Enable HighSee Main Output to file: No

################################################################
##  HighSee Chunker Parameter Section                         ##
################################################################
## Max number of parallel sessions
HS Chunker Max Number of Parallel Sessions:6000

## Disable handling of NAT-ed traffic in chunker process [Yes/No]
HS Chunker Disable NAT-ed traffic: Yes

## Validate sessions with NAT-ed traffic [Yes/No]
HS Chunker Validate sessions with NAT-ed traffic: No

## Enable Pool Manager in chunker process [Yes/No]
HS Chunker Pool Manager enabled: No

## Max session duration [minutes]
## Value must be > 2 minutes to be valid
## Value equal to 0 means no session duration limit is applied
## Default value = 0
HS Chunker Max Session Duration: 120

################################################################
##  HighSee Analytic Parameter Section                        ##
################################################################
## Enabling the production of trace files [Yes/No]
HS Analytic enable trace: Yes

## Enabling the production of partial record files [Yes/No]
HS Analytic enable partial record: No

## Analytic Session Trace validation filters
## When trace production is enable below condition are checked
## To enable that specific filter checks [Yes/Don't care]

## Play Delay >= threshold in seconds 
HS Analytic play delay: Yes
HS Analytic play delay threshold: 5.0

## Freeze >= integer numbers
HS Analytic freeze: Yes
HS Analytic freeze threshold: 0

## Total Freeze Time >= number in seconds
HS Analytic total freeze time: Yes
HS Analytic total freeze time threshold: 30.0

## UX score <= value [0-5]
HS Analytic UX score: Don't care
HS Analytic UX score threshold: 5

## AV score <= value [0-5]
HS Analytic AV score: Don't care
HS Analytic AV score threshold: 5 

## Transport score <= value [0-5]
HS Analytic transport score: Don't care
HS Analytic transport score threshold: 5

## terminated before video reproduction start flag is equal to true if enabled
HS Analytic terminated before video reproduction start flag: Don't care

## terminated during freeze flag is equal to true if enabled
HS Analytic terminated during freeze flag: Yes

## session type value is equal to PROGRESSIVE (PD) if enabled:
HS Analytic session type progressive: Don't care

## invalid session are traced if enabled
HS Analytic valid session: Yes

## Discarding invalid session with low download volume [Yes/No]
HS Analytic Discard Low Volume Session: Yes

## subscriber ip address list read from ${PRODUCT_HOME}/etc/ip_address_whitelist.csv
## the max number of ip address that can be load is 100
HS Analytic subscriber ip address: Don't care

## Configurable output states list
## if enabled all the states will be written into detail section
## if not enabled only BUFFERING, STARVING and IDLE state will be listed
HS Analytic enable all states: Yes

## Configurable audio/video freeze threshold in seconds
## used to detect freeze START (audio OR video below START threshold)
## used to detect freeze END (audio AND video above END threshold)
## freeze START should be less than or equal to freeze END
## Audio Freeze START threshold
HS Analytic audio freeze START threshold: 5.0

## Video Freeze START threshold
HS Analytic video freeze START threshold: 5.0

## Audio Freeze END threshold  
HS Analytic audio freeze END threshold: 12.0

## Video Freeze END threshold  
HS Analytic video freeze END threshold: 12.0

## Configurable multiplexed media freeze threshold in seconds
## used to detect freeze START (multiplexed media below START threshold)
## used to detect freeze END (multiplexed media above END threshold)
## freeze START should be less than or equal to freeze END
## Multiplexed Media Freeze START threshold
HS Analytic multiplexed media freeze START threshold: 7.0

## Multiplexed Media Freeze END threshold
HS Analytic multiplexed media freeze END threshold: 10.0

## Configurable multiplexed live media freeze threshold in seconds
## used to detect freeze START (multiplexed live media below START threshold)
## used to detect freeze END (multiplexed live media above END threshold)
## freeze START should be less than or equal to freeze END
## Multiplexed Live Media Freeze START threshold
HS Analytic multiplexed live media freeze START threshold: 1.0

## Multiplexed Live Media Freeze END threshold
HS Analytic multiplexed live media freeze END threshold: 1.9

## Configurable Netflix media freeze threshold in seconds
## used to detect freeze START (media below START threshold)
## used to detect freeze END (media above END threshold)
## freeze START should be less than or equal to freeze END
## Netflix Audio Freeze START threshold
HS Analytic Netflix media freeze START threshold: 2.0

## Netflix Audio Freeze END threshold
HS Analytic Netflix media freeze END threshold: 30.0

##  HighSee Audio Resolution Threshold
##  (Valid for all AUDIO)
HS audio low resolution threshold:  55.0
HS audio fair resolution threshold: 75.0
HS audio good resolution threshold: 100.0
HS audio excellent resolution threshold: 200.0

##  HighSee Media Resolution Threshold and Average Audio Resolution Value
##  (YT SSL)
HS media low resolution threshold:  595.0
HS media fair resolution threshold: 1130.0
HS media good resolution threshold: 2130.0
HS media excellent resolution threshold: 15130.0
HS audio offset: 130.0

##  HighSee New Encoding Media Resolution Threshold and Average Audio Resolution Value
##  (Netflix iOS)
HS new encoding media low resolution threshold:  400.0
HS new encoding media fair resolution threshold: 700.0
HS new encoding media good resolution threshold: 2200.0
HS new encoding media excellent resolution threshold: 15100.0
HS new encoding audio offset: 100.0

##  HighSee New Encoding Multiplexed Media Resolution Threshold and Average Audio Resolution Value
##  (Netflix Android)
HS new encoding multiplexed media low resolution threshold:  400.0
HS new encoding multiplexed media fair resolution threshold: 700.0
HS new encoding multiplexed media good resolution threshold: 2200.0
HS new encoding multiplexed media excellent resolution threshold: 15100.0
HS new encoding multiplexed audio offset: 100.0

##  HighSee Multiplexed Media Resolution Threshold and Average Audio Resolution Value
##  (YT QUIC)
HS multiplexed media low resolution threshold:  595.0
HS multiplexed media fair resolution threshold: 1130.0
HS multiplexed media good resolution threshold: 2130.0
HS multiplexed media excellent resolution threshold: 15130.0
HS multiplexed audio offset: 130.0

##  HighSee Multiplexed Media H.264 Resolution Threshold and Average Audio Resolution Value
##  (Facebook)
HS multiplexed media H.264 low resolution threshold:  600.0
HS multiplexed media H.264 fair resolution threshold: 1450.0
HS multiplexed media H.264 good resolution threshold: 3250.0
HS multiplexed media H.264 excellent resolution threshold: 15048.0
HS multiplexed audio H.264 offset: 48.0

##  HighSee Progressive Download Media Resolution Threshold and Average Audio Resolution Value
HS progressive download low resolution threshold:  320.0
HS progressive download fair resolution threshold: 2200.0
HS progressive download good resolution threshold: 2201.0
HS progressive download excellent resolution threshold: 15000.0
HS progressive download audio offset: 0.0

## Minimum time interval for a valid throughput measure (ms) 
HS minimum throughput time interval: 10

## Network Operator Provider
HS Analytic network operator provider: N/A

## Network Operator Interface
HS Analytic network operator interface: N/A

## Anonymize subscriber IP address on output dat and trc files  [Yes/No]
HS Subscriber IP address anonymized: No

## YouTube Max Timeout in seconds to consider play delay and freeze information consistent
HS YouTube Max Play Delay: 30
HS YouTube Max Freeze Time: 60
HS YouTube Max Freeze Time Percentage: 25
HS YouTube Max Buffer Time To Discard: 20

## Max Freeze Number to discard a session for all custom services
HS Max Freeze Number To Discard: 10

## Facebook Max Timeout in seconds to consider play delay and freeze information consistent
HS Facebook Max Play Delay: 30
HS Facebook Max Freeze Time: 60
HS Facebook Max Freeze Time Percentage: 25

## Netflix Max Timeout in seconds to consider play delay and freeze information consistent
HS Netflix Max Play Delay: 45
HS Netflix Max Freeze Time: 120
HS Netflix Max Freeze Time Percentage: 25

# Disable Facebook Vod Analysis
HS Analytic disable Facebook/VoD analysis for Android: No
HS Analytic disable Facebook/VoD analysis for iOS: No

# Netflix Android Buffer[s]
HS Analytic Netflix Android Buffer: 300

# Netflix Tizen Buffer[s]
HS Analytic Netflix Tizen Buffer: 180

################################################################
##  Aging Section                                             ##
################################################################
## Enabling aging [Yes/No]
Enable aging: No

## Aging Configuration for .trc
## aging strategy values: 1 = MAX_RETAIN_TIME, 2 = MAX FOLDER SIZE
## aging time is defined in hours (default = 72 hours = 3 days) (used only when strategy = 1)
## aging max folder size defined in MB (default = 1000MB = 1GB) (used only when strategy = 2)  
Trace aging strategy: 1
Trace aging time: 72
Trace aging max folder size: 1000

## Aging Configuration for .dat and .hpr
## aging strategy values: 1 = MAX_RETAIN_TIME, 2 = MAX FOLDER SIZE
## aging time is defined in hours (default = 72 hours = 3 days) (used only when strategy = 1)
## aging max folder size defined in MB (default = 1000MB = 1GB) (used only when strategy = 2)  
Data aging strategy: 1
Data aging time: 72
Data aging max folder size: 1000

## Aging Configuration for Logs
## aging strategy values: 1 = MAX_RETAIN_TIME, 2 = MAX FOLDER SIZE
## aging time is defined in hours (default = 168 hours = 7 days) (used only when strategy = 1)
## aging max folder size defined in MB (default = 1000MB = 1GB) (used only when strategy = 2)  
Log aging strategy: 1
Log aging time: 168
Log aging max folder size: 1000

## Aging Configuration for Stat
## aging strategy values: 1 = MAX_RETAIN_TIME, 2 = MAX FOLDER SIZE
## aging time is defined in hours (default = 1440 hours = 60 days) (used only when strategy = 1)
## aging max folder size defined in MB (default = 1000MB = 1GB) (used only when strategy = 2)  
Stat aging strategy: 1
Stat aging time: 1440
Stat aging max folder size: 1000

## Aging Configuration for Pcap
## aging strategy values: 1 = MAX_RETAIN_TIME, 2 = MAX FOLDER SIZE
## aging time is defined in hours (default = 72 hours = 3 days) (used only when strategy = 1)
## aging max folder size defined in MB (default = 1000MB = 1GB) (used only when strategy = 2)  
Pcap aging strategy: 1
Pcap aging time: 72
Pcap aging max folder size: 1000

################################################################
##  DbLoader Section                                          ##
################################################################
## Enabling dbLoader [Yes/No]
Enable dbLoader: No

## The time in hours used to check if a file is valid for insertion.
DbLoader TimeCutOffFileHours: 3

################################################################
##  Tshark Configure Section                                  ##
################################################################
## Folder used by Tshark for temporary files.
## Default value is: ${PRODUCT_HOME}/tmp/tmp
## Configuration valid only when "Traffic input mode: 2" 
Tshark temporary folder: ${PRODUCT_HOME}/tmp/tmp

## Capture filter definition. Default: No filter
## The sintax to be used is the one defined by Tshark for the capture filter
## Configuration valid only when "Traffic input mode: 2"
Tshark capture filter:

## Read filter definition. Default: No filter
## The sintax to be used is the one defined by Tshark for the display filter
Tshark read filter:

## Packet snapshot length in Bytes. Default 65535
## Packets sent to Tshark will be truncated to the configured snapshot length
## Configuration valid only when "Traffic input mode: 2" 
Tshark snapshot length:

################################################################
##  Statistics Section                                        ##
################################################################

## statistics time period (seconds) =0 statistics disabled
## should be multiple of 60 and max 3600*12
## chunker statistics logged to  Chunkerstatistics__YYYY-MM-DD.log
## analytic statistics logged to Analyticstatistics_YYYY-MM-DD.log

Statistics period: 300
Statistics log path: ${PRODUCT_HOME}/log

## Enabling Extended Statistics for Component
## 0 = all extended statistics disabled
## 1 = chunker extended statistics enabled
## 2 = analytic extended statistics enabled
## 3 = all extended statistics enabled
HS Extended statistics flag: 3

################################################################
##  Payload Handling Section                                  ##
################################################################
# Enable TCP Unseen Packets Detection [Yes/No]
HS Enable TCP Unseen Packets: Yes

# Enable QUIC Unseen Packets Detection [Yes/No]
HS Enable QUIC Unseen Packets: Yes
 
## Enable write Start Record on ouptut
HS Enable Start Record on Output: Yes

## end configuration
