MI_FIFO module
Admin Guide
Section titled “Admin Guide”Overview
Section titled “Overview”This is a module which provides a FIFO transport layer implementation for Management Interface.
FIFO command syntax
Section titled “FIFO command syntax”The external commands issued via FIFO interface must follow the following syntax:
- request = first_line argument*
- first_line = ’:‘command_name’:‘reply_fifo’\n’
- argument = (arg_name ’::’ (arg_value)? ) | (arg_value)
- arg_name = not-quoted_string
- arg_value = not-quoted_string | ’”’ string ’”’
- not-quoted_string = string - {’,”,\n,\r}
Dependencies
Section titled “Dependencies”OpenSIPS Modules
Section titled “OpenSIPS Modules”The following modules must be loaded before this module:
- No dependencies on other OpenSIPS modules.
External Libraries or Applications
Section titled “External Libraries or Applications”The following libraries or applications must be installed before running OpenSIPS with this module loaded:
- none
Exported Parameters
Section titled “Exported Parameters”fifo_name (string)
Section titled “fifo_name (string)”The name of the FIFO file to be created for listening and reading external commands.
Default value is NONE.
...modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")...fifo_mode (integer)
Section titled “fifo_mode (integer)”Permission to be used for creating the listening FIFO file. It follows the UNIX conventions.
Default value is 0660 (rw-rw----).
...modparam("mi_fifo", "fifo_mode", 0600)...fifo_group (integer) fifo_group (string)
Section titled “fifo_group (integer) fifo_group (string)”Group to be used for creating the listening FIFO file.
Default value is the inherited one.
...modparam("mi_fifo", "fifo_group", 0)modparam("mi_fifo", "fifo_group", "root")...fifo_user (integer) fifo_group (string)
Section titled “fifo_user (integer) fifo_group (string)”User to be used for creating the listening FIFO file.
Default value is the inherited one.
...modparam("mi_fifo", "fifo_user", 0)modparam("mi_fifo", "fifo_user", "root")...reply_dir (string)
Section titled “reply_dir (string)”Directory to be used for creating the reply FIFO files.
Default value is “/tmp/“
...modparam("mi_fifo", "reply_dir", "/home/opensips/tmp/")...reply_indent (string)
Section titled “reply_indent (string)”Strings to be used for line indentation. As the MI data structure is tree oriendeted, the depth level will printed as indentation.
Default value is ""\t” (TAB)”.
...modparam("mi_fifo", "reply_indent", " ")...Exported Functions
Section titled “Exported Functions”No function exported to be used from configuration file.
Example
Section titled “Example”This is an example showing the FIFO format for the “get_statistics dialog: tm:” MI commad: response.
:get_statistics:reply_fifo\ndialog:\ntm:\n\nContributors
Section titled “Contributors”By Commit Statistics
Section titled “By Commit Statistics”Top contributors by DevScore(1), authored commits(2) and lines added/removed(3)
| # | Name | DevScore | Commits | Lines++ | Lines— |
|---|---|---|---|---|---|
| 1. | Bogdan-Andrei Iancu (@bogdan-iancu) | 43 | 21 | 2126 | 225 |
| 2. | Daniel-Constantin Mierla (@miconda) | 12 | 10 | 20 | 22 |
| 3. | Stefan Darius (@dariusstefan) | 6 | 3 | 195 | 14 |
| 4. | Henning Westerholt (@henningw) | 5 | 2 | 62 | 109 |
| 5. | Jerome Martin | 3 | 1 | 3 | 3 |
| 6. | Razvan Crainea (@razvancrainea) | 3 | 1 | 2 | 2 |
| 7. | Konstantin Bokarius | 3 | 1 | 2 | 5 |
| 8. | Ovidiu Sas (@ovidiusas) | 3 | 1 | 2 | 2 |
| 9. | Edson Gellert Schubert | 3 | 1 | 0 | 103 |
(1) DevScore = author_commits + author_lines_added / (project_lines_added / project_commits) + author_lines_deleted / (project_lines_deleted / project_commits)
(2) including any documentation-related commits, excluding merge commits
(3) ignoring whitespace edits, renamed files and auto-generated files
By Commit Activity
Section titled “By Commit Activity”| # | Name | Commit Activity |
|---|---|---|
| 1. | Stefan Darius (@dariusstefan) | Jun 2026 - Jul 2026 |
| 2. | Razvan Crainea (@razvancrainea) | Jun 2026 - Jun 2026 |
| 3. | Bogdan-Andrei Iancu (@bogdan-iancu) | Oct 2006 - Jul 2008 |
| 4. | Daniel-Constantin Mierla (@miconda) | Nov 2006 - Mar 2008 |
| 5. | Konstantin Bokarius | Mar 2008 - Mar 2008 |
| 6. | Edson Gellert Schubert | Feb 2008 - Feb 2008 |
| 7. | Ovidiu Sas (@ovidiusas) | Feb 2008 - Feb 2008 |
| 8. | Henning Westerholt (@henningw) | Aug 2007 - Sep 2007 |
| 9. | Jerome Martin | Apr 2007 - Apr 2007 |
(1) including any documentation-related commits, excluding merge commits
Documentation
Section titled “Documentation”Contributors
Section titled “Contributors”Last edited by: Razvan Crainea (@razvancrainea), Bogdan-Andrei Iancu (@bogdan-iancu), Daniel-Constantin Mierla (@miconda), Konstantin Bokarius, Edson Gellert Schubert, Jerome Martin.
License
Section titled “License”All documentation files (i.e. .md extension) are licensed under the Creative Common License 4.0