当前位置: 首页>>代码示例>>Python>>正文


Python flask_socketio.emit方法代码示例

本文整理汇总了Python中flask_socketio.emit方法的典型用法代码示例。如果您正苦于以下问题:Python flask_socketio.emit方法的具体用法?Python flask_socketio.emit怎么用?Python flask_socketio.emit使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在flask_socketio的用法示例。


在下文中一共展示了flask_socketio.emit方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: process_video

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def process_video(filepath):
    """
        Processes Video Submitted by User
    """
    global video_fps_rate

    width, height, fps_rate = convert_to_frames(filepath)  # convert the video to images
    ordered_files = sorted(os.listdir(frames_dir), key=lambda x: (int(re.sub(r'\D','',x)),x))

    # Convert all frames to base64 images and begin calling
    for index, frame in enumerate(ordered_files):
        with open(os.path.join(frames_dir, frame), 'rb') as image_file:
            encoded_string = base64.b64encode(image_file.read())
            base64_frames[index] = encoded_string.decode('utf-8')

    cleanup_video_frames()

    video_fps_rate[0] = fps_rate

    # Frames are ready - start sending them to for pooling
    # Let's emit a message indicating that we're about to start sending files
    socketio.emit('canvas_width_height', {'width': width, 'height': height}) 
开发者ID:Notabela,项目名称:Lie_to_me,代码行数:24,代码来源:process.py

示例2: background_thread

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def background_thread(uid_with_size):
    uid, size = uid_with_size.split(';')
    r = redis.StrictRedis(oc.cfg['default']['redis'], 6379, db=0)
    r.set(uid+'size', size)
    pubsub = r.pubsub()
    pubsub.subscribe('l'+uid)
    count = 0
    for message in pubsub.listen():
        # Filter out events like Redis connections.
        if message['type'] != 'message':
            continue
        count += 1
        socketio.sleep(0.01)
        try:
            data = json.loads(message['data'].decode('utf8'))
            msg = uid + data['name'] + ': ' + data['levelname'] + ': ' + data['msg']
            socketio.emit('log_response', {'data': msg, 'count': count}, namespace='/omega_log')
        except:
            pass 
开发者ID:OmegaTrading,项目名称:OmegaUI,代码行数:21,代码来源:socket_logging.py

示例3: on_connect

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def on_connect(self):
        print('A client connected')
        emit('connect', {'last_job_id': get_last_modification_job_id(self.db_session)}) 
开发者ID:HTTP-APIs,项目名称:hydrus,代码行数:5,代码来源:sync_namespace.py

示例4: on_reconnect

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def on_reconnect(self):
        print('A client reconnected.')
        emit('connect', {'last_job_id': get_last_modification_job_id(self.db_session)}) 
开发者ID:HTTP-APIs,项目名称:hydrus,代码行数:5,代码来源:sync_namespace.py

示例5: on_get_modification_table_diff

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def on_get_modification_table_diff(self, data):
        """Get modification table diff and emit it to the client.
        :param data: Dict with 'agent_job_id' key.
        """
        if 'agent_job_id' in data:
            agent_job_id = data['agent_job_id']
            modification_table_diff = get_modification_table_diff(self.db_session,
                                                                  agent_job_id)
        else:
            modification_table_diff = get_modification_table_diff(self.db_session)
        emit('modification_table_diff', modification_table_diff) 
开发者ID:HTTP-APIs,项目名称:hydrus,代码行数:13,代码来源:sync_namespace.py

示例6: randomNumberGenerator

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def randomNumberGenerator():
    """
    Generate a random number every 1 second and emit to a socketio instance (broadcast)
    Ideally to be run in a separate thread?
    """
    #infinite loop of magical random numbers
    print("Making random numbers")
    while not thread_stop_event.isSet():
        number = round(random()*10, 3)
        print(number)
        socketio.emit('newnumber', {'number': number}, namespace='/test')
        socketio.sleep(5) 
