You are right. At the moment Adhearsion does not have awareness in Adhearsion::Call objects that recognize the state of the call (ie. "on a conference"), much less helper methods to directly manipulate them. However, what you are trying to do is still possible. It will depend on which Asterisk conferencing module you are using. For the sake of argument, I will assume you are using MeetMe.
You will need to construct a new AMI message to perform an action on the channel in question. The Adhearsion::Call objects do give you a handle on the channel unique ID, but keep in mind that this list is limited to those calls which actively have a connection to Adhearsion AGI (which may or may not be the case, depending on how your calls got into the conference). To get what you want, you would do something like:
@manager = Adhearsion::VoIP::Asterisk.manager_interface
@manager.send_action 'MeetmeMute', :Meetme => room_number, :Usernum => ???
To be honest, I'm not exactly sure how to get the Usernum since I don't use Meetme. But you can read more about the AMI commands that are available here:
Don't forget to rescue exceptions from send_action, in case of a ManagerInterfaceError.
/BAK/