Safe Haskell | None |
---|---|
Language | Haskell98 |
Synopsis
- class Yesod site => YesodFacebook site where
- fbCredentials :: site -> Credentials
- fbHttpManager :: (MonadHandler m, HandlerSite m ~ site) => m Manager
- fbUseBetaTier :: site -> Bool
- runYesodFbT :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site) => FacebookT Auth m a -> m a
- runNoAuthYesodFbT :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site) => FacebookT NoAuth m a -> m a
- getFbCredentials :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site) => m Credentials
- parseRealTimeUpdateNotifications :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site, FromJSON a, MonadFail m) => m (RealTimeUpdateNotification a)
- answerRealTimeUpdateChallenge :: MonadHandler m => RealTimeUpdateToken -> m RepPlain
- lookupRequestIds :: MonadHandler m => m (Maybe [Id])
Running FacebookT
actions inside HandlerT
class Yesod site => YesodFacebook site where Source #
The YesodFacebook
class for foundation datatypes that
support running FacebookT
actions.
fbCredentials :: site -> Credentials Source #
The credentials of your app.
fbHttpManager :: (MonadHandler m, HandlerSite m ~ site) => m Manager Source #
HTTP manager used for contacting Facebook (may be the same
as the one used for yesod-auth
).
fbUseBetaTier :: site -> Bool Source #
Use Facebook's beta tier if True
. The default is False
.
runYesodFbT :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site) => FacebookT Auth m a -> m a Source #
Run a FacebookT
action inside a GHandler
using your
credentials.
runNoAuthYesodFbT :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site) => FacebookT NoAuth m a -> m a Source #
Run a FacebookT
action inside a GHandler
without using
your credentials. Usually you won't need to use this function
but it's provided for completeness' sake.
getFbCredentials :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site) => m Credentials Source #
Returns Facebook's Credentials
from inside a
HandlerT
. Just a convenience wrapper around
fbCredentials
.
Real-time update notifications
parseRealTimeUpdateNotifications :: (MonadHandler m, HandlerSite m ~ site, YesodFacebook site, FromJSON a, MonadFail m) => m (RealTimeUpdateNotification a) Source #
Same as getRealTimeUpdateNotifications
but does the
heavy-lifting for you. Throws an exception whenever any step
fails (signature header not found, invalid signature, invalid
JSON).
answerRealTimeUpdateChallenge :: MonadHandler m => RealTimeUpdateToken -> m RepPlain Source #
Answer Facebook's challenge if the RealTimeUpdateToken
matches.
Whenever you modify your subscriptions, Facebook will try to
contact your server with the RealTimeUpdateToken
that you
gave on your call to modifySubscription
. This function
will correctly answer Facebook's challenge if the
RealTimeUpdateToken
matches, otherwise it will return
notFound
.
Requests
lookupRequestIds :: MonadHandler m => m (Maybe [Id]) Source #
Lookup and parse the request_ids
GET parameter
http://developers.facebook.com/docs/requests/.