- Переписан метод определения статусов сообщений

parent cd00316e
...@@ -100,18 +100,24 @@ class UnisenderAPI { ...@@ -100,18 +100,24 @@ class UnisenderAPI {
); );
} }
/** /**
* @param $message_id * @param $campaign_id
* @return array * @param $message_id
*/ * @param $email
public function getMessageStatuses($message_id){ * @return array|mixed
$this->statuses = $this->callMethod( */
'checkEmail', public function getMessageStatuses($campaign_id, $message_id, $email){
$result = $this->callMethod(
'getCampaignDeliveryStats',
[ [
'email_id' => $message_id 'campaign_id' => $campaign_id
] ]
); );
$this->statuses = Json::decode($this->statuses); if (array_key_exists('result', $result) && array_key_exists('letter_id', $result['result']) && $result['result']['letter_id']==$message_id) {
foreach($result['result']['data'] as $data) {
$this->statuses[] = $data[1];
}
}
return $this->statuses; return $this->statuses;
} }
...@@ -141,7 +147,7 @@ class UnisenderAPI { ...@@ -141,7 +147,7 @@ class UnisenderAPI {
* @return bool * @return bool
*/ */
public function isReaded(){ public function isReaded(){
if (array_key_exists('result', $this->statuses) && array_key_exists('status', $this->statuses['result'])) { if (array_key_exists('result', $this->statuses) && array_key_exists('data', $this->statuses['result'])) {
if ($this->statuses['result']['status']==ConditionBase::MESSAGE_READ || $this->statuses['result']['status']==ConditionBase::MESSAGE_UNSUBSCRIBED || $this->statuses['result']['status']==ConditionBase::MESSAGE_SPAM_FOLDER) if ($this->statuses['result']['status']==ConditionBase::MESSAGE_READ || $this->statuses['result']['status']==ConditionBase::MESSAGE_UNSUBSCRIBED || $this->statuses['result']['status']==ConditionBase::MESSAGE_SPAM_FOLDER)
return true; return true;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment