GAE отписаться от присутствия пользователя - PullRequest
1 голос
/ 26 октября 2011

Есть ли способ отписаться от присутствия пользователя?Я больше не хочу получать обновления / _ah / xmpp /sence / ... для конкретного пользователя.Я не могу найти простой вызов API для этого.

После поиска по протоколу XMPP я нашел это , которое, кажется, указывает на то, что выполнение send_presence с типом присутствия 'unsubscribe' должно работать.К сожалению, копаясь в API xmpp GAE, кажется, что он определяет

_VALID_PRESENCE_TYPES = frozenset([PRESENCE_TYPE_AVAILABLE,
                               PRESENCE_TYPE_UNAVAILABLE,
                               PRESENCE_TYPE_PROBE])

, что означает, что я даже не могу сделать send_presence(user_to_remove, status="", presence_type="unsubscribe") (PRESENCE_TYPE_AVAILABLE и другие просто строки, такие как «доступные» согласно спецификации xmpp)

Кто-нибудь сталкивался с этой проблемой или знает, как этого добиться?

Ответы [ 2 ]

3 голосов
/ 26 октября 2011

Кажется, что ты не можешь. Документы (и строка документации) подтверждают, чтоsence_type принимает подмножество типов, определенных в RFC 3921.

Вы можете отправить это как запрос функции на систему отслеживания проблем .

2 голосов
/ 26 октября 2011

В качестве эксперимента вы могли бы повторно реализовать свой собственный «send_presence», который выполняет ту же функцию, что и существующая функция, без проверки на допустимые типы присутствия.Официально не санкционировано, но стоит попробовать.

Следует отметить, что это не будет блокировать клиентов от повторной подписки от вашего бота или от клиентов с плохим поведением, игнорирующих его.

И, как упоминал Дрю, пожалуйста, отправьте сообщение о проблеме на трекер.

...