diff options
Diffstat (limited to 'sugar/p2p/Buddy.py')
-rw-r--r-- | sugar/p2p/Buddy.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/sugar/p2p/Buddy.py b/sugar/p2p/Buddy.py new file mode 100644 index 0000000..19d7c0e --- /dev/null +++ b/sugar/p2p/Buddy.py @@ -0,0 +1,34 @@ +import pwd +import os + +from Service import * + +PRESENCE_SERVICE_TYPE = "_olpc_presence._tcp" +PRESENCE_SERVICE_PORT = 6000 + +class Buddy: + def __init__(self, service, nick_name): + self._service = service + self._nick_name = nick_name + + def get_service_name(self): + return self._service.get_name() + + def get_nick_name(self): + return self._nick_name + +class Owner(Buddy): + def __init__(self, group): + self._group = group + + nick = pwd.getpwuid(os.getuid())[0] + if not nick or not len(nick): + nick = "n00b" + + service = Service(nick, PRESENCE_SERVICE_TYPE, + '', PRESENCE_SERVICE_PORT) + + Buddy.__init__(self, service, nick) + + def register(self): + self._service.register(self._group) |