Jak projít schvalovacím procesem pro Facebook Messenger Bota.
V tomto textu je postup, jak jsem získal oprávnění k Facebook Messenger API pro aplikaci chatgo.cz.
Co je potřeba
- Stabilní webová aplikace
- Facebook stránka
- Webová stránka s odkazy na ochranu osobních údajů a obchodní podmínky.
- Živnostenský list nebo firma
Na co je potřeba oprávnění a schvalovací proces?
Každá aplikace, která chce využívat určité Facebook API podléhá schvalovacímu procesu. V chatgo.cz využívám automatizaci zpráv v zákaznickém chatu pomocí Messengeru. Toto Messenger API vyžaduje oprávnění
- pages_messaging
, které podléhá schvalovacímu procesu.
Business Verification
V konzoli pro správu FB aplikací nalezneme sekci Settings > Basic > Business Verification. Ovření se skládá z
- ověření živnostenského listu nebo firmy
- podepsání dvou dodatečných ustanovení
Všechny dokumenty byly přijaty v češtině bez problému i bez požadovaného úředně ověřeného překladu. K ověření jsem nahrával následující dokumenty.
- Živnostenský list
- Fakturu za platbu domény (bylo nutné ověřit majitele uváděné domény aplikace)
- Výpis z účtu
Oprávnění pages_messaging
Moje žádost pro chatgo.cz byla schválena poměrně rychle a bez větších zádrhelů. Je dobré, že schvalovací proces probíhá i přes víkend a moje aplikace byla nakonec schválena do necelé hodiny (Facebook uvádí až 5 dní).
Před odesláním žádosti ke schválení je nutné řádně vyplnit základní údaje o aplikaci včetně odkazů na ochranu osobních údajů a obchodních podmínek.
Vyplnil jsme formulář a stručně jsem popsal účel aplikace a jak ji otestovat. V mém případě jsem odůvodnil potřebu oprávnění pages_messaging, správou automatických odpovědí v zákaznickém chatu na webu klienta.
Vysvětlil jsem, jak se do aplikace přihlásit, uvedl jsem testovacího uživatele, kterého lze vytvořit v developerské konzoli Facebooku. A ukázal jak si jednoduše spravovat konverzaci. Tento postup je nutné popsat a stejně tak i natočit screencast.
Ve formuláři jsem vybral jako účel využití Others, please futher elaborate your usecase. A uvedl popis aplikace:
The chatgo.cz app is developed for manage Customer chat plugin message flow. We send automatic on-bording message a reply messages to chat window after user open it.
Dále bylo nutné uvést instrukce k otestování integrace.
1. Please, log into Facebook as a test user: email: rghkwkesgt_1576753638@tfbnw.net, name: “Tom Aldeabejdaghc Alisonwitz”, password: ***********
2. Visit https://app.chatgo.cz/
3. Login with Facebook by clicking on the blue button with the label ‘Přihlásit přes Facebook’.
4. After successful login, you are on the ‘Home’ page.
5. Now you can setup a chatbot in your Facebook customer chat window for your web.
6. You cas test auto greeting message in Facebook customer chat window in right down corner. Open chat, continue as Tom.
7. Now choose ‘Chat na stránce’ from the left menu in the chatgo.cz dashboard.k
8. Select one predefined automatic message ‘Feedback’
9. Scroll down and click on ‘Jak jste s námi spokojeni?’
10. Now you can see auto-message editor. To send test message to customer chat plugin click on button ‘Zobrazit náhled ‘ and then use send to messenger plugin.11. Thank you for your time. Have a nice day.
Po odeslání žádosti přišla automatická zpráva, na kterou je nutno skrze aplikace odpovědět.
This is a test message from the Facebook team. Please respond from your app within 2 days to confirm that the integration is functioning.
Ve webhooku jsem měl implementováno pravidlo s automatickou odpovědí pro tuto zprávu. Zaslal jsem odpověď:
Hi there, this is a test message from the Chatgo.cz app. Thank you.
Běhen několika hodin jsem pozoroval, jak testovací tým zkouší konverzaci s botem. Můj chatbot komunikoval pouze v češtině. Testeři spíše řeší formální dodržovaní pravidel, než užitečnost aplikace. Následně přišlo první zamítnutí.
První zamítnutí
Zamítnutí žádosti přišlo s vysvětlením, že se nelze do aplikace přihlásit a že nedodržuji guidelines pro přihlašovací tlačítko. Dále uváděli, že nelze zopakovat uvedený testovací scénář.
Prošel jsem nejprve logy a zjistil, že vůbec nevyužili testovací účet, který byl uveden v postupu. Ikdyž ho ve formuláři explicitně vyžadují, tak testeři tento účet nevyužívají. Celé nastavení, které měl tento testovací účet předpřipraven, bylo zbytečné. Vytvořil jsem tedy nové instrukce k otestovaní a nový screecast pro libobolného uživatele.
1. Hi there, please log into Facebook as a test user: email: viwsvsxpce_1579948397@tfbnw.net, password: *******
2. Visit https://app.chatgo.cz/
3. Login with Facebook by clicking on the blue button with the label ‘Přihlásit přes Facebook’.
3.1 Grant ‘show_page_list and pages_messaging’ (we use this to subscribe our app to the page -> we manage a chatbot for a page).
4. Insert your email address and click green save button with the label “Uložit”.
5. If you are not admin of any facebook page, you have to create one.
6. Click on create fb page button with label “+ vytvořit novou stránku”.
7. Create standart FB page with name “mytestwebpage” and catogory web.
8. After that, move back to chatgo.cz tab in your browser and click on refresh button. Now you see your page in the list.
9. Press subscribe button with label ‘Připojit’ to subscribe our app to your test page ‘TestPageChatgoApp’.
10. After successful login and mail registation, you are on the app’s dashboard page.
11. Now you can setup a chatbot in your Facebook customer chat window for your web.
12. Go to chat flow editor section. Click on “CHAT NA STRÁNCE” item in the left menu.
13. Now select feedback flow. Click on “Feedback” item in the list.
14. Scroll down and click on ‘Jak jste s námi spokojeni?’
15. Now you can see auto-message editor. To send test message to customer chat plugin click on button ‘Zobrazit náhled ‘ and then use send to messenger plugin.
16. Go to Facebook tab in your browser and show page’s inbox. You can click on quick reply and see how we use pages_messaging on your own.
17. Thank you for your time. Have a nice day.
Znovu jsem prošel guidlines pro login tlačítko. Nenašel jsem nic, co by odporovalo pravidlům. Přihlašovací stránka vypadala takto.
Odeslal jsem tedy žádost znovu. Nyní už byla aplikace schválena ani ne za hodinu.
Závěr
Výslednou intergraci můžete vyzkoušet zde chatgo.cz.
U schvalovacího procesu je nutné projít všechna doporučení Facebooku před samotným podání žádosti. Napsat přesné instrukce k otestování aplikace, které předvedou, jak dané oprávnění využíváte – testeři kontrolují spíše formální dodržování pravidel, a ne přínos dané aplikace. Každé oprávnění lze použít jen k povoleným usecases. Nelze se spoléhat na předem definovaného testovacího uživatele. Instrukce musí být aplikovatelné libovolným testerem. Testeři aplikaci skutečně proklikávají a zkouší daný scénář. Naopak jako plus vidím, že aplikace nemusí být nutně lokalizované v angličtině.
Poznámka:
Žádejte jen o oprávnění, které skutečně aplikace vyžaduje. Původně jsem žádal také o oprávnění manage_pages, které jsem mylně pokládal za nutné. Toto oprávnění mi nebylo přiděleno s vysvětlením, že pro daný usecase není nutný ani povolený. Ikdyž z dokumentace API, to tak ze začátku zřejmé nebylo.