2016-04-20 55 views
6

我的聊天機器人工作得很好,但我在調試歡迎消息功能時遇到了問題,因爲它只在啓動對話時顯示出來(儘管我很確定它在同事手機上嘗試過)。如何重置我的聊天,以便將我視爲新用戶與之交互?Facebook聊天機器人 - 我如何測試歡迎消息?

這是我的歡迎PHP腳本的時刻

<?php 

function webhook() { 
$challenge = $_REQUEST['hub_challenge']; 
$verify_token = $_REQUEST['hub_verify_token']; 

if ($verify_token === 'MYTOKEN') { 
    echo $challenge; 
} 

$input = json_decode(file_get_contents('php://input'), true); 
$sender = $input['entry'][0]['messaging'][0]['sender']['id']; 

$welcomejson = welcomemessage(); 

welcomesend($json); 

function message() { 
$json = '{ 
"setting_type":"call_to_actions", 
"thread_state":"new_thread", 
"call_to_actions":[ 
    { 
     "message":{ 
     "text":"Welcome to My BOT!" 
    } 
} 
] 
}'; 
return $json; 
} 

function send($json) { 
$url = 'https://graph.facebook.com/v2.6/MYPAGEID/thread_settings?access_token=MYTOKEN'; 

//Initiate cURL. 
$ch = curl_init($url); 

//Tell cURL that we want to send a POST request. 
curl_setopt($ch, CURLOPT_POST, 1); 

//Attach our encoded JSON string to the POST fields. 
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData); 

//Set the content type to application/json 
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); 

//Execute the request 
$result = curl_exec($ch); 
} 

exampleofissue

+0

你能指出我的地方我可以找到如何在PHP中做到這一點嗎?謝謝 – Ukor

+0

@Ukor https://gist.github.com/visitdigital/58c71acb123870d1ac2ec714d7536587 –

回答

17

試試這個:在桌面瀏覽器

  1. 打開Facebook和去鏈接到您的Messenger機器人的頁面
  2. 按「信息」
  3. 裏面t他彈出消息/討論,選擇「選項」(齒輪圖標)
  4. 選擇「刪除對話......」並說「刪除對話」的確認提示
  5. 選擇「消息」再次
  6. 選擇「入門」

第4步。真正刪除您正在使用該頁面/應用程序的聊天記錄,所以要小心。

+1

正確的......雖然......有一個Facebook Messenger API文檔中的奇怪消息。 「歡迎屏幕僅適用於新會話,刪除會話不會導致歡迎屏幕出現。」在這裏看到:https://developers.facebook.com/docs/messenger-platform/implementation#welcome_screen –

+2

我認爲在iOS Messenger中存在一個錯誤,因爲「入門」按鈕只出現在桌面上,而不是Mobile上。 –

+0

另外,有沒有辦法設置歡迎屏幕?我只有一個「開始使用」按鈕。 – forallepsilon

2

有一種方法可以在iOS上使用Messenger(至少在4月28日)獲得歡迎屏幕,儘管它非常煩人。基本上,除了刪除convo之外,您還必須在手機上重新安裝應用程序。

  1. 轉到分頁鏈接到你的機器人在Facebook的桌面上
  2. 存檔談話
  3. 打開Messenger的手機上,並通過在對話列表上的細胞螢幕上向右滑動刪除轉換
  4. 刪除從您的手機
  5. 重新安裝Messenger的使者從App Store
4
  • 在桌面上,刪除會話並再次向該消息發送消息。

這將允許您再次看到「開始使用」按鈕,允許您測試它和您的歡迎消息的功能。

如果你想測試「信使問候」,它會複雜得多。見下文。


在桌面上,「Messenger問候語」在刪除會話後仍不會顯示。只有「開始」按鈕重新出現。我相信這是一個錯誤,我將最有可能打開一張票。

通過刪除會話,卸載和重新安裝Messenger,您可以在手機上獲得類似體驗,但再次顯示Messenger問候語時,它僅顯示開始按鈕。

再次看不到Messenger問候是一個問題,對於對Messenger問候語的逐行格式挑剔的開發者,或者只是需要再次查看一次messenger bot演示的開發者纔會遇到問題問候已經被看到了。

謝天謝地,雖然極其痛苦,但有一個解決方法。基本上必須重新設置你的機器人。

  1. 創建一個新的頁面
  2. 切勿打開與頁/ BOT的消息,直到步驟17
  3. 點擊設置,Messenger和設置您的Messenger的問候,並按下保存。
  4. 因爲實際上並不保存切換設置出於某種原因,在邊欄中選擇從信使不同的事情
  5. 重新選擇斜挎
  6. 打開問候語(該消息應妥善保存,只是不能切換對於其是否開啓或關閉)
  7. 更改爲不同的東西在側邊欄
  8. 再次選擇Messenger和仔細檢查信使問候啓用
  9. 創建一個新的應用程序
  10. 添加爲Messenger產品
  11. 選擇頁面,然後複製頁面訪問令牌
  12. 把需要的地方在你的代碼
  13. 與運行代碼
  14. 連接到網絡掛接URL頁面訪問令牌的驗證令牌和所有的箱子檢查
  15. 後網絡掛接連接成功後,其訂閱到你的新頁面
  16. 運行您的curl命令使「開始」按鈕,您的歡迎郵件按鈕被按下
  17. 打開一條消息,那之後會發生你的頁面,信使問候和開始按鈕應該出現。你會得到一個機會,然後你必須重複所有這些步驟再次看到問候。

我相信信使問候語不能保存正確的切換也是一個錯誤,我可能會打開一張票。

+0

我已upvoted這只是因爲這仍然是一個bug –

+0

是的,錯誤報告在這裏:https://developers.facebook。 com/bugs/809612952506854/ – user2322082

+1

@ user2322082我看到他們(FB團隊)提到他們已經解決了這個問題,但是我仍然面臨同樣的問題(作爲開發人員),你是否仍然發現相同的錯誤? – Stergios