Pass message template id through URL?
Does it have to be through CiviCRM? It sounds like you just want a customizable contact form, which can be done on the drupal side - have you looked at potential drupal modules?

If the reason for CiviCRM is that you want a copy stored in their activity list, you could set up the module to bcc to an email address, and configure the civi email processor to retrieve them.

Or if you're up for customizing then a similar suggestion to Jaap's would be customizing the email template to make the same javascript call that the dropdown does, but do it on page load if the url contains your parameter. Depends if you feel more comfortable with front-end or back-end type of customization.