SDK, предоставляемый Facebook для PHP, предназначен для вызова и использования, пока пользователь просматривает ваш сайт - действия, которые выполняют вызовы API Facebook без прямого участия пользователей, требуют чего-то более надежного, использующего тот же подход, но с сохраненными токенами и инициированного с помощью cronjobs или фоновых процессов.
Поток oAuth 2.0 для проверки и предоставления разрешений подробно описан в документации Facebook.
http://developers.facebook.com/docs/authentication/
Вы можете выполнить описанную здесь логику вручную, даже не используя SDK, используя стандартную библиотеку HTTP-запросов, такую как CURL. В основном, это влечет за собой отправку запроса в Facebook, когда пользователь впервые пытается предоставить доступ, после чего браузер должен полностью перенаправить в диалоговое окно FB Login / permissions. Именно в этом запросе вы указываете, какие разрешения вам потребуются. Вы можете использовать параметр redirect_uri
, чтобы указать это обратно на конечную точку в вашем приложении, которая затем принимает данные, которые Facebook возвращает, отправляет их обратно для токена доступа, а затем сохраняет этот окончательный токен oAuth в файл или строку базы данных, связанную с этим. пользователь.
Для описанных вами действий вам потребуется запросить разрешение offline_access
при вызове URL-адреса в Facebook. При этом создается токен, который будет действителен до тех пор, пока пользователь не отменит свои разрешения в своей учетной записи Facebook с помощью интерфейса «Aps».
Подробнее об oAuth можно узнать здесь:
http://oauth.net/2/
Я также настоятельно рекомендую подписаться на RSS-канал разработчиков для Facebook. Они очень регулярно делают огромные изменения в том, как они управляют своим API, и обычно только объявляют о них там.
http://developers.facebook.com/blog/feed