Přejít k navigační liště

Zdroják » Různé » Odeslání příspěvku na stránku přes FB API

Odeslání příspěvku na stránku přes FB API

Články ‐ ‐ Různé ‐

Jak v PHP odesílat příspěvky na Facebook stránku (Page) pomocí Facebook API.

Nálepky:

Článek původně vyšel na autorově webu Je čas.

Máme-li vlastní FB stránku a chceme například dát vědět jejím fanouškům o novém příspěvku na webu, hodí se možnost odeslat zprávu na Facebook přímo z redakčního systému. Jak toho docílit?

Vytvoření aplikace

  1. Kliknout na stránce developers.facebook.com na Apps → Create a New App.
    vytvoreni-nove-aplikace
  2. Zadat název aplikace a určit kategorii. V případě, že chceme využít API k posílání příspěvků na svou FB stránku je vhodné zvolit Apps for Pages.
    vytvoreni-aplikace
  3. Po opsání ověřovacího kódu by se aplikace měla vytvořit.
    vytvorena-aplikace
  4. Na stránce developers.facebook.com/tools/explorer/ si potom aplikaci vybereme a zvolíme Get Access Token.
    access-token
  5. V objevivším se okně zvolíme oprávnění, která budeme potřebovat. Pro přispívání na vlastní Facebookovou stránku se budou hodit položky manage_pages a publish_actions z karty Extended Permissions.
    nastaveni-opravneni
  6. Nyní je třeba aplikaci udělit oprávnění ze svého účtu na Facebooku.
    prispivaniNejprve povolit aplikaci přístup do svého účtu a potom do svých FB Pages.manage-pages
  7. Nyní je vše připravené k využívání API.

Publikování příspěvků

Pro psaní na stránku „jako stránka“ potřebujeme zjistit:

  1. ID stránky. To získáme v nastavení stránky v nabídce Page Info úplně dole jako Facebook Page ID.
    id-stranky

  1. App ID a App Secret
    vytvorena-aplikace

Celý proces odeslání příspěvku potom funguje následovně:

  1. V prohlížeči, kde jsme přihlášeni k účtu, který má oprávnění spravovat stránku, spustíme vlastní PHP skript pro odeslání (example.com/odeslat.php).
  2. Tento skript hlavičkou header přesměruje na stránku Facebooku (předá ji ID aplikace a URL sebe sama). V případě, že je člověk přihlášen ke svému profilu, Facebook přesměruje zpátky na určenou adresu a v parametru URL (tzv. query string – QS) pošle kód.
  3. S tímto kódem můžeme získat access token k dané aplikaci.
  4. S access tokenem aplikace následně získáme access token stránky (Page).
  5. S access tokenem stránky konečně můžeme učinit konečný požadavek, kterým publikujeme příspěvek.

Hotový skript na GitHubu (našel jsem ho někde na internetu, šel by napsat lépe, ale funguje)

Odkazy a zdroje

Komentáře

Odebírat
Upozornit na
guest
5 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů
Tomas Jurman

Ahoj díky za článek. Moc mi pomohl.
Odesílat aktuality z RS přímo na FB jsem měl dlouho v plánu.

Tomas Dvorak

Tahle věta mě trochu děsí:

Hotový skript na GitHubu (našel jsem ho někde na internetu, šel by napsat lépe, ale funguje)

Nešlo alespoň dohledat / odkázat původní zdroj, případně to raději vůbec nezmiňovat? Uloupit script kdesi na internetu a hodit k sobě na github…

Kolemjdouci

Nějak nechápu význam článku.
Nic jsem se z toho nedozvěděl, místo FB API autor rozebírá nastavení FB aplikace a kód je navíc odněkud z internetu.

Roman Pospíšilík

Tohle jsem už jednou také řešil, když jsem na jednu FB stránku potřeboval přes cron pravidelně vkládat jídelní lístek na následující den. Problém byl v tom, že token, který jsem získal, měl krátkou životnost … a tak bylo potřeba složitými cestami vytvořit token, který nemá expiraci.
Nejdříve je potřeba si vygenerovat token s expirací (1 hodina):

https://www.facebook.com?client_id=%5BAPPID%5D&client_secret=%5BAPPSECRET%5D&redirect_uri%5Bhttp://APPURL%5D&scope=manage_pages,read_stream&response_type=token

Pak tento token vložit sem:

https://graph.facebook.com/oauth/access_token?client_id=%5BAPP_ID%5D&client_secret=%5BAPP_SECRET%5D&grant_type=fb_exchange_token&fb_exchange_token=%5BEXISTING_ACCESS_TOKEN%5D

A pak sem:

https://graph.facebook.com/me/accounts?access_token=%5BTOKEN%5D

A zde nám už vypíše token bez expirace. Jeho platnost si můžete pak ověřit zde: https://developers.facebook.com/tools/debug/accesstoken

Shneck

Musim mockrát poděkovat…dost hodin jsem to se svou nedokonalou angličtinou luštil z nápovědy facebooku a až váš komentář to nádherně shrnul česky a jednoduše… Ještě jednou mockrát děkuju

Začal jako projekt studentů Matfyzu. Český BIRD dnes pomáhá řídit provoz na největších internetových uzlech

Internet drží pohromadě i díky místům, kde se propojují sítě poskytovatelů připojení, cloudů nebo videoslužeb. S předáváním informací o tom, kudy jsou jednotlivé sítě dostupné, jim ve Frankfurtu, Londýně i Amsterdamu pomáhá český BIRD. Začal jako studentský projekt, po první verzi z roku 2000 léta spíš dřímal a soustavný vývoj obnovil až CZ.NIC. Ve své úloze uspěl tak výrazně, že největší uzly nakonec začaly platit vývoj konkurenčního softwaru, aby nebyly závislé jen na něm.

WebSocket: Jak dostat webovou aplikaci do reálného času

Chat, živé notifikace, společná úprava dokumentu nebo průběžně aktualizované kurzy. Uživatelé dnes čekají, že se webová aplikace změní ve chvíli, kdy se změní data, a ne až po stisknutí klávesy F5. Protokol WebSocket je nejrozšířenější způsob, jak mezi prohlížečem a serverem vytvořit trvalý obousměrný kanál. V článku se podíváme, jak funguje pod kapotou, jak ho použít v prohlížeči i na serveru a na co si dát pozor při nasazení do produkce.