egm.EGMDesiredConfig_v1



STOMP DestinationX/EGM.<protocol>.<GMID>.EGMDesiredConfig
STOMP Publish CapabilityMAX-Config
STOMP Subscribe CapabilityMAX-Config, MAX-EGMControl, Live-EGM

NameTypeDocumentation
fromegm.EGMStateBase_v1EGM, SC, etc identifiers and time
egmConfigegm.desiredconfig.DesiredConfig_v1The egm config.

egm.EGMStateBase_v1

Used to carry the standard set of identifiers for a sample of any state/value that is from/about an EGM.

NameTypeDocumentation
venueId"string"Venue this state was generated in (or is for). Must not be blank.
scId"string"Site Controller (MID) that recorded this state. Should not be blank.
interfaceId"string"a.k.a GMIC ID. EGM interface (X = GMIC ID, G2S = egmId from G2S message body, QCOM=MAC address) that delivered this state. Blank if not from an EGM/EGM interface (e.g. desired config or command to EGM)
egmElectronicId"string"a.k.a GMID. EGM technician entered identifier X = GMID, QCOM=egm electronic id (egm serial number without manufacturer prefix), G2S = cabinetprofile.machineNum. Must not be blank (it is the key!)
manufacturerId"string"QCOM=manufacturer prefix, otherwise blank
floorPosition"string"Provided in desired config and reflected in detected data so that current and historical 'position' of the EGM can be viewed/reported on
updatedTime"long"When the state was recorded/updated.

egm.desiredconfig.DesiredConfig_v1

NameTypeDocumentation
commsegm.desiredconfig.DesiredCommsConfig
coinAcceptor"null" | egm.desiredconfig.DesiredCoinAcceptorConfigNon-null if system wishes to control/set/check coin acceptor config. Null if coin acceptor config not imposed/checked. Must be non-null for QCOM. May be null (is ignored) for X.
noteAcceptor"null" | egm.desiredconfig.DesiredNoteAcceptorConfigNon-null if system wishes to control/set/check note and/or ticket acceptor config.
machineLimitsegm.desiredconfig.DesiredMachineLimits
machineCharacteristicsegm.desiredconfig.DesiredMachineCharacteristicsBasic characteristics info to allow setting (in some cases) and checking (in all - subject to protocol abilityh to report) basic machine characteristics are as desired.
authorisation"null" | egm.desiredconfig.authorisationInformationInformation about the athorisation/approval for this EGM and its configuration that is not a detectable property of the EGM (typically) e.g. because it is a physical serial number, or an authorisation identifier/number/name.
meterLimits"null" | egm.desiredconfig.DesiredMeterLimits
machineSettings"null" | egm.desiredconfig.DesiredMachineSettings

egm.desiredconfig.DesiredCommsConfig

NameTypeDocumentation
protocol"string"the generic name of the protocol family eg XSeries or QCOM or G2S
QCOMManufacturerId"null" | "int"QCOM Specific. Set to null for all other protocols. For QCOM in NSW the 2 digit QCOM Manufacturer ID used as a prefix to the 6 digit GMID to form the EGM 8 digit electronic ID for QCOM protocol. If this is null for a QCOM machine the protocol will assume the egmElectronicId alone provides the full 8 digits

egm.desiredconfig.DesiredCoinAcceptorConfig

NameTypeDocumentation
denominations{"type":"array","items":"int"}Coin denominations to be enabled in base currency units (cents in NSW). Empty will disable all denominations/the coin acceptor. Only single denomination coin acceptor supported/expected in NSW. QCOM TOK.

egm.desiredconfig.DesiredNoteAcceptorConfig

NameTypeDocumentation
denominations{"type":"array","items":"int"}Enabled note denomination in base currency units (cents in NSW). Empty will disable all denominations (no notes will be accepted) but will not have any other side effects. Multiple denomination note acceptor supported/expected in NSW.

egm.desiredconfig.DesiredMachineLimits

Any/all fields may be null if system does not wish to set/overrride/check the value from the EGM

NameTypeDocumentation
creditLimitCashIn"null" | "int"if credit is greater than or equal to this value, EGM will not accept further notes or coin in.
winToCreditMeterLimit"null" | "int"requires larger wins to be paid via handpay
maxRTP"null" | "double"regulatory limit. Null only while awaiting EGM report. If not reported by EGM protocol just echo desired param
minRTP"null" | "double"regulatory limit. Null only while awaiting EGM report. If not reported by EGM protocol just echo desired param
maxBet"null" | "int"regulatory limit. Null only while awaiting EGM report. If not reported by EGM protocol just echo desired param
maxGameWin"null" | "int"regulatory limit. Null only while awaiting EGM report. If not reported by EGM protocol just echo desired param
maxSAPWin"null" | "int"regulatory limit. Null only while awaiting EGM report. If not reported by EGM protocol just echo desired param
maxSecondaryGambleCount"null" | "int"regulatory limit. Maximum consecutive (i.e. per game play) double ups. If not reported by EGM protocol just echo desired param
maxSecondaryGambleWin"null" | "int"regulatory limit. Maximum amount won resulting from secondary play (double up). Prevents a double up play starting if a win would exceed this limit. If not reported by EGM protocol just echo desired param
maxHopperPay"null" | "int"Amount below which collect will pay from hopper (barring residual amount).
maxTicketPay"null" | "int"Collect as a TITO ticket/voucher if maxHopperPay < amount < maxTicketPay. If amount is above both - handpay.
maxStandardDeviation"null" | "int"Regulatory Maximum (nominal) EGM Game Theoretical Standard Deviation. Null to set this to the unlimited (QCOM needs to convert null to 65535)
maxLines"null" | "int"The regulatory maximum number of playlines in any game in the EGM.
maxNonCashInOut"null" | "int"Limit non cash (TITO and ECT) in and out amounts to les than this amount.
maxGameDenomination"null" | "int"The regulatory maximum allowable denomination of the EGM’s credit meter. i.e. the minimum bet on all games on the EGM must not exceed this limit.

