Skip to content
This repository has been archived by the owner on Aug 15, 2024. It is now read-only.

Commit

Permalink
getting page id from api
Browse files Browse the repository at this point in the history
  • Loading branch information
blopa committed Dec 26, 2017
1 parent 0d8532b commit 4b2c907
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 31 deletions.
21 changes: 18 additions & 3 deletions Magento2/app/code/Werules/Chatbot/Block/Chatbox/Messenger.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,20 +49,35 @@ protected function getMessengerInstance()

public function getFacebookPageId()
{
$pageId = $this->getConfigValue('werules_chatbot_messenger/general/page_id');
if ($pageId)
return $pageId;

$messengerInstance = $this->getMessengerInstance();
$pageDetails = $messengerInstance->getPageDetails();
$this->_helper->logger($pageDetails);
die;
if (isset($pageDetails['id']))
{
$pageId = $pageDetails['id'];
$this->setConfigValue('werules_chatbot_messenger/general/page_id', $pageId);
return $pageId;
}

return '';
}

public function getFacebookAppId()
{
$appId = $this->getConfigValue('werules_chatbot_general/general/app_id');
$appId = $this->getConfigValue('werules_chatbot_messenger/general/app_id');
return $appId;
}

public function getConfigValue($code)
{
return $this->_helper->getConfigValue($code);
}

public function setConfigValue($field, $value)
{
$this->_helper->setConfigValue($field, $value);
}
}
8 changes: 4 additions & 4 deletions Magento2/app/code/Werules/Chatbot/Model/Api/Messenger.php
Original file line number Diff line number Diff line change
Expand Up @@ -304,10 +304,10 @@ public function sendReceiptTemplate($chat_id, array $payload) {
}

