/** * @param string $mobile * @param string $uniqueness * @param string $alias * @param string[] $topics * @param int $amount * * @throws TrialNotAcceptedInternalException * @throws ExistentMobileInternalException */ public function create($mobile, $uniqueness, $alias, $topics, $amount) { if ($this->checkOperationInternalWorker->checkTrial($mobile)) { throw new TrialNotAcceptedInternalException(); } try { $this->createSubscriptionInternalWorker->create($mobile, $uniqueness, $alias, $topics, $amount, 0, true); } catch (ExistentMobileInternalException $e) { throw $e; } $this->enqueueMessageApiWorker->enqueue($mobile, sprintf("Tu telefono se ha subscrito con %s sms gratis para recibir noticias %s que seleccionaste.", 10, count($topics) == 1 ? "del topico" : sprintf("de los %s topicos", count($topics)))); $this->logOperationInternalWorker->logTrial($mobile, $uniqueness, $topics, time()); }
/** * Logs a trial operation. * * @param string $mobile * @param string $uniqueness * @param string[] $topics * @param int $timestamp */ public function logTrial($mobile, $uniqueness, $topics, $timestamp) { $this->logOperationInternalWorker->logTrial($mobile, $uniqueness, $topics, $timestamp); }