card_eventmgr {

	# Run in background? Implies debug=false if set to true
	daemon = false;

	# show debug messages?
	debug = false;

	# polling time in milliseconds
	timeout = 1000;

	#
	# list of events and actions

	# Card inserted
	event card_insert {
		# what to do if an action fail?
		# ignore  : continue to next action
		# return  : end action sequence
		# quit    : end program
		on_error = return ;

		# You can enter several, comma-separated action entries
		# they will be executed in turn
		action =
			"gpg-connect-agent 'SCD SERIALNO' /bye | grep -q 'S SERIALNO'",
			"pacat --volume=65536 --file-format=oga /usr/share/sounds/freedesktop/stereo/device-added.oga",
			"swaymsg 'output * dpms on'", "echo UNLOCK";
	}

	# Card has been removed
	event card_remove {
		on_error = return ;
		action =
			"if gpg-connect-agent 'SCD SERIALNO' /bye | grep -q 'S SERIALNO'; then sleep 1; if gpg-connect-agent 'SCD SERIALNO' /bye | grep -q 'S SERIALNO'; then exit 1; else exit 0; fi; fi",
			"pacat --volume=65536 --file-format=oga /usr/share/sounds/freedesktop/stereo/device-removed.oga",
			"loginctl lock-session", "echo LOCK";
	}

	# Too much time locked session
	event timeout {
	}
}