Чтобы получить доступ к сообщениям (в чате), вам нужно иметь расширенное разрешение read_mailbox (я думаю) и делать:
string facebookToken = "your facebook token here";
var client = new FacebookClient(facebookToken);
dynamic result = client.Get("me/inbox", null);
foreach (dynamic item in result.inbox.data)
{
//item is a conversation
//the latest updated conversations come first so
//im just gona grab the first conversation with unreaded / unseen messages
if (item.unread > 0 || item.unseen > 0)
{
string conversationID = item.id;
string otherPerson = item.to.data[1].name;//the item.to.data[0] its myself
//you can access the messages of the conversation like
//by default it will return the last 25 messages, u can get more, by making a call too
//"https://graph.facebook.com/{0}/comments?limit={1}" like:
//dynamic result = client.Get(string.Format("{0}/comments?limit={1}",conversationID, 100), null);
foreach (dynamic message in item.comments.data)
{
//Do want you want with the messages
string id = message.id;
string fromName = message.from.name;
string fromID = message.from.id;
string text = message.message;
string createdDate = message.created_time;
}
//To send a message in this conversation, just
dynamic parameters = new ExpandoObject();
parameters.message = "A message from code!";
client.Post(string.Format("{0}/comments", conversationID), parameters);
//or
//client.Post(string.Format("{0}/comments", conversationID), new Dictionary<string, object> { { "message", "A message from code!" } });
//NOTE!! - The application must be on white list for you te be able to post a message
// read - https://developers.facebook.com/docs/ApplicationSecurity/
break;
}
}
Вы можете попробовать на https://developers.facebook.com/tools/explorer
Подробнее в:
Входящие уведомления ,
Информация о сообщении
Изменения: скоро будут изменения
Надеюсь, это помогло;)