Pred štyrmi rokmi som robil na možnosti pridať obsah na fan stránky zákazníkov na Facebooku cez vlastnú webovú aplikáciu. Klasický Facebook účet obsahoval oprávnenie k niekoľko desiatkam fan stránok zákazníkov. Vtedy som vytvoril vlastnú Facebook aplikáciu, pridal som tam oprávnenia, vytvoril som dvojmesačný token a z neho som následne vygeneroval token s platnosťou bez obmedzenia. Takto som pre každú túto fan stránku vygeneroval vlastný token a ten sa aj s ID danej fan stránky používal na komunikáciu s API v mene konkrétnej fan stránky.
Facebook Access Token bez expirácie · PCforum.sk - Diskusné fórum o PC
Nedávno nastal problém, keď Facebook tento klasický účet zablokoval kvôli porušeniu pravidiel. Účet neobsahoval pravé meno, namiesto profilového obrázku bolo logo firmy atď. Celý účet sa javil akoby bol firemný a to je proti pravidlám Facebooku, čo samozrejme chápem, ale mohol byť Facebook aspoň trochu benevolentnejší v tomto prípade, keďže sa nepoužíval na nič iné len na komunikáciu s ich API. Keďže sme došli o tento účet a zákazníci si na to celkom zvykli pridávať obsah priamo cez webovú aplikáciu na svoje fan stránky na Facebooku, tak nebola iná možnosť ako tento problém vyriešiť. Došli sme na to, že je možné si vytvoriť biznis konto cez existujúci fyzický účet a tam spravovať všetky fan stránky zákazníkov.
Takže som postupoval rovnako ako predtým, keďže biznis konto nie je fyzické konto, ale skôr taká nadstavba nad fyzickým kontom (aspoň z môjho pohľadu mi to tak pripadá), tak som teda pod svojim fyzickým kontom vytvoril cez
developers.facebook.com aplikáciu na takýto export dát. Ako sa vytvára takýto biznis účet neviem, to som nerobil (do Facebooku sa vyznám asi ako lekár do murárčiny), takže počítam s tým, že ho vytvorený už máte a viete ako na to. Tam bolo hlavne nutné po novom overiť identitu, čiže tú som overil cez svoj vodičský preukaz, potvrdil všetky podmienky aby som bol pre Facebook overená osoba. To isté bolo nutné spraviť aj pre biznis konto, kde bolo nutné overiť firemné údaje, potvrdiť nejaké dokumenty, proste byrokracia ako na nejakom slovenskom úrade alebo pomaly ako žiadosť o prístup ku kódom k raketám s jadrovými hlavicami. Toto všetko bola podmienka k tomu aby sa dala aplikácia zapnúť a fungovala korektne.
Následne som riešil oprávnenia aplikácie, pričom v predchádzajúcej aplikácii v tom zablokovanom účte som použil len oprávnenie manage_pages a publish_pages, ale pri takomto riešení cez biznis konto chcel po mne Graph API Explorer neustále aj ďalšie oprávnenia a bol som z toho celkom jeleň. Po týždni som sa dopracoval k tomu, že som iné oprávnenia zbytočne riešil, lebo aj na takéto riešenie postačujú len tieto dve oprávnenia. Keďže sa do aplikácie bežný používateľ Facebooku prihlásiť nemôže, lebo nemá ako a kde, tak je nutné toto všetko samozrejme všade v nastaveniach vyklikať. Overiť takúto aplikáciu je potom oveľa jednoduchšie ako riešiť oprávnenia pre Facebook aplikáciu do ktorej sa môže bežný používateľ Facebooku svojim fyzickým účtom prihlásiť. Tiež odporúčam do popisu aplikácie pridať aj text „This is a server to server application with no user interface.“, lebo niekedy je celkom ťažké overiť oprávnenia a takto sa to dá celkom urýchliť. Pamätám si, že pred štyrmi rokmi sa mi podarilo overiť aplikáciu až na 11. krát, kým som pochopil, že o čo vôbec ide a nie som jediný čo máva problém s overovaním aplikácie ako som zistil na internete. Snáď si na celý postup niekedy keď nastane podobný problém zas spomeniem a nebudem to robiť ako prvý krat. Overenie aplikácie slúži na to aby sa dala aplikácia zapnúť a bola prístupná pre všetkých používateľov, síce do tej mojej nemá nikto prístup ale kvôli jej viditeľnosti musí byť zapnutá a preto som túto vec musel riešiť, pre tento môj konktrétny problém. Možno existuje aj iný postup, ale ja som sa k inému nedopracoval.
Ako som vyššie uviedol, stačí teda pridať len oprávnenia manage_pages a publish_pages, vyklikať všetko v aplikácií a požiadať o schválenie. Ak máme aplikáciu schválenú a dá sa bez problémov s týmito oprávneniami zapnúť, tak sme vyhrali. Ak by mal môj fyzický účet oprávnenia k týmto všetkým fan stránkam zákazníkov priamo, tak by mi stačilo vygenerovať
tokeny bez expirácie pre každú fan stránku a je to. Lenže takto by som svietil ja v týchto fan stránkach ako niekto, kto má nejaký prístup a to sme nechceli dosiahnuť. Nie len kvôli tomu aby sa nestalo, že by ma priamo niekto náhodou otravoval, ale sám som to nechcel ani kvôli kadejakým oznámeniam čo chodia z týchto fan stránok a z vyše 50. takých fan stránok to veru nie je málo. Videl som to na predchádzajúcom účte, ktorý Facebook zablokoval. Telefón by sa mi upípal k smrti, alebo by som ho sám hodil o zem kvôli tomu. Takže všetky tieto fan stránky sa postupne pridali do firemného biznis konta a to sa z pohľadu týchto fan stránok tvári ako nejaký firemný účet, čo vyzerá zároveň aj viac cool, ako nejaký bežný fyzický účet.
Takže ak máme tento firemný účet celý v poriadku, to iste aj aplikáciu treba jej ID vložiť sem ako je na obrázku nižšie a povoliť prístup medzi aplikáciou a firemným účtom. Čiže som tam požiadal o pridanie aplikácie, ktorú mám vo svojom fyzickom účte aj navzdory tomu, že tento firemný účet som nezakladal ja, ale mám k nemu úplne oprávnenie.
Ak sú v takomto firemnom účte už nejaké fan stránky, tak je nutné aby sa pridalo oprávnenie fyzického účtu kde sa daná aplikácia nachádza. Ja som stále hľadal, ako tam dostať oprávnenie priamo tej mojej aplikácie, ale to zjavne márne lebo to nejde. Treba tam pridať účet ktorému táto aplikácia patri aj s oprávneniami ktoré sú potrebné.
Takto som mal všetko správne nastavené a teraz stačilo len cez Graph API Explorer vygenerovať
tokeny bez expirácie pre všetky fan stránky zákazníkov, ktoré už boli v tomto biznis konte. Čiže v podstate to je ďalej rovnaké ako by som mal oprávnenia k týmto stránkam priamo ja, teda môj fyzický účet. Rozoberať tu ako sa pridáva obsah priamo na Facebook nebudem, to sa dá jednoducho dohľadať v
dokumentácií a nie je to v podstate nič zložité, jedná sa tuším o jeden jednoduchý POST.
Článok bol zobrazený 12342 krát a obsahuje 1009 slov
Pridané 12. augusta 2019