# # "raw" modem - phoneline # pcm.!phoneline { @args [ CARD DEV ] @args.CARD { type string default { @func getenv vars [ ALSA_MODEM_CARD ALSA_PCM_CARD ALSA_CARD ] default { @func refer name defaults.pcm.modem.card } } } @args.DEV { type integer default { @func igetenv vars [ ALSA_MODEM_DEVICE ] default { @func refer name defaults.pcm.modem.device } } } @func refer name { @func concat strings [ "cards." { @func card_driver card $CARD } ".pcm.modem." $DEV ":CARD=" $CARD ] } hint.show off } # # "autohooked" modem # pcm.!modem { @args [ CARD DEV ] @args.CARD { type string default { @func getenv vars [ ALSA_MODEM_CARD ALSA_PCM_CARD ALSA_CARD ] default { @func refer name defaults.pcm.modem.card } } } @args.DEV { type integer default { @func igetenv vars [ ALSA_MODEM_DEVICE ] default { @func refer name defaults.pcm.modem.device } } } type hooks slave { pcm { @func concat strings [ "cards.pcm.phoneline:CARD=" $CARD ",DEV=" $DEV ] } } hooks.0 { type ctl_elems hook_args [ { name "Off-hook Switch" preserve true value "on" lock false optional true } ] } hint.show off }