Skip to main content
vmc_configuration object 允许您设置各种配置标志。使用 Marshall SDK 时,这些标志决定了外围设备(最初用于自动售货机控制器 -VMC)的行为和功能。

Configuration Flags

您可以在 main 方法中初始化这些标志,如以下代码所示:

旗帜说明

下表提供了这些标志的更详细说明。
范围类型描述
multi_vend_support布尔值支持在单笔交易中销售和区分多个产品。
multi_session_support布尔值使设备能够同时处理多个会话,这对于可能同时存在多笔未结交易的场景非常有用。
price_not_final_support布尔值仅适用于多会话(预选)流程。这表明从服务器收到的授权价格并非最终价格,这意味着将其与多会话流程结合使用时,其行为类似于预授权流程,确保余额在几天内不会被冻结。您可以在多会话页面了解更多信息。
reader_always_on布尔值它能确保设备的读卡器始终保持开启状态,随时准备从设备端而非外围设备发起交易。使用此功能时,触发产品选择的条件是刷卡或触摸设备上的按钮,而无需在外围设备上选择产品。
always_idle布尔值交易开始时,消费者在终端设备上选择商品。终端设备无需等待“会话开始”触发器即可发送“销售请求”命令。
vend_denied_policy布尔值不相关,不适用。
explicit_vend_success布尔值如果您的出货操作耗时较长,可以将此标志设置为 true,然后在收到 onVendApproved() 后执行缓慢的出货操作,再在您方便的时候调用 vend_status(true/false) 以表示出货成功或失败,从而结束该交易。(onVendApproved 会返回一个虚拟的“true”,这意味着它会释放线程,但 SDK 仍会等待您关于售货结果的实际响应,这正是您在“vend_status”命令中要执行的操作。)
long_price布尔值仅适用于 VPOSM——允许 price 字段为 4 字节而非 2 字节。尚不支持
mifare_approved_by_vmc_support布尔值允许第三方服务器对Mifare(预付)卡进行授权。卡片数据将被转发至外围设备,由外围设备决定是否批准或拒绝该卡。
mag_card_approved_by_vmc_support布尔值允许使用经第三方服务器授权的磁条专用卡。卡片数据将被转发至外围设备,由外围设备决定是否批准或拒绝该卡。
qr_approved_by_vmc_support布尔值允许第三方服务器对二维码进行授权。卡片数据将被转发至外围设备,由外围设备决定是否批准或拒绝该卡片。
debug布尔值启用或禁用日志生成。
dump_packets_levelvmc_configuration确定记录 SDK 生成的消息所需的详细程度。您可以在“日志生成”页面中了解更多信息。