开发者ID:shanealynn,项目名称:async_flask,代码行数:14,代码来源:application.py

示例7: check_update

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def check_update(source_url = None, current_release = None, prerelease=False, emit = True):
    """
        Check if a RTKBase update exists
        :param source_url: the url where we will try to find an update. It uses the github api.
        :param current_release: The current RTKBase release
        :param prerelease: True/False Get prerelease or not
        :param emit: send the result to the web front end with socketio
        :return The new release version inside a dict (release version and url for this release)
    """
    new_release = {}
    source_url = source_url if source_url is not None else "https://api.github.com/repos/stefal/rtkbase/releases"
    current_release = current_release if current_release is not None else rtkbaseconfig.get("general", "version").strip("v")
    current_release = current_release.replace("-beta", "").replace("-alpha", "").replace("-rc", "")
    
    try:    
        response = requests.get(source_url)
        response = response.json()
        for release in response:
            if release.get("prerelease") & prerelease or release.get("prerelease") == False:
                latest_release = release.get("tag_name").strip("v").replace("-beta", "").replace("-alpha", "").replace("-rc", "")
                if latest_release > current_release and latest_release <= rtkbaseconfig.get("general", "checkpoint_version"):
                    new_release = {"new_release" : release.get("tag_name"), "url" : release.get("assets")[0].get("browser_download_url"), "comment" : release.get("body")}
                    break
             
    except Exception as e:
        print("Check update error: ", e)
        
    if emit:
        socketio.emit("new release", json.dumps(new_release), namespace="/test")
    print
    return new_release 
开发者ID:Stefal,项目名称:rtkbase,代码行数:33,代码来源:server.py

示例8: update_rtkbase

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def update_rtkbase():
    """
        Check if a RTKBase exists, download it and update rtkbase
    """
    #Check if an update is available
    update_url = check_update(emit=False).get("url")
    if update_url is None:
        return

    import tarfile
    #Download update
    update_archive = "/var/tmp/rtkbase_update.tar.gz"
    try:
        response = requests.get(update_url)
        with open(update_archive, "wb") as f:
            f.write(response.content)
    except Exception as e:
        print("Error: Can't download update - ", e)

    #Get the "root" folder in the archive
    tar = tarfile.open(update_archive)
    for tarinfo in tar:
        if tarinfo.isdir():
            primary_folder = tarinfo.name
            break
    
    #Extract archive
    tar.extractall("/var/tmp")

    #launch update script
    rtk.shutdownBase()
    rtkbase_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "../"))
    source_path = os.path.join("/var/tmp/", primary_folder)
    script_path = os.path.join(source_path, "rtkbase_update.sh")
    current_release = rtkbaseconfig.get("general", "version").strip("v")
    standard_user = rtkbaseconfig.get("general", "user")
    os.execl(script_path, "unused arg0", source_path, rtkbase_path, app.config["DOWNLOAD_FOLDER"].split("/")[-1], current_release, standard_user) 
开发者ID:Stefal,项目名称:rtkbase,代码行数:39,代码来源:server.py

示例9: getAvailableLogs

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def getAvailableLogs():
    print("DEBUG updating logs")
    rtk.logm.updateAvailableLogs()
    print("Updated logs list is " + str(rtk.logm.available_logs))
    rtk.socketio.emit("available logs", rtk.logm.available_logs, namespace="/test")

#### str2str launch/shutdown handling #### 
开发者ID:Stefal,项目名称:rtkbase,代码行数:9,代码来源:server.py

示例10: getAvailableSpace

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def getAvailableSpace():
    rtk.socketio.emit("available space", reach_tools.getFreeSpace(path_to_gnss_log), namespace="/test")

#### Delete log button handler #### 
开发者ID:Stefal,项目名称:rtkbase,代码行数:6,代码来源:server.py

示例11: readRINEXVersion

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def readRINEXVersion():
    rinex_version = rtk.logm.getRINEXVersion()
    rtk.socketio.emit("current RINEX version", {"version": rinex_version}, namespace="/test") 
