__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
-- WirePlumber
--
-- Copyright © 2022 Collabora Ltd.
--
-- SPDX-License-Identifier: MIT
-- apply the selected profile to the device
cutils = require ("common-utils")
log = Log.open_topic ("s-device")
AsyncEventHook {
name = "device/apply-profile",
after = { "device/find-stored-profile", "device/find-preferred-profile", "device/find-best-profile" },
interests = {
EventInterest {
Constraint { "event.type", "=", "select-profile" },
},
},
steps = {
start = {
next = "none",
execute = function (event, transition)
local device = event:get_subject ()
local profile = event:get_data ("selected-profile")
local dev_name = device.properties ["device.name"] or ""
if not profile then
log:info (device, "No profile found to set on " .. dev_name)
transition:advance ()
return
end
for p in device:iterate_params ("Profile") do
local active_profile = cutils.parseParam (p, "Profile")
if active_profile.index == tonumber(profile.index) then
log:info (device, "Profile " .. profile.name .. " is already set on " .. dev_name)
transition:advance ()
return
end
end
local param = Pod.Object {
"Spa:Pod:Object:Param:Profile", "Profile",
index = tonumber(profile.index),
}
log:info (device, "Setting profile " .. profile.name .. " on " .. dev_name)
device:set_param ("Profile", param)
-- FIXME: add cancellability
-- sync on the pipewire connection to ensure that the param
-- has been configured on the remote device object
Core.sync (function ()
transition:advance ()
end)
end
},
}
}:register()
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| apply-profile.lua | File | 1.75 KB | 0644 |
|
| apply-routes.lua | File | 3.42 KB | 0644 |
|
| autoswitch-bluetooth-profile.lua | File | 14.93 KB | 0644 |
|
| find-best-profile.lua | File | 2.21 KB | 0644 |
|
| find-best-routes.lua | File | 2.49 KB | 0644 |
|
| find-preferred-profile.lua | File | 2.09 KB | 0644 |
|
| select-profile.lua | File | 720 B | 0644 |
|
| select-routes.lua | File | 4.9 KB | 0644 |
|
| state-profile.lua | File | 4.11 KB | 0644 |
|
| state-routes.lua | File | 10.5 KB | 0644 |
|