If you like BoxMatrix then please contribute Supportdata, Supportdata2, Firmware and/or Hardware (get in touch).
My metamonk@yahoo.com is not reachable by me since september. Please use hippie2000@webnmail.de instead.

0
U

Property:voipkpid (avmcmd)

From BoxMatrix


BoxMatrix >> Shell-Commands >> voipkpid (avmcmd) @ BoxMatrix   -   IRC-Chat   -   Translate: de es fr it nl pl
News Selectors Models Accessories Components Environment Config Commands System Webif Software Develop Lexicon Community Project Gallery

Startup-Scr Hotplug-Scr BusyBox-Cmds Bash-Cmds AVM-Cmds Chipset-Cmds Linux-Cmds Shared-Libs Kernel-Mods Research

Info
  
Name-Collision - multiple objects in this wiki use the name voipkpid!
voipkpid (avmcmd) VoIP quality KPI collector daemon.
voipkpid (process) VoIP quality KPI collector daemon.

AVM-Command

Goto:   Examples  -  Events  -  Source  -  Dependencies   -   Model-Matrix   -   Symbols   -   SMW-Browser

Details

voipkpid is a VoIP quality KPI collector daemon creating a JSON KPI from data acquired from voipd.

KPI (Key Performance Indicators) are a collection of sensor values like they are required for professional system monitoring.
Many services collect sensor data and generate KPI and starting with fw 7.39 FRITZ!OS implements metering in avmcounterd.
KPI are sent as IPC messages with attached JSON data to ctlmgr which serves the me_KPI.ctl IPC endpoint for this purpose.
Explained KPI providers: aha, kpid, psetd (kpi), voipkpid (libvoipkpi.so).

fw 7.29 help:

fritz3:/var/media/ftp $ voipkpid -?

usage: voipkpid voipkpid [options]

options:
  -?                 - print this help
  -f                 - run in foreground. (NOTSET)
  -s                 - stop daemon. (NOTSET)
  -n UNSIGNED        - # last VoIP KPI entries. (0)

Examples

voipkpid can be run in client mode to get a KPI of the last selectable number of VoIP calls.
The following fw 7.29 example has been formatted for readability, the JSON is just a sigle line:

 root@fritz1:/var/mod/root# voipkpid -n 2
 
 VoIP 1 { "sv":"gen/v1", "env":{},"kpi":{
   "Profile":[{
     "SIPRegistrar":"sip.example.de",
     "CallStat":[{
       "IP":"212.227.XXX.XXX",
       "oCall":0,"iCall":1,
       "tCallT":1295,
       "tByteTx":64102,
       "tByteRx":64097,
       "aRTT":0,
       "aJITx":0,
       "aJIRx":3,
       "aPLossTx":0,
       "aPLossRx":0,
       "aSDrop":0,
       "aSSDrop":0,
       "Codec":[{
         "cTx":"G.711",
         "cRx":"G.711",
         "tCall":1
       }],
       "Phone":[{
         "type":"DECT3",
         "dev":"",
         "tCall":1
       }]
     },{
       "IP":"212.227.XXX.XXX",
       "oCall":0,
       "iCall":1,
       "tCallT":62,
       "tByteTx":2716,
       "tByteRx":2825,
       "aRTT":61,
       "aJITx":0,
       "aJIRx":3,
       "aPLossTx":0,
       "aPLossRx":0,
       "aSDrop":0,
       "aSSDrop":0,
       "Codec":[{
         "cTx":"G.711",
         "cRx":"G.711",
         "tCall":1
       }],
       "Phone":[{
         "type":"IP2",
         "dev":"",
         "tCall":1
       }]
     }]
   }]
 }} 

Besides the IPs and registrar this is anonymized data from the Voice-Quality (german Sprachqualität) log in the Webinterface.
voipkpid does not send this KPI automatically, it is subscribed to the KPI_PRE_INFORM_NOTIFY event in the AVMIPC-Datastore
by its _anony($num)-($num) or since fw 7.39 _anony-voipkpid-($num)-($num) IPC endpoint, and sends the KPI
to ctlmgr on request.

Events