开发者ID:Stefal,项目名称:rtkbase,代码行数:5,代码来源:server.py

示例12: update_settings

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def update_settings(json):
    """
        Get the form data from the web front end, and save theses values to settings.conf
        Then restart the services which have a dependency with these parameters.
        param json: A json variable containing the source fom and the new paramaters
    """
    print("received settings form", json)
    source_section = json.pop().get("source_form")
    print("section: ", source_section)
    if source_section == "change_password":
        if json[0].get("value") == json[1].get("value"):
            rtkbaseconfig.update_setting("general", "new_web_password", json[0].get("value"))
            update_password(rtkbaseconfig)
            socketio.emit("password updated", namespace="/test")

        else:
            print("ERREUR, MAUVAIS PASS")
    else:
        for form_input in json:
            print("name: ", form_input.get("name"))
            print("value: ", form_input.get("value"))
            rtkbaseconfig.update_setting(source_section, form_input.get("name"), form_input.get("value"), write_file=False)
        rtkbaseconfig.write_file()

        #Restart service if needed
        if source_section == "main":
            restartServices(("main", "ntrip", "rtcm_svr", "file"))
        elif source_section == "ntrip":
            restartServices(("ntrip",))
        elif source_section == "rtcm_svr":
            restartServices(("rtcm_svr",))
        elif source_section == "local_storage":
            restartServices(("file",)) 
开发者ID:Stefal,项目名称:rtkbase,代码行数:35,代码来源:server.py

示例13: process_audio

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def process_audio(filepath):
    """ Process Audio component of Video
    """
    json_path = os.path.join(basedir, 'static', 'data', 'tmp_json')

    mean_energy = []
    max_pitch_amp = []
    vowel_duration = []
    pitch_contour = []

    output = convert_audio(filepath)

    for files in output:
        frames, framelength = audio.split(files)
        filteredframes = audio.applyhamming(frames)
        energy = audio.energy(filteredframes)
        fourier = audio.fourier(filteredframes)
        frames = audio.inverse_fourier(fourier)
        pitchamp, pitchperiod = audio.sampling(frames)

        # Implemented Features, read audio.py for return values
        data1 = audio.meanenergy(energy)
        data2 = audio.maxpitchamp(pitchamp)
        data3 = audio.vowelduration(pitchamp, data2)
        data4 = audio.fundamentalf(pitchperiod, framelength)

        mean_energy.append(data1)
        max_pitch_amp.append(data2)
        vowel_duration.append(data3)
        pitch_contour.append(data4)

    with shelve.open(os.path.join(json_path, 'audio_data.shlf')) as shelf:
        shelf['mean_energy'] = mean_energy
        shelf['max_pitch_amp'] = max_pitch_amp
        shelf['vowel_duration'] = vowel_duration
        shelf['pitch_contour'] = pitch_contour

    socketio.emit('data_complete', 'Audio_Complete')

    cleanup_audio() 
开发者ID:Notabela,项目名称:Lie_to_me,代码行数:42,代码来源:process.py

示例14: test_message

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def test_message(message):
    flask.session['receive_count'] = flask.session.get('receive_count', 0) + 1
    pool.spawn(background_thread, message['data'])
    fsio.emit('log_response', {'data': message['data'], 'count': flask.session['receive_count']}) 
开发者ID:OmegaTrading,项目名称:OmegaUI,代码行数:6,代码来源:socket_logging.py

示例15: connect

# 需要导入模块: import flask_socketio [as 别名]
# 或者: from flask_socketio import emit [as 别名]
def connect():
    print('Client connected', flask.request.sid)
    fsio.emit('log_response', {'data': 'Connected', 'count': 0}) 
开发者ID:OmegaTrading,项目名称:OmegaUI,代码行数:5,代码来源:socket_logging.py


注:本文中的flask_socketio.emit方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。