Instead of swapping shifts, or offering them you could release the shift and then anyone could pick up the shift. This way you don't have to offer your shift to everyone you work with.
James Shride commented
This is a very good idea.
David Kerr commented
This is a big one in our opinion at our company. We staff offer their shift, it needs to be to everyone in the group or department. For example, we're operating an Aquatics department and when someone offers their lifeguard shift from the computer or app, there needs to be an option where staff can share the shift with everyone.
we would like to be able to publish a schedule with unassigned shifts to our volunteers, so everybody can apply for the shift they like.