FaxMaker services and their functions are one of the main topics to master to resolve FaxMaker Service incidents more efficiently. This article covers:
- The purpose of the FaxMaker services
- The Fax Server service
- The Message Transfer Agent service
- The Attendant service
The purpose of the FaxMaker services
Three services are installed by the GFI FaxMaker Installation:
- GFI FaxMaker Fax Server
- GFI FaxMaker Message Transfer Agent
- GFI FaxMaker Attendant
The three FaxMaker services as seen in the Windows Services panel.
FaxMaker uses service accounts to carry out the functions of the software. A domain user account enables the service to take full advantage of the service security features of Windows and Microsoft Active Directory Domain Services. The service grants specific local and network access to the account, or to any groups of which the account is a member.
The overview diagram of the product which includes the services and some of their functions is shown below:
Due to all the external entities that FaxMaker interacts with, it is recommended (although not mandatory) that the service accounts used for FaxMaker are Domain Admin accounts.
Setting up these accounts is outside the scope of FaxMaker support, but the article about the requirements for the service account contains the necessary information.
Each time a user sends a fax or receives fax to email, an LDAP query is made. Refer to the article on LDAP query and Windows registry path for more information.
The Fax Server service and its functions
The Fax Server service name is fmserver.exe. It is the main engine of FaxMaker, which handles incoming and outgoing faxes.
The Fax Server service functions are:
- Manage the fax queue.
- Provides an interface to the fax devices.
- Active Directory confirmation for user verification.
- Handles document conversion:
- Start the document conversion process.
- Start shex.exe for external conversion.
- Coverpage rendering.
- Monitor specific folders:
- Pickup from
xmlapi pickupfolder set in the configuration.
- Pickup from
textapi pickupfolder set in the configuration.
- Pickup from
- Pickup from
- Fax Routing:
- Create transmission reports and drop in out folder.
- Interprets all fax routing for inbound faxes.
- Trigger Autoprint tasks.
- Drop files in folders for routing requirements.
- Create reporting information for archiving and reporting.
The log file name for the Fax server service is
faxserver.gfi_log.txt. Refer to the article about the Fax Server debug log file for more information about its location, attributes, and details.
For details regarding troubleshooting issues with the Fax Server service, refer to the Troubleshooting the Fax Server service issues article.
The Message Transfer Agent service and its functions
The Message Transfer Agent Service supports the Fax Server service by transporting messages to and from the service. It also manages the sending and receiving of SMS messages and GSM SMS devices.
The Message Transfer Agent service name is fmgwinet.exe
The Message Transfer Agent service functions are:
- Manage SMS jobs
- Preprocess SMS emails.
- Interface with GSM SMS device or service.
- Manage SMS job queue.
- Responsible for inbound SMS routing.
- Download new mail faxes from a POP3 mailbox.
- Upload fax and SMS transmission reports through an email client.
- Transports all SMTP messages to and from the Fax Server service:
- Creates .sfm and .bdy files from inbound emails.
- Delivers .sfm, .bdy and attachment files to the
The log file name for the Message Transfer Agent service is
fmmta.gfi_log.txt. Refer to the article about The Message Transfer Agent Service Debug Log File for more information about its location, attributes, and details.
For details regarding troubleshooting issues with the Message Transfer Agent service, refer to the Troubleshooting the Message Transfer Agent (MTA) service issues article.
The Attendant service and its functions
The Attendant service is used for integration with web-based 3rd-party API applications. It requires Microsoft.Net 4 to be installed.
The service was introduced as the WSAPI service in earlier versions and changed to the Attendant service when more responsibilities were assigned to it, most of which are behind the scenes but become very noticeable when not working.
The Attendant service name is ML.Svc.Attendant.exe
The Attendant service controls the web monitor. You can refer to Updating the Status of Fax in FaxMonitor for technical information.
The Attendant service functions are:
- Handling the WSAPI requests
- Responsible for Web Interface
- WCF Processes
- Report Scheduling
- User Settings
- User Management
The Attendant service is a plugin-based multi-purpose component and only implements FaxMaker plugins. The plugins listed below are loaded when the service is started:
- WSAPI - Web Service API: allows users to send faxes from custom applications.
- WCF Plugin: loads several components such as the reporting service, user settings service, update settings service, report options service, user address book service, user management service, report scheduler service, update scheduler service, unicorn connector service, and the user service configuration rules service.
- Archiver: constantly archives data into the configured data store.
- WebClientCleaner: daily cleanups Web Interface temporary files.
The main log file for the Attendant service is
AttendantService.txt. Refer to the article about The Attendant Service Debug Log Files for more information, additional files, and their locations.
For details regarding troubleshooting issues with the Message Transfer Agent service, refer to the Troubleshooting the Attendant service issues article.