There wasn't any clear guide or documentation on how to add a select list which allow users to select multiple value in a Rules condition. The following code should work just fine:

<?php
/**
 * Implements of hook_rules_condition_info().
 */
function mymodule_rules_condition_info() {
  return array(
    'mymodule_rules_condition_example' => array(
      'group' => 'mymodule',
      'label' => t('Just a condition example with select list'),
      'arguments' => array(
        'status' => array(
          'label' => t('Status'),
          'type' => 'list<text>',
          'options list' => 'mymodule_status_options_list',
          'restriction' => 'input',
          'multiple' => TRUE,
        ),
      ),
    ),
  );
}

/**
 * Generate the status option list.
 */
function mymodule_status_options_list() {
  $status = array('Unpublished', 'Published');
  return $status;
}
?>
Published on 17 October 2013 - 7:25am