If you followed the instructions in the Configuration section of QMX-Server, these SambaPOS Configuration settings should already be complete.

Confirm the settings have been completed properly by going over the following sections.




SambaPOS Messaging Server Service
First, we need to ensure the SambaPOS MessagingServer Service is configured and running. To install and/or configure this Service, run the file located at
C:\Program Files (x86)\SambaPOS5\Samba.MessagingServerServiceTool.exe
. Running that executable will produce the following Dialog:
SambaPOS Messaging Server Service Tool
The default Port for the Messaging Server is
9000
, but it can be changed to something different if necessary.

The
+
symbol to the right of the port number MUST be there to enable the GraphQL Engine.
When the SambaPOS MessagingServer Service is configured and running, it will be installed as a Service, so we can use the Windows Services interface to start, stop, or restart the Service.
SambaPOS Messaging Server Service
We can set the Service to run under a specific Windows User Account.
SambaPOS Messaging Server Service



SambaPOS Application Configuration
We need to configure an Application in SambaPOS so that QMX will be able to access the system. This is done by navigating to
Manage > Users > Applications > Add Application
.
SambaPOS Application Configuration
  • Application Name
    This parameter is an arbitrary value that is used to identify the Application in the Application List.
  • Identifier
    This parameter is referred to as the
    App Id
    in Web Applications and it is configured as in QMX.
    IMPORTANT: We need to remember the the value used here for
    Identifier
    so when we configure QMX (later) we will use the same value for .
  • Authentication Type
    Types of Authentication include
    User Name & Password
    ,
    User Name & Password + Secret Key
    , and
    Secret Key only
    . We will use the first Type:
    User Name & Password
    .
  • Authorization Type
    Types of Authorization include
    All Functions in Local Network
    ,
    All Functions
    , and
    Permitted Functions
    . The 1st Type allows access from within the Local Network only (this type does not work for Web Apps over the Internet). The 2nd Type allows access from anywhere, even outside the Local Network (required for Web Apps to work over the Internet). The 3rd Type allows only Permitted Functions which are specified in the Application Permissions Tab.
  • Lifetime
    This parameter specifies the number of days before an Access Token expires. When the Token expires, we need to re-authenticate. Don't worry about this value too much, since QMX handles re-authentication internally.
  • Allowed Origin
    This parameter specifies the Origins from which communication will be accepted. In general, only Local Network access is granted, but you can specify a list of external Hosts, or use asterisk (
    *
    ) to allow access from any Host.
  • Active
    This checkbox can be used to quickly disable or enable the Application.



SambaPOS APP User Configuration
We need to configure an APP USER in SambaPOS so that QMX will be able to access the system. This is done by navigating to
Manage > Users > User List > Add User
.

IMPORTANT: The User we define here is ONLY used when QMX needs to Authenticate the QMX App. This is NOT the same as a regular User Login with a PIN. The User we define here is known as the APP USER.

Once the Application Authentication is complete using the APP USER and Password, we will be able to use the regular User Pin Codes to identify which of our Users are using the QMX App. We can logout a Regular User and Login another Regular User via their Pin Code. The APP USER on the other hand is only used "once", and there is no method to "logout" the APP USER.
SambaPOS APP User Configuration
QMX APP User Authentication
  • User Name
    This parameter is the User Name we will use when QMX needs to Authenticate. The SambaPOS Configuration Task QMX Installation or Removal (Main) will automatically create a User named QMXuser, but the Password will be left EMPTY.
  • Pin Code
    This parameter is NOT required and can be left empty, or we can set it to some random digits. A Pin Code cannot be used to Authenticate an App.
  • Password
    This parameter is REQUIRED, and we will use this Password when QMX needs to Authenticate. The SambaPOS Configuration Task QMX Installation or Removal (Main) will leave this Password EMPTY. We need to change this Password to a strong, complex value.
  • User Role
    The User Role for the APP User is arbitrary and is not used by QMX. For extra security, we can set this to a Role that has very few Permissions. The SambaPOS Configuration Task QMX Installation or Removal (Main) will automatically use the Role named QMXrole



SambaPOS REGULAR User Configuration
Our Regular Users will be able to Login with their Pin Code. These Regular Users can also Logout, and we can Login with another Regular User Pin Code. We configure Regular Users by navigating to
Manage > Users > User List > Add User
.

IMPORTANT: The Regular Users we define here do NOT require a Password. Login will be performed using the Pin Code.
SambaPOS REGULAR User Configuration
QMX REGULAR User Login
  • User Name
    This parameter is the User Name that will be registered in QMX when a valid Pin Code is entered.
  • Pin Code
    This parameter is REQUIRED, and we will use this Pin Code to register the User that is using QMX.
  • Password
    This parameter is NOT required, so we can leave it BLANK, or enter some random letters and digits that will be difficult to guess.
  • User Role
    The User Role for the REGULAR User can be used to control access to specific QMX Modules (see Module Configuration).



Restart SambaPOS Messaging Server Service
Finally, we know that when we change certain things in the SambaPOS Configuration, we should Restart the SambaPOS MessagingServer Service.

We can use the Windows Services interface to start, stop, or restart the Service.
SambaPOS Messaging Server Service
When the Service is restarted, it is time to move on to the QMX Client Configuration.