Exemple #1
0
    def get_call(self, account, call_uuid):
        '''
            Get call
        '''
        message = None
        search_index = 'mars'
        try:
            result = self.kvalue.fulltext_search(search_index, 'uuid_register:{0}'.format(call_uuid))
            if result:

                data = result.get('docs')[0]

                struct = {
                    'uuid': data.get('uuid_register'),
                    'account': data.get('account_register'),
                    'title': data.get('title_register'),
                    'description': data.get('description_register'),
                    'content': data.get('content_register'),
                    'start': data.get('start_register'),
                    'end': data.get('start_register'),
                    'nodetype': data.get('nodetype_register'),
                    'subtype': data.get('subtype_register'),
                    'url': data.get('url_register'),
                    'keywords': data.get('keywords_set'),
                    'checked': data.get('checked_flag'),
                    'created': data.get('created_register'),
                }

                stochastic = stochastics.Stochastic(struct)
                stochastic.validate()
                message = clean_structure(stochastic)
        except Exception, e:
            logging.exception(e)
            raise e
Exemple #2
0
 def modify_asterisk(self, account, asterisk_uuid, struct):
     '''
         Modify asterisk
     '''
     try:
         logging.info(struct)
         asterisk = asterisks.ModifyAsterisk(struct)
         asterisk.validate()
         asterisk = clean_structure(asterisk)
     except Exception, e:
         logging.error(e)
         raise e
Exemple #3
0
    def new_call(self, struct):
        '''
            New call
        '''

        bucket_name = 'venus'

        try:
            event = stochastics.Stochastic(struct)
            event.validate()
            event = clean_structure(event)
        except Exception, e:
            raise e
Exemple #4
0
        raise gen.Return(message)

    @gen.coroutine
    def new_coturn_account(self, struct):
        '''
            New coturn account task
        '''
        try:
            task = _tasks.Task(struct)
            task.validate()
        except Exception, e:
            logging.exception(e)
            raise e

        task = clean_structure(task)

        result = yield self.db.tasks.insert(task)

        raise gen.Return(task.get('uuid'))

    @gen.coroutine
    def new_address(self, struct):
        '''
            New address
        '''
        try:
            address = _addresses.Address(struct)
            address.validate()
        except Exception, e:
            logging.exception(e)
Exemple #5
0
        raise gen.Return(results)


    @gen.coroutine
    def new_asterisk(self, struct):
        '''
            Create a new asterisk entry
        '''
        try:
            asterisk = asterisks.Asterisk(struct)
            asterisk.validate()
        except Exception, e:
            logging.exception(e)
            raise e

        asterisk = clean_structure(asterisk)

        result = yield self.db.asterisks.insert(asterisk)

        raise gen.Return(asterisk.get('uuid'))

    @gen.coroutine
    def set_assigned_flag(self, account, asterisk_uuid):
        '''
            Set the asterisk assigned flag
        '''
        logging.info('set_assigned_flag account: %s, asterisk: %s' % (account, asterisk_uuid))

        result = yield self.db.asterisks.update(
                                {'uuid':asterisk_uuid, 
                                 'accountcode':account}, 
Exemple #6
0
    def get(self, asterisk_uuid=None, start=None, end=None, page_num=0, lapse='hours'):
        '''
            Get asterisks handler
        '''
        status = 'all'
        # -- logging info

        #logging.info(self.request.arguments)

        #account = (self.request.arguments.get('account', [None])[0] if not account else account)

        # query string checked from string to boolean
        #checked = str2bool(str(self.request.arguments.get('checked', [False])[0]))

        if asterisk_uuid:
            asterisk_uuid = asterisk_uuid.rstrip('/')

            if self.current_user:
                user = self.current_user
                asterisk = yield self.get_asterisk(user, asterisk_uuid)
            else:
                asterisk = yield self.get_asterisk(None, asterisk_uuid)

            if not asterisk:
                self.set_status(400)
                system_error = errors.Error('missing')
                error = system_error.missing('asterisk', asterisk_uuid)
                self.finish(error)
                return

            self.finish(clean_structure(asterisk))
            return

        if self.current_user:
            user = self.current_user
            orgs = yield self.get_orgs_list(user)
            
            account_list = (orgs['orgs'] if orgs else False)
            if not account_list:
                result = yield self.get_sterisk_list(
                                        account=user, 
                                        lapse=lapse,
                                        status=status,
                                        start=start,
                                        end=end,
                                        page_num=page_num)
            else:
                account_list.append(user)
                result = yield self.get_asterisk_list(
                                        account=account_list,
                                        lapse=lapse,
                                        status=status,
                                        start=start,
                                        end=end,
                                        page_num=page_num)
        else:
            result = yield self.get_asterisk_list(
                                    account=None,
                                    lapse=lapse,
                                    status=status,
                                    start=start,
                                    end=end,
                                    page_num=page_num)

        result = json.dumps(result)

        self.finish(result)