Connect to Facebook Graph API, get information from a list of inbox conversations and build a FacebookConversationsCollection-class
instance.
FacebookConversationsCollection(id, token = NULL, parameters = list(),
fields = c("id", "snippet", "updated_time", "message_count"),
n = getOption("facebook.maxitems"), metadata = FALSE,
.progress = create_progress_bar())A character vector or a comma-delimited string of IDs or an existing Facebook Collection of any of the supported types (see below).
Either a temporary access token created at
https://developers.facebook.com/tools/explorer or the OAuth token
created with fbOAuth. If token NULL and id is a collection,
use the token of the source collection. Otherwise, no query is performed
to the Facebook Graph API and an empty collection is returned.
A list of parameters to be added to the Facebook Graph API query. For more information on the accepted parameters, see: https://developers.facebook.com/docs/graph-api/using-graph-api.
A character vector with the fields to get for each id. If no value
for a given field is found, it will be set to NULL.
If id is an iterable collection, then n is the maximum number of conversations to be pulled for each element of the source collection
in id. It can be set to Inf to pull out any available conversation and assumes the default value from the value
of facebook.maxitems global option if missing. If id is not a collection or cannot be iterated, the parameter is ignored.
If set to TRUE, the metadata for each ID is pulled with the data
and the type slot is fed accordingly.
Please note that setting this to TRUE could considerably
slow down the execution time, as more queries are needed.
progress_bar object as defined in the plyr package.
By default the none progress bar is used, which prints nothing to the console. See create_progress_bar for details.
A collection of conversations in a FacebookConversationsCollection-class object.
Due to the network-graph nature of Facebook data model,
you can specify fields details for each field nesting .fields() clauses.
For example, if you need only id and source for the cover field, this is valid among others:
cover.fields(id,source).
Following the same philosophy, if you need only id and name for the from node
you can use from.fields(id,name).
Instead of a character vector, one of these collections can also be passed as parameter in id:
FacebookPagesCollection-class will build a collection with
all the inbox conversations to pages of the source collection. A page access token with read_page_mailboxes is needed
to read the related mailboxes.
FacebookUsersCollection-class will build a collection with
all the conversations that person is involved with if they are a developer of the application making the request.
A user access token with read_mailbox is needed to perform this action.
FacebookMixedCollection-class will build a collection with
all the conversations, filtering only to the user and page in the source collection.
FacebookConversationsCollection is the constructor for the FacebookConversationsCollection-class.
It returns data about inbox conversations of users or pages but doesn't return lists of messages or users involved.
A FacebookMessagesCollection-class can be built on top to pull out the messages of each conversation.
FacebookMessagesCollection, facebook.participants, facebook.senders
Other Facebook Collection Constructors: FacebookAlbumsCollection,
FacebookCommentsCollection,
FacebookEventsCollection,
FacebookGroupsCollection,
FacebookLikesCollection,
FacebookMessagesCollection,
FacebookPagesCollection,
FacebookPhotosCollection,
FacebookPostsCollection,
FacebookReactionsCollection,
FacebookUsersCollection,
FacebookVideosCollection
# NOT RUN {
## See examples for fbOAuth to know how token was created.
load("fb_page_oauth")
## Getting the conversations of an example page. A page access token is needed to access the inbox
conversations <- FacebookConversationsCollection(FacebookPagesCollection(
"9thcirclegames", fb_page_oauth))
# }
# NOT RUN {
# }
Run the code above in your browser using DataLab