Slixfeed/slixfeed/xmpp/roster.py
Schimon Jehudah 7b98d32d7f Fix keywords extracted from sqlite.
Improve modiles fetch and crawl.
Add form featured feeds.
Add form roster manager.
Add form subscibers manager.
WIP
2024-02-17 23:21:44 +00:00

55 lines
976 B
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
TODO
1) remove_subscription (clean_roster)
Remove presence from contacts that don't share presence.
"""
class XmppRoster:
async def get(self):
await self.get_roster()
contacts = self.client_roster
return contacts
async def add(self, jid):
"""
Add JID to roster.
Add JID to roster if it is not already in roster.
Parameters
----------
jid : str
Jabber ID.
Returns
-------
None.
"""
await self.get_roster()
if jid not in self.client_roster.keys():
self.update_roster(jid, subscription='both')
def remove(self, jid):
"""
Remove JID from roster.
Parameters
----------
jid : str
Jabber ID.
Returns
-------
None.
"""
self.update_roster(jid, subscription='remove')