static AutoCloseable dm_phoneAssistantAction(VF1 onRequest) { ret combineAutoCloseables( dm_vmBus_onMessage_q phoneCatHeard(voidfunc(Map map) { AssistantRequest r = nu(AssistantRequest, +map, token := getString token(map), input := getString line(map), language := getString language(map), module := map.get('module)); pcallF(onRequest, r); }), dm_vmBus_onMessage_q phoneCatEvent(voidfunc(Map map) { AssistantRequest r = nu(AssistantRequest, +map, token := getString token(map), event := getString what(map), language := getString language(map), module := map.get('module)); pcallF(onRequest, r); })); }