diff --git a/votingapi.drush.inc b/votingapi.drush.inc
index 800fa98..bdbeec7 100644
--- a/votingapi.drush.inc
+++ b/votingapi.drush.inc
@@ -151,7 +151,7 @@ function _votingapi_cast_votes($etype, $eid, $timestamp = 0, $uids = array(), $s
 /**
  * Command callback. Recalculate voting results.
  */
-function drush_votingapi_recalculate($entity_type = 'node', $entity_id = NULL) {
+function drush_votingapi_recalculate($entity_type = 'node', $entity_id = NULL, $vote_type = 'vote') {
   // Prep some starter query objects.
   $data = array();
   if (empty($entity_id)) {
@@ -159,15 +159,16 @@ function drush_votingapi_recalculate($entity_type = 'node', $entity_id = NULL) {
       ->fields('vv', array('entity_type', 'entity_id'))
       ->condition('entity_type', $entity_type, '=')->distinct(TRUE)
       ->execute()->fetchAll(PDO::FETCH_ASSOC);
-      $message = t('Rebuilt voting results for @type votes.', array('@type' => $entity_type));
+    $message = t('Rebuilt all voting results.');
   }
   else {
     $votes[] = array('entity_type' => $entity_type, 'entity_id' => $entity_id);
-    $message = t('Rebuilt all voting results.');
+    $message = t('Rebuilt voting results for @type votes.', array('@type' => $entity_type));
   }
 
   foreach ($votes as $vote) {
-    votingapi_recalculate_results($vote['entity_type'], $vote['entity_id'], TRUE);
+    $manager = Drupal::service('plugin.manager.votingapi.resultfunction');
+    $manager->recalculateResults($vote['entity_type'], $vote['entity_id'], $vote_type);
   }
 
   drush_log($message, 'success');