public function getPageDetails() {
return $this->endpoint("me",
array(
'fields' => array('id', 'name', 'fan_count', 'picture', 'is_verified')
)
return $this->endpoint(
"me",
array(),
false
);
}

Expand Down
44 changes: 24 additions & 20 deletions Magento2/app/code/Werules/Chatbot/etc/adminhtml/system.xml
Original file line number Diff line number Diff line change
Expand Up @@ -97,45 +97,49 @@
</field>
<field id="bot_username" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="6" translate="label comment tooltip" type="text">
<label>Facebook Page Username</label>
<comment>Facebook page username.</comment>
<comment>Facebook page username. If you don't know, leave it blank.</comment>
</field>
<!--<field id="enable_messenger_box" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="7" translate="label comment tooltip" type="select">-->
<field id="page_id" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="7" translate="label comment tooltip" type="text">
<label>Facebook Page ID</label>
<comment>Facebook Page ID. If you don't know, leave it blank.</comment>
</field>
<!--<field id="enable_messenger_box" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="8" translate="label comment tooltip" type="select">-->
<!--<label>Enable Facebook Messenger Box</label>-->
<!--<comment>Enable Facebook Messenger box</comment>-->
<!--<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>-->
<!--</field>-->
<!--<field id="messenger_box_width" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="8" translate="label comment tooltip" type="text">-->
<!--<field id="messenger_box_width" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="9" translate="label comment tooltip" type="text">-->
<!--<depends>-->
<!--<field id="werules_chatbot_messenger/general/enable_messenger_box">1</field>-->
<!--</depends>-->
<!--<label>Facebook Messenger Box Size</label>-->
<!--<validate>input-number validate-number</validate>-->
<!--<comment>Facebook Messenger box size.</comment>-->
<!--</field>-->
<!--<field id="enable_referral" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="9" translate="label comment tooltip" type="select">-->
<!--<field id="enable_referral" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="10" translate="label comment tooltip" type="select">-->
<!--<depends>-->
<!--<field id="werules_chatbot_messenger/general/enable_messenger_box">1</field>-->
<!--</depends>-->
<!--<label>Enable Referral</label>-->
<!--<comment>Enable referral.</comment>-->
<!--<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>-->
<!--</field>-->
<!--<field id="referral_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="10" translate="label comment tooltip" type="text">-->
<!--<field id="referral_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="11" translate="label comment tooltip" type="text">-->
<!--<depends>-->
<!--<field id="werules_chatbot_messenger/general/enable_referral">1</field>-->
<!--</depends>-->
<!--<label>Referral Message</label>-->
<!--<comment>Referral message.</comment>-->
<!--</field>-->
<!--<field id="support_group" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="11" translate="label comment tooltip" type="text">-->
<!--<field id="support_group" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="12" translate="label comment tooltip" type="text">-->
<!--<label>Messenger Support Chat ID</label>-->
<!--<comment>The chat ID of the support admin. This feature isn't very useful since you can simply log into your page and directly reply your customers from there.</comment>-->
<!--</field>-->
<field id="welcome_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="12" translate="label comment tooltip" type="text">
<field id="welcome_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="13" translate="label comment tooltip" type="text">
<label>Welcome Message</label>
<comment>First message the bot will send to your client. please check the maximum size for messages on Facebook API, otherwise your message might not be sent. you can use "{customername}" to send the customer name.</comment>
</field>
<field id="enable_message_options" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="13" translate="label comment tooltip" type="select">
<field id="enable_message_options" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="14" translate="label comment tooltip" type="select">
<!--TODO-->
<!--<depends>-->
<!--<field id="werules_chatbot_messenger/general/welcome_message">1</field>-->
Expand All @@ -144,7 +148,7 @@
<comment>Enable welcome message options.</comment>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="message_options" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="14" translate="label comment tooltip" type="text">
<field id="message_options" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="15" translate="label comment tooltip" type="text">
<depends>
<!--<field id="werules_chatbot_messenger/general/welcome_message">1</field>--> <!--TODO-->
<field id="werules_chatbot_messenger/general/enable_message_options">1</field>
Expand All @@ -154,31 +158,31 @@
<backend_model>Magento\Config\Model\Config\Backend\Serialized\ArraySerialized</backend_model>
<frontend_model>Werules\Chatbot\Block\Adminhtml\System\Config\Form\Field\WelcomeOptions</frontend_model>
</field>
<field id="about_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="15" translate="label comment tooltip" type="text">
<field id="about_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="16" translate="label comment tooltip" type="text">
<label>About Message</label>
<comment>Message will be sent when customer asks informations about the store. Please check the maximum size for messages on Facebook API, otherwise your message might not be sent.</comment>
</field>
<field id="help_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="16" translate="label comment tooltip" type="text">
<field id="help_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="17" translate="label comment tooltip" type="text">
<label>Help Message</label>
<comment>Message will be sent when customer asks for help. Please check the maximum size for messages on Facebook API, otherwise your message might not be sent.</comment>
</field>
<field id="enable_help_command_list" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="17" translate="label comment tooltip" type="select">
<field id="enable_help_command_list" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="18" translate="label comment tooltip" type="select">
<label>Enable Command Listing on Help Command</label>
<comment>Enable command listing when customer ask for help.</comment>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="commands_list" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="18" translate="label comment tooltip" type="text">
<field id="commands_list" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="19" translate="label comment tooltip" type="text">
<label>Commands List</label>
<comment>Code of the commands and it's alias. Alias must be split by comma. eg.: "support,chat,talk,sac".</comment>
<backend_model>Magento\Config\Model\Config\Backend\Serialized\ArraySerialized</backend_model>
<frontend_model>Werules\Chatbot\Block\Adminhtml\System\Config\Form\Field\Commands</frontend_model>
</field>
<field id="enable_default_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="19" translate="label comment tooltip" type="select">
<field id="enable_default_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="20" translate="label comment tooltip" type="select">
<label>Enable Default Replies</label>
<comment>Enable default replies.</comment>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="default_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="20" translate="label comment tooltip" type="text">
<field id="default_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="21" translate="label comment tooltip" type="text">
<depends>
<field id="werules_chatbot_messenger/general/enable_default_replies">1</field>
</depends>
Expand All @@ -187,20 +191,20 @@
<backend_model>Magento\Config\Model\Config\Backend\Serialized\ArraySerialized</backend_model>
<frontend_model>Werules\Chatbot\Block\Adminhtml\System\Config\Form\Field\DefaultReplies</frontend_model>
</field>
<field id="enable_nlp_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="21" translate="label comment tooltip" type="select">
<field id="enable_nlp_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="22" translate="label comment tooltip" type="select">
<label>Enable Natural Language Processor Replies (wit.ai)</label>
<comment>Enable Natural Language Processor replies.</comment>
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
</field>
<field id="nlp_entity_prefix" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="22" translate="label comment tooltip" type="text">
<field id="nlp_entity_prefix" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="23" translate="label comment tooltip" type="text">
<depends>
<field id="werules_chatbot_messenger/general/enable_nlp_replies">1</field>
</depends>
<label>Natural Language Processor Entity Prefix</label>
<validate>validate-no-html-tags</validate>
<comment>Natural Language Processor entity prefix is a prefix name to flag that the request is coming from Messenger.</comment>
</field>
<field id="nlp_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="23" translate="label comment tooltip" type="text">
<field id="nlp_replies" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="24" translate="label comment tooltip" type="text">
<depends>
<field id="werules_chatbot_messenger/general/enable_nlp_replies">1</field>
</depends>
Expand All @@ -209,11 +213,11 @@
<backend_model>Magento\Config\Model\Config\Backend\Serialized\ArraySerialized</backend_model>
<frontend_model>Werules\Chatbot\Block\Adminhtml\System\Config\Form\Field\NaturalLanguageProcessorReplies</frontend_model>
</field>
<field id="fallback_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="24" translate="label comment tooltip" type="text">
<field id="fallback_message" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="25" translate="label comment tooltip" type="text">
<label>Fallback Message</label>
<comment>Message will be sent when the bot don't understand customer messages for the Nst time.</comment>
</field>
<field id="fallback_message_quantity" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="25" translate="label comment tooltip" type="text">
<field id="fallback_message_quantity" showInDefault="1" showInStore="1" showInWebsite="1" sortOrder="26" translate="label comment tooltip" type="text">
<!--TODO-->
<!--<depends>-->
<!--<field id="werules_chatbot_messenger/general/fallback_message">1</field>-->
Expand Down
1 change: 1 addition & 0 deletions Magento2/app/code/Werules/Chatbot/etc/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
<enable>0</enable>
<disabled_message>Sorry, I'm not available at the moment. Please try again later.</disabled_message>
<api_key/>
<page_id/>
<bot_username/>
<enable_messenger_box>0</enable_messenger_box>
<messenger_box_width>200</messenger_box_width>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,2 @@
<?php $this->getFacebookPageId(); ?>
<div class="fb-customerchat"
page_id="<PAGE_ID>"
ref="<OPTIONAL_WEBHOOK_PARAM>"
<div class="fb-customerchat" page_id=<?php echo $this->getFacebookPageId(); ?> ref="OPTIONAL_WEBHOOK_PARAM">
</div>

0 comments on commit 4b2c907

Please sign in to comment.