This document describes how to run the UniMRCP server as a system daemon.
UniMRCP server 1.5.0 and above
Upon installation of the UniMRCP server package, a systemd unit file unimrcp.service is installed in the directory /usr/lib/systemd/system (RPM) or /lib/systemd/system (Deb) having the following content by default.
[Unit]
Description=UniMRCP Server
After=network.target
[Service]
Type=simple
ExecStart=/opt/unimrcp/bin/unimrcpserver -r /opt/unimrcp -o 2 -w
Restart=on-abort
[Install]
WantedBy=multi-user.target
The unit file can be managed using the systemctl commands.
Use with sudo, if running as a non-root user.
To start the systemd service, use the start command.
systemctl start unimrcp.service
To stop the currently running service, use the stop command.
systemctl stop unimrcp.service
To check the status of the service, use the status command.
systemctl status unimrcp.service
To check whether the service is currently active (running), use the is-active command.
systemctl is-active unimrcp.service
To check whether the service is enabled, use the is-enabled command.
systemctl is-enabled unimrcp.service
To automatically start the service on next boot, use the enable command.
systemctl enable unimrcp.service
If the service is required to run under a specific user and/or group, the User and/or the Group must be added to the systemd unit file unimrcp.service. The User and the Group are set to unispeech in the following example.
[Unit]
Description=UniMRCP Server
After=network.target
[Service]
Type=simple
ExecStart=/opt/unimrcp/bin/unimrcpserver -r /opt/unimrcp -o 2 -w
Restart=on-abort
User=unispeech
Group=unispeech
[Install]
WantedBy=multi-user.target
The systemd configuration files must be reloaded afterwards.
systemctl daemon-reload
The service must have read permissions on the directory /opt/unimrcp and its sub-directories and write permissions on the sub-directories /opt/unimrcp/log and /opt/unimrcp/var.
Set the permissions/ownership.