im currently developing my module using drupal_mail, but get the following warning

warning: preg_match() expects parameter 2 to be string, array given in /var/www/html/untukperubahan.com/demo/dompetduafa/includes/unicode.inc on line 280.

while my code is

$account => $user
drupal_mail('mymodule', 'notice', $to, user_preferred_language($account), $from->mail, $params);

function mymodule_mail($key, &$message, $params) {
		//$language = $message['language'];
		//$variables = user_mail_tokens($params['account'], $language);
		//print_r ($params);
		switch($key) {
			case 'notice':
				$message['subject'] = 'invoice from dompet duafa ';
				$message['body'][] = "Tuan/Nyonya ".$params['account']->name."\n\n anda telah memesan ". $params['nama_bangunan']." seharga ".$params['harga']." anda dapat membayar sekarang dengan mengklik alamat ".$params['url'].".";
				break;
			}
	}

i dont know what to do? please help!