Daily updated index of AVM-Events and AVMIPC-Datastore nodes affecting this command. Last update: 2023-02-04 06:37 GMT.
The owners of Event-Sinks and Event-Sources are manual research, which may be incomplete or even wrong.
A * in the Mod column marks info from Supportdata-Probes, which will always stay incomplete.
A ** in the Mod column marks info from Supportdata2 probes, which by their nature will stay way more incomplete.
A - in the Mod column marks manual research, the Firmware then shows where the item occurs, not the Relation.

Relation Typ Object Mod Firmware Info Origin
Endpoint sock me_anony-voipkpid-($num)-($num).ctl 26* 7.08 - 7.51 Anonymous avmipc endpoint to trigger KPI creation by voipkpid. AVM
Listens to avmipc KPI_PRE_INFORM_NOTIFY 16** 7.29 - 7.51 Trigger event to create KPI. AVM
2 event relations for this command

Source

The names of source files compiled into an executable often help to understand function blocks (and show gaps in the docs).
fw 7.39 source files:

$ strings /bin/voipkpid | grep -e '\.c$' -e '\.cpp$'

<empty>  

Dependencies

Daily updated index of all dependencies of this command. Last update: 2023-02-04 07:20 GMT.
A * in the Mod column marks info from Supportdata-Probes, which will always stay incomplete.

Relation Typ Object Mod Firmware Info Origin
Started by serv voipkpid.service 37 7.19 - 7.51 supervisor service for voipkpid. AVM
Stopped by serv voipkpid.service 37 7.19 - 7.51 supervisor service for voipkpid. AVM
Runs as proc voipkpid (process) 26* 7.08 - 7.51 VoIP quality KPI collector daemon. AVM
Serving sock me_anony-voipkpid-($num)-($num).ctl 26* 7.08 - 7.51 Anonymous avmipc endpoint to trigger KPI creation by voipkpid. AVM
Depends on lib ld.so 13 7.08 - 7.51 Dynamic linker / loader Linux
Depends on lib libavmauth.so 37 7.19 - 7.51 Fritzbox authentification helpers AVM
Depends on lib libavmcsock.so 37 7.08 - 7.51 Networking, I/O and helper functions AVM
Depends on lib libavmfbstate.so 26 7.39 - 7.51 IPC fritzbox state notification AVM
Depends on lib libavmhmac.so 37 7.19 - 7.51 HMAC / SHA / MD5 hashing. AVM
Depends on lib libboxlib.so 37 7.19 - 7.51 Box status, logging and statistics functions AVM
Depends on lib libc.so 37 7.08 - 7.51 Standard C library Linux
Depends on lib libcrypto.so 26 7.39 - 7.51 OpenSSL general crypto and X.509 library Linux
Depends on lib libdl.so 9 7.08 - 7.50 Dynamic linking library Linux
Depends on lib libdputil.so 37 7.19 - 7.31 DataPipe / packet utilities AVM
Depends on lib libewnwlinux.so 37 7.08 - 7.51 Linux networking functions AVM
Depends on lib libewnwnet.so 37 7.19 - 7.51 Internet helper functions AVM
Depends on lib libm.so 7 7.19 - 7.50 C math library Linux
Depends on lib libpthread.so 9 7.08 - 7.50 POSIX threading library Linux
Depends on lib librt.so 9 7.08 - 7.50 POSIX realtime extensions library Linux
Depends on lib libsvctl.so 37 7.19 - 7.51 supervisor control library AVM
Depends on lib libtiinterpreter.so 26 7.39 - 7.51 Preprocessor for SSI-Files by TI. AVM
Depends on lib libvoipkpi.so 37 7.19 - 7.51 VoIP quality KPI collector for voipkpid AVM
Depends on lib libwdt.so 37 7.19 - 7.51 AVM-Watchdogs management API AVM
Depends on lib libwebkpiclient.so 23 7.39 - 7.51 KPI sensor for system parts which use HTTP / HTTPS AVM
Depends on lib libwebsrv.so 37 7.19 - 7.51 HTTP / HTTPS webserver and tools. AVM
Depends on lib libyajl.so 37 7.19 - 7.51 Event-driven JSON parser Linux
Depends on lib libz.so 37 7.19 - 7.51 Zlib compressor / decompressor Linux
27 dependencies for this command

Model-Matrix

