cshenfu
2023-03-10 3e788004c97034f6d7d52ffdbffacf60e94c48f7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import threading
from time import sleep
import eventlet
import socketio
 
 
def create_serve():
    sio = socketio.Server()
    app = socketio.WSGIApp(sio, static_files={
        '/': {'content_type': 'text/html', 'filename': 'index.html'}
    })
 
    @sio.event
    def connect(sid, environ):
        print('connect ', sid)
        sio.emit('serve', {'response': 'connert success'})
        # delay_cmd = Delay_cmd(sio)
        # t3 = threading.Thread(target=delay_cmd.send(delay_cmd))
        # t3.setDaemon(True)
        # t3.start()
 
    @sio.on('msg')
    def on_message(sid, data):
        print('serve received a message! on_message',data)
        # sio.emit('command_msg', {'command': 'stop', "params":"nothing"})
 
    @sio.on('client')
    def another_event(sid, data):
        print('serve received a message!', data)
 
    # @sio.event
    # def my_event(sid, data):
    #     print('message ', data)
    #     sio.emit('serve', {'response': 'connert success'})
 
    @sio.event
    def disconnect(sid):
        print('disconnect ', sid)
 
    if __name__ == '__main__':
        eventlet.wsgi.server(eventlet.listen(('', 5000)), app)
 
 
class Delay_cmd():
    def __init__(self, sio,):
        self.sio = sio
    
    def send(self):
        while True:
            sleep(10)
            self.sio.emit('command_msg', {'command': 'stop', "params":"nothing"})
            sleep(10)
            self.sio.emit('command_msg', {'command': 'start', "params":"nothing"})
 
create_serve()