0

Facebook SDK를 통해 최근의 Facebook 알림이있는 경우 액세스 할 수있는 PHP를 통해 설치 프로그램을 만들려고합니다. 최근 친구 요청, 메시지 및 일반 알림을 확인하고 싶습니다.새 Facebook 사용자 알림 확인

저는 개발자가되어 Facebook SDK를 다운로드하고 초기화했습니다. 여기에서 그래프 API에 액세스하여 사용자에 대한 정보를 얻을 수 있습니다. 이것으로부터 나는 사용자 정보에 관해 자주 점검 할 수 있습니다. 광범위한 연구를 수행했지만 발견 할 수없는 API 그래프를 통해 최근 알림이 있는지 확인합니다.

데이터가 변경되면 콜백 URL이 트리거되는 실시간 업데이트에 대해서도 읽었습니다. Facebook 알림이 될 수 있습니다. 이것은 더 효율적이지만이 작업에 문제가 있습니다.

이러한 개념을 이해하고 연구했지만 AIP 그래프 및 실시간 업데이트를 사용하여 최신 알림을 확인하고 다시보고하는 방법을 찾을 수 없습니다.

Facebook 개발자가 도와 줄 수 있습니까?

답변

1

좋은 연구 개발로 충분히 파고 들자 페이 스북 API 그래프를 통해 최근 페이스 북 알림을 확인하는 다양한 방법을 발견했습니다.

초기 질문에는 세션 쿠키와 같은 항목이 필요없이 간단한 HTTP 요청으로 수표를 처리 할 수 ​​있다는 점을 염두에 두어야했습니다. 이것은 내가 정보를 얻기 위해 작은 Arduino 서버에 의해 액세스 된 원격 PHP 스크립트에서 CURL 요청을 사용할 수있게했다. Arduino 서버는 새로운 알림이있는 경우 LED를 켤 수 있습니다.

나는 페이스 북 개발자가되는 노티 파이 (Notifier)라는 앱을 만들었고,이를 통해 사용자 나 나를위한 액세스 토큰을 만들 수 있었다. 이 문자열은 긴 문자열이며 60 일 동안 유효하며 내 Facebook 계정 정보에 액세스 할 수있었습니다. 필자는 Facebook SDK를 구현할 때 내 알림과 관련된 정보에 액세스 할 수있는 권한이있는 작은 코드로 구현했습니다.

내 앱으로 php에서 Facebook SDK를 구현 한 후 나로 로그인 한 후 $facebook->getAccessToken();으로 전화하여 정보를 얻을 수 있습니다. 그런 다음 데이터베이스에 저장하거나 개발 목적으로 하드 코딩 할 수 있습니다. 처음에는 60 일 동안 지속되지만 수명 연장은 가능합니다. 또 다른 방법은 사용자 또는 저에게 웹 애플리케이션에 로그인 할 수있게하는 것입니다.

Facebook 개발자 그래프 탐색기에서 한 시간 동안 지속되는 디버그 액세스 토큰을 얻을 수 있습니다.

'read_mailbox, manage_notifications, read_requests'

를 액세스에게 정보를 페이스 북의 데이터베이스는 사용자가 있는가 여부를 확인하는 데 필요한 정보를 얻기 위해 요청 될 수있는 API 그래프에 토큰 세 가지 다른 HTTP 요청이 발생하면 다음과 같이 이 권한은 있었다 최근 알림.

친구 요청은 API 그래프에 다음과 같은 HTTP 요청을 통해 액세스 할 수 있습니다 : 위에서 언급 한 바와 같이

https://graph.facebook.com/me/friendrequests?limit=0&access_token=$accessToken 

$AccessToken는 권한이있는 유효한 액세스 토큰되고.

unread_count을 찾기 위해 처리 할 수있는 JSON 데이터 응답으로 응답합니다.

메시지 및 일반 알림은 동일합니다. 메시지의 unread_count

요청 : 일반 알림 unseen_count

https://graph.facebook.com/me/inbox?limit=0&access_token=$accessToken 

요청 : 요청에서

https://graph.facebook.com/me/notifications?limit=0&access_token=$accessToken 

'제한 = 0'당신이 실제로 알림을 요청하지 않으 의미 데이터 또는 객체. 뭐가 진실이지. 모든 JSON 응답은 'unseen_count'또는 'unread_count'를 포함하는 'summary'객체로 응답합니다. 이것이 우리가 원하는 데이터입니다. 다음

메시지의 HTTP 요청으로부터 JSON 응답의 예는 다음 PHP json_decode

{ 
    "data": [ 

    ], 
    "summary": { 
     "unseen_count": 0, 
     "unread_count": 16, 
     "updated_time": "2014-04-08T18:30:48+0000" 
    } 
} 

는 JSON 응답을 처리하는 데 사용되는 원료 'UNREAD_COUNT'를 적립 할 수있다.

대부분의 사용자는 획득 한 메시지의 기존 읽지 않은 값이 있습니다. 즉, 사용자에게 최근 알림이 있는지 테스트하는 것을 의미합니다. 변경 사항을 테스트해야합니다. 이것은 값을 읽은 다음 나중에 동일한 값을 읽은 다음 비교함으로써 수행 할 수 있습니다. 두 번째 읽기가 증가하면 사용자는 새로운 메시지 알림을받습니다!