Daily updated index of the presence, path and size of this command for each model. Last update: 2023-02-04 05:55 GMT.
Showing all models using this command. Click any column header (click-wait-click) to sort the list by the respective data.
The (main/scrpn/boot/arm/prx/atom) label in the Model column shows which CPU is meant for models with multiple Linux instances.
Note that this list is merged from Firmware-Probes of all known AVM firmware for a model, including Recovery.exe and Labor-Files.

Model Firmware Path Size
FRITZ!Box 3490 (main) 7.27 - 7.30 /bin 9.9k
FRITZ!Box 4040 7.24 - 7.39 /bin 9.3k - 9.4k
FRITZ!Box 4060 7.26 - 7.39 /bin 9.3k
FRITZ!Box 5490 (main) 7.27 - 7.29 /bin 9.9k
FRITZ!Box 5491 (main) 7.27 - 7.29 /bin 9.9k
FRITZ!Box 5530 Fiber (main) 7.21 - 7.30 /bin 9.8k
FRITZ!Box 5590 Fiber (arm) 7.27 - 7.39 /bin 9.3k
FRITZ!Box 6430 Cable (arm) 7.29 /bin 9.3k
FRITZ!Box 6430 Cable (atom) 7.29 /bin 9.3k
FRITZ!Box 6490 Cable (arm) 7.19 - 7.39 /bin 9.2k - 9.3k
FRITZ!Box 6490 Cable (atom) 7.19 - 7.39 /bin 9.2k - 9.3k
FRITZ!Box 6590 Cable (arm) 7.19 - 7.39 /bin 9.2k - 9.3k
FRITZ!Box 6590 Cable (atom) 7.19 - 7.39 /bin 9.2k - 9.3k
FRITZ!Box 6591 Cable (arm) 7.19 - 7.39 /bin 9.4k - 13.5k
FRITZ!Box 6591 Cable (atom) 7.19 - 7.39 /bin 9.4k - 13.5k
FRITZ!Box 6660 Cable (arm) 7.19 - 7.39 /bin 9.4k - 13.5k
FRITZ!Box 6660 Cable (atom) 7.19 - 7.39 /bin 9.4k - 13.5k
FRITZ!Box 6690 Cable (arm) 7.28 - 7.50 /bin 9.4k - 13.5k
FRITZ!Box 6690 Cable (atom) 7.28 - 7.50 /bin 9.4k - 13.5k
FRITZ!Box 6850 LTE 7.21 - 7.39 /bin 9.3k - 9.8k
FRITZ!Box 6850 5G 7.24 - 7.39 /bin 9.3k - 9.4k
FRITZ!Box 6890 LTE 7.21 - 7.39 /bin 9.8k
FRITZ!Box 6890 LTE v1 7.21 - 7.39 /bin 9.8k
FRITZ!Box 6890 LTE v2 7.21 - 7.39 /bin 9.8k
FRITZ!Box 7430 7.21 - 7.29 /bin 9.9k
FRITZ!Box 7490 (main) 7.08 - 7.51 /bin 9.9k - 10.0k
FRITZ!Box 7510 7.30 - 7.39 /bin 9.3k
FRITZ!Box 7520 7.21 - 7.50 /bin 9.3k - 9.4k
FRITZ!Box 7520 v2 (arm) 7.30 - 7.50 /bin 9.3k - 9.4k
FRITZ!Box 7530 7.19 - 7.51 /bin 9.3k - 9.4k
FRITZ!Box 7530 AX 7.20 - 7.39 /bin 9.5k
FRITZ!Box 7560 7.24 - 7.29 /bin 9.8k
FRITZ!Box 7580 7.21 - 7.29 /bin 9.8k
FRITZ!Box 7583 7.21 - 7.31 /bin 9.8k
FRITZ!Box 7583 VDSL 7.19 - 7.31 /bin 9.8k
FRITZ!Box 7590 7.08 - 7.51 /bin 9.8k - 9.9k
FRITZ!Box 7590 AX 7.19 - 7.39 /bin 9.8k
37 models use this command

Symbols

Daily updated index of all symbols of this command. Last update: 2023-02-04 07:20 GMT.

Firmware Symbol
7.08 - 7.51 main
7.08 - 7.19 voipkpi_deinit_dyn_library
7.08 - 7.11 voipkpi_init_dyn_library
3 symbols for this command

SMW-Browser

Information is currently being retrieved from the backend.