2

Я понимаю, что у одного и того же пользователя будут разные идентификаторы страниц (PSID) на разных страницах. Но является ли гарантированным, что у двух пользователей не будет одинакового PSID на разных страницах?Являются ли идентификаторы страниц в Facebook Messenger уникальными?

Например, возможно ли, что пользователь A имеет PSID 1234 во время обмена сообщениями на странице X, а пользователь B имеет тот же PSID 1234, когда страница обмена сообщениями Y?

Технически пользователь A и пользователь B будут дифференцируемы, даже если они имеют один и тот же PSID, поскольку они передают разные страницы. Но могу ли я предположить, что на всех страницах не будет перекрываться PSID, так что я могу использовать PSID как глобально уникальный идентификатор, независимо от конкретной страницы?

+0

Они глобально уникальный – WizKid

ответ

1

Facebook не гарантирует страницу в области видимости идентификаторов (PSIDs) должны быть уникальными на разных страницах - это PSID может представлять пользователь А на странице X, но пользователь В на странице Y.

При представлении пользователь, эти идентификаторы представляют собой идентификаторы с привязкой к страницам (PSID). Это означает, что идентификаторы пользователей уникальны для данной страницы.

https://developers.facebook.com/docs/messenger-platform/webhook-reference#format

+0

Да, я прочитал, что, но это не обязательно означает, что они не являются уникальными на разных страницах. @WizKid прокомментировал, что на самом деле они глобально уникальны. – David

+0

Facebook мог бы сделать PSID глобально уникальным (и, возможно, это будет хорошо), однако в документации вам сообщается, что PSID могут быть не уникальными на глобальном уровне (что, если Facebook изменит текущую реализацию в будущем?). Совсем не сложно объединить идентификатор страницы и PSID, чтобы сформировать ключ для вашей базы данных разговоров –