3namespace Bitrix\MessageService\Sender\Sms;
6use Bitrix\Main\Localization\Loc;
8use Bitrix\MessageService\Providers;
9use Bitrix\MessageService\Providers\Base;
10use Bitrix\MessageService\Providers\CacheManager;
11use Bitrix\MessageService\Providers\Edna\RegionHelper;
12use Bitrix\MessageService\Providers\Edna\WhatsApp;
13use Bitrix\MessageService\Sender;
17 public const ID =
'ednaru';
26 $this->optionManager =
new Base\Option($this->
getType(), $this->
getId());
29 $this->initiator =
new WhatsApp\Initiator($this->optionManager, $this->registrar, $this->utils, $this->
getId());
31 $this->sender =
new WhatsApp\Sender($this->optionManager, $this->registrar, $this->utils, $emojiConverter);
42 if (\
Bitrix\
Main\
Config\Option::get(
'messageservice',
'force_enable') ===
'Y')
44 return parent::isSupported();
49 RegionHelper::isInternational()
50 && \
Bitrix\
Main\Application::getInstance()->getLicense()->getRegion() !==
'kz'
58 if (\
Bitrix\
Main\Application::getInstance()->getLicense()->getRegion() ===
'by')
63 return parent::isSupported();
68 return $this->informant->getId();
73 return $this->informant->getName();
78 return $this->informant->getShortName();
83 return $this->registrar->isRegistered();
93 \CAgent::AddAgent(static::class .
"::registerAutoTemplatesAgent();",
'messageservice',
'N', 10);
100 return $this->registrar->resetCallback();
105 return $this->registrar->getOwnerInfo();
110 return $this->registrar->getExternalManageUrl();
133 return $this->initiator->getFromList();
142 $this->utils->updateSavedChannelList($this->initiator->getChannelType());
158 return $this->registrar->getCallbackUrl();
166 return $this->templateManager->isTemplatesBased();
171 return $this->initiator->isCorrectFrom($from);
179 return $this->templateManager->getTemplatesList(
$context);
187 return $this->templateManager->prepareTemplate($templateData);
192 return $this->utils->getMessageTemplates($subject);
197 return $this->informant->getManageUrl();
202 return $this->utils->getSentTemplateMessage($from, $to);
207 return $this->sender->prepareMessageBodyForSave(
$text);
224 return $this->utils->sendTemplate(
$name,
$text, $examples, $langCode);
237 \CAgent::AddAgent(static::class .
"::refreshFromListAgent();",
'messageservice',
'Y', $period);
247 if (!$sender::isSupported() || !
$sender->isRegistered())
254 return __METHOD__ .
'();';
263 if (!$sender::isSupported() || !
$sender->isRegistered())
268 \CAgent::AddAgent(static::class .
"::registerAutoTemplatesAgent();",
'messageservice',
'N', 10);
275 if (!Loader::includeModule(
'messageservice') || !($languageId = Loc::getCurrentLang()))
280 $notificationsApiClient = new \Bitrix\Messageservice\ApiClient();
281 $listTemplatesResult = $notificationsApiClient->listAutoTemplates($languageId);
282 if ($listTemplatesResult->isSuccess())
284 $templates = $listTemplatesResult->getData();
286 if (!$sender::isSupported() || !
$sender->isRegistered())
static refreshTemplates(array $templates=[])
const CHANNEL_CACHE_ENTITY_ID
addRefreshFromListAgent()
getSentTemplateMessage(string $from, string $to)
getLineId(?int $subjectId=null)
static registerAutoTemplatesAgent()
static checkAutoTemplatesAgent()
WhatsApp EmojiConverter $emoji
setSocketTimeout(int $socketTimeout)
prepareMessageBodyForSave(string $text)
const DISABLE_INTERNATIONAL
setStreamTimeout(int $streamTimeout)
getMessageTemplates(string $subject='')
sendTemplate(string $name, string $text, array $examples=[], ?string $langCode=null)
getTemplatesList(array $context=null)
sendMessage(array $messageFields)
static refreshFromListAgent()
static resolveStatus($serviceStatus)
getMessageStatus(array $messageFields)
Providers Edna EdnaRu $utils
prepareTemplate($templateData)
static getSenderById($id)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)