Проверка статуса Event-RSVP и отображение отключено/включено RSVP-кнопок

StackOverflow https://stackoverflow.com/questions/7312964

Вопрос

Я все еще немного не уверен, как бы я нашел это в документации, но я хотел бы проверить, зарегистрирован ли пользователь RSVP в FB-EVENT или нет, и показать «Я посещаю» Кнопка в зависимости от этого ... У меня уже подключился кнопка входа в систему и соответствующие разрешения (user_events и rsvp_event), просто не уверен, как сделать это, используя JS SDK.

Это было полезно?

Решение

Вы можете запросить event_member Таблица FQL, что -то вроде:

FB.api(
    {
        method: 'fql.query',
        query: 'select rsvp_status from event_member where eid = "EVENT_ID" and uid=me()'
    }, function(response) {
        alert(response[0].rsvp_status);
    }
);

Вернет (предупреждение) что -то вроде: declined

Другие советы

Вы можете использовать API Graph для этого. Есть два сценария, которые могут представлять интерес: (1) Для события вы хотите перечислить, если пользователь посещает, и (2) для пользователя вы хотите перечислить событие, которое они посещают. Вам нужен user_events разрешение для обоих сценариев.

Для (1): http get /event_id /посещение. Это вернет массив объектов с {id, name, rsvp_status} поля. Ищите идентификатор пользователя, который вас интересует, и, если у них RSVP'd, то rsvp_status Поле скажет вам, если они посещают.

Для (2): http get /user_id /события. Это вернет все события для пользователя с несколькими полями, но также и {id, name, rsvp_status} Поля, как указано выше. На этот раз ищите идентификатор события, который вам интересует, а затем rsvp_status Поле скажет вам, посещает ли текущий пользователь, а не посещать, может быть, посещать или у него нет RSVP'd (т.е. rsvp_status является unsure).

На самом деле, есть более простой способ сделать все это. Проблема с запросом FQL состоит в том, что есть задержка в 15-30 секунд после того, как вы отправите RSVP для появления статуса. Но это работает в графическом API без страниц. Попробуйте запрос получить запрос в этой форме:

/[Идентификатор события]/Приглашен?

Он вернет структуру данных с RSVP_STATUS, если пользователь вообще имеет RSVPED, в том числе для публичных событий, где этот пользователь технически не был «приглашен». Если структура данных пустая, то они вообще не RSVED.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top