def startNotificationService(): headers = get_auth_headers() url = endpoint('get_updates') keys = favorites_ds.data() # get system channel from api.streams.posts import Manager stream_system = None for s in Manager.streams: if s.title in ['system', 'System']: stream_system = s if stream_system: systemurl = endpoint('get_channel', chan_key=stream_system.key) else: systemurl = '' StartNotificationsService(headers, url, keys, systemurl)
def get_channel(chan_key, on_page, on_error=None, **kwargs): get_page( url=endpoint('get_channel', chan_key=chan_key), page_args=get_page_args(**kwargs), response_key='updates', on_page=on_page, on_error=on_error)
def register(pub_key, on_uid, on_error=None): errback = on_error or make_errback() try: def handle_response(response): if response.code == 200: callback = partial( _handle_register, on_uid=on_uid, on_error=errback) response.deliverBody(JsonReceiver.create(callback, errback)) else: print('error %d %s -- register' % (response.code, response.phrase)) errback('returned %s' % response.code, code=response.code) agent = Agent(reactor) d = agent.request( 'POST', endpoint('register'), bodyProducer=JsonProducer({'pub_key': pub_key})) d.addCallbacks(handle_response, errback) except Exception as ex: print('error %s -- register' % ex) if on_error: errback('error %s -- register' % ex) else: errback('error %s' % ex, 'register')
def login(user_id, on_token, on_error=None): errback = on_error or make_errback() try: def handle_response(response): if response.code == 200: callback = partial( _handle_login, on_token=on_token, on_error=errback) response.deliverBody(JsonReceiver.create(callback, errback)) else: print('error %d %s -- login' % (response.code, response.phrase)) errback('returned %s' % response.code, code=response.code) agent = Agent(reactor) d = agent.request( 'POST', endpoint('login'), bodyProducer=JsonProducer({'key': user_id})) d.addCallbacks(handle_response, errback) timeoutCall = reactor.callLater(10, d.cancel) def completed(passthrough): print 'Login connection timeout' if timeoutCall.active(): timeoutCall.cancel() return passthrough d.addBoth(completed) except Exception as ex: print('error %s -- login' % ex) if on_error: errback('error %s -- login' % ex, 'login') else: errback('error %s' % ex, 'login')
def get_comments(post_key, on_page, on_error=None, **kwargs): get_page( url=endpoint('get_comments', post_key=post_key), page_args=get_page_args(**kwargs), response_key='comments', on_page=on_page, on_error=on_error)
def api_endpoint(self, *args, **kwargs): if 'headers' not in kwargs: kwargs['headers'] = self.request.headers response = api.endpoint(*args, **kwargs) if 'errors' in response: self.abort(503, response['errors']) return response
def get(keys, on_items, on_error=None, **kwargs): get_helper(url=add_params(endpoint('get_items'), key=keys, allow_multiple=True), on_response=partial(_handle_items, on_items=on_items, on_error=on_error), on_error=on_error)
def post(content, role, role_text, theme, background, channels, on_created=None, on_error=None): args = { 'content': content, 'role': role, 'role_text': role_text, 'theme': theme, 'background': background, 'channels': channels or [] } post_helper( url=endpoint('post_post'), data=args, on_created=on_created, on_error=on_error)
def post(content, role, role_text, theme, background, channels, on_created=None, on_error=None): args = { 'content': content, 'role': role, 'role_text': role_text, 'theme': theme, 'background': background, 'channels': channels or [] } post_helper(url=endpoint('post_post'), data=args, on_created=on_created, on_error=on_error)
def get(post_key, on_post, on_error=None): get_helper(endpoint('get_post', post_key=post_key), on_response=partial(_handle_post, on_post=on_post, on_error=on_error), on_error=on_error)
def post(post_key, on_created=None, on_error=None): post_helper(endpoint('post_flag', post_key=post_key), on_created=on_created, on_error=on_error)
def post(content, on_created=None, on_error=None): post_helper( endpoint('post_feedback'), data=content, on_created=on_created, on_error=on_error)
def post(post_key, content, role, role_text, on_created=None, on_error=None): post_helper( endpoint('post_comment', post_key=post_key), {'content': content, 'role': role, 'role_text': role_text}, on_created, on_error)
def post(content, on_created=None, on_error=None): post_helper(endpoint('post_feedback'), data=content, on_created=on_created, on_error=on_error)
def get_channels(on_channels, on_error=None): get_helper( url=endpoint('get_channels'), on_response=partial(_handle_channels, on_channels=on_channels, on_error=on_error), on_error=on_error)
def post(post_key, on_created=None, on_error=None): post_helper( endpoint('post_flag', post_key=post_key), on_created=on_created, on_error=on_error)
def post_up(item_key, on_voted=None, on_error=None): post_helper( endpoint('post_voteup', item_key=item_key), None, on_voted, on_error)
def delete_down(item_key, on_deleted=None, on_error=None): delete_helper( endpoint('delete_votedown', item_key=item_key), on_deleted, on_error)
def delete_down(item_key, on_deleted=None, on_error=None): delete_helper(endpoint('delete_votedown', item_key=item_key), on_deleted, on_error)
def get(post_key, on_post, on_error=None): get_helper( endpoint('get_post', post_key=post_key), on_response=partial(_handle_post, on_post=on_post, on_error=on_error), on_error=on_error)
def get(keys, on_items, on_error=None, **kwargs): get_helper( url=add_params(endpoint('get_items'), key=keys, allow_multiple=True), on_response=partial(_handle_items, on_items=on_items, on_error=on_error), on_error=on_error)
def post_up(item_key, on_voted=None, on_error=None): post_helper(endpoint('post_voteup', item_key=item_key), None, on_voted, on_error)