egm.desiredconfig.DesiredMachineCharacteristics

NameTypeDocumentation
shellSoftwareId"string"A value that indicates the software that is expected to be installed (not the settings configured on that software) on the EGM up to but excluding individual games. In QCOM this is the BGVN in hex.
baseCreditDenom"null" | "int"Desired notional/base game denomination. G2S cabinet.reportDenom, QCOM DEN. Actual game denoms may be multiples of this value.
SAPConfigured"boolean"True if EGM is required to operate as a SAP. Should only be set if the jackpot configuiration of the EGM includes SAP levels. False where no SAP is configured for the EGM (even if the EGM is SAP capable)
LPConfigured"boolean"True if ithe EGM is required to operate as a linked progressive. Should only be set if the configuration of the EGM includes LP levels. False where no LP is configured (even if the EGM is LP capable).
isLPJS"boolean"True if this is an X jackpot controller.

egm.desiredconfig.authorisationInformation

NameTypeDocumentation
physicalId"string"The physical serial number, plate number etc for this physical EGM. Expected to be unique if not empty. Empty if unknown or unspecified. NSW: EGM Serial Number
configurationApprovalIdentifier"string"The identifier for the approval under which this configuration (which may be a mix of physical characteristics, software etc) is approved to operate. Typically multiple EGMs can/will be configured to conform to the same approval so this field is not unique. May be empty if unknown/unspecfified/unapproved configuration. NSW: Specification Number
configurationApprovalVariation"string"Identifies a specific configuration covered by the configurationApproval. For example a particular approved game paytable (RTP and denominations). NSW: Variation
configurationApprovalDescription"string"The description or name of the configuration identified by the configurationApprovalIdentifier and (possibly) configurationApprovalVariation. Empty if unknown or unspecified. NSW: typically displayed as Model Name or Game Name
authorisedForStorage"boolean"If true indicates that it is expected that the EGM may be disconnected from the CMS but non-the-less remains authorised to be connected. Important for operational purposes to distinguish unexpected non-connected or unauthorised EGM from approved temporary disconnect of authorised EGM.

egm.desiredconfig.DesiredMeterLimits

Any/all fields may be empty or null if system does not wish to set/override the meter limits

NameTypeDocumentation
qcomMeterLimits[egm.desiredconfig.meterLimit]

egm.desiredconfig.meterLimit

NameTypeDocumentation
qcomGroupMeterId"string"ID from QCOM protocol spec e.g. 0x00 = stroke, 0x11 = coin/tokens in.
meterIncrementLimit"long"If meter qcomGroupMeterID increments by more than this amount an excessive/unreasonable increment will be reported.

egm.desiredconfig.DesiredMachineSettings

Any/all fields may be null if system does not wish to set/overrride/check the value from the EGM

NameTypeDocumentation
defaultHopperRefill"null" | "int"The hopper refill amount that is offered during a hopper empty condition; The actual refill amount may be overridden by the attendant.
qcomJURCode"null" | "int"A value that MAY alter EGM behaviour and SHOULD be set to the jurisdicitons specified value (QCOM specific. If left null will use QLD (0). TAS is 5. VIC is 3, SA is 4, NZ is 2, QLD casinos is 1
qcomOPRCode"null" | "int"Default 0. Set to QLD LMO ID for any LMO specific behaviour.
qcomPIDCode"null" | "int"Default 0 (disabled). Set to code for jurisdiciton (not same as JUR!!) 1=QLD, 2=VIC, 3=NZ, 4=TAS.
qcomPWRTIME"null" | "int"Delay in seconds from site close disable and idel with no credit to EGM entering powersive. Also delay from waking up (buttons, doors) to going back into powersave. Default 60?
endDayMinutesAfterMidnight"null" | "int"A value that an EGM can do something with. Likley useful for on EGM day totals. No indication whether EGM should TZADJ this value. Good luck.
reserveFeatureEnable"null" | "boolean"If true and the EGM has a reserve feature, it is enabled.
hasResponseTimeoutSeconds"null" | "int"Maximum time to allow EGM to perform/respond to a hash check challenge. Note QCOM EGMs can be slow. A few minutes is reasonable - noting setting this to low will result in EGMs not being able to be brought online.

Avro Schema