The filter you have there will give you every user with a telephone number or an email address.
If you are looking for rooms with a phone number or email address, just add in (msExchResourceMetaData=ResourceType:Room)
:
string filter = "(&(objectClass=user)(objectCategory=user)(msExchResourceMetaData=ResourceType:Room)(|(telephoneNumber=*)(mail=*)))";
If you want all rooms regardless of whether they have a telephone number or email address (which I'm guessing you do), then drop the unnecessary conditions:
string filter = "(&(objectClass=user)(objectCategory=user)(msExchResourceMetaData=ResourceType:Room))";
Note: make sure you're wrapping everything you can in using
blocks when working with Active Directory, or you'll wind up with memory leaks.