Ejemplo n.º 1
0
 def main(self):
     try:
         SERVER_PORT = int(sys.argv[1])
     except:
         print "[Usage: Server.py Server_port]\n"
     rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     rtspSocket.bind(('172.31.16.7', SERVER_PORT))
     rtspSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
     print "RTSP Listing incoming request..."
     rtspSocket.listen(20)
     rtpSocket = socket.socket(socket.AF_INET,
                               socket.SOCK_STREAM)  #change here
     rtpSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
     rtpSocket.bind(('172.31.16.7', 17023))
     rtpSocket.listen(20)
     # Receive client info (address,port) through RTSP/TCP session
     while True:
         clientInfo = {}
         clientInfo['rtspSocket'] = rtspSocket.accept(
         )  # this accept {SockID,tuple object},tuple object = {clinet_addr,intNum}!!!
         clientInfo['rtpSocket'] = rtpSocket.accept()
         print('We have accepted a connection from 1 ',
               clientInfo['rtspSocket'][1])
         print('  Socket name:', clientInfo['rtspSocket'][0].getsockname())
         print('  Socket peer:', clientInfo['rtspSocket'][0].getpeername())
         print('We have accepted a connection from',
               clientInfo['rtpSocket'][1])
         print('  Socket name:', clientInfo['rtpSocket'][0].getsockname())
         print('  Socket peer:', clientInfo['rtpSocket'][0].getpeername())
         ServerWorker(clientInfo).run()
Ejemplo n.º 2
0
    def main(self):
        args = None

        try:
            parser = argparse.ArgumentParser(
                description="Launches RTP Server.")
            parser.add_argument('server_port',
                                help="The server port number",
                                type=int)
            parser.add_argument('--packet_loss',
                                '-l',
                                help="The percentage of RTP packets lost",
                                type=int,
                                choices=range(0, 100),
                                default=0)
            parser.add_argument('--jitter',
                                '-j',
                                help="The amount of jitter in milliseconds",
                                default=0)

            args = parser.parse_args()
        except:
            print("Unable to parse command line arguments.\n")
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', args.server_port))
        rtspSocket.listen(5)

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            ServerWorker(clientInfo, args.packet_loss, args.jitter).run()
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print("[Usage: Server.py Server_port]\n")
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('127.0.0.1', SERVER_PORT))
        rtspSocket.listen(5)

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            connSocket = clientInfo['rtspSocket'][0]
            while True:
                initMess = connSocket.recv(1024)
                if initMess:
                    if initMess.decode() == "Connection Request":
                        connSocket.send(
                            cert.public_bytes(
                                encoding=serialization.Encoding.PEM))
                        while True:
                            enc_key = connSocket.recv(1024)
                            if enc_key:
                                break
                        break
            connSocket.send(b'Connection Established')
            aes_key = sk.decrypt(
                enc_key,
                padding.OAEP(mgf=padding.MGF1(algorithm=hashes.SHA1()),
                             algorithm=hashes.SHA1(),
                             label=None))
            ServerWorker(clientInfo, aes_key).run()
Ejemplo n.º 4
0
    def main(self):
        log = Log()
        logging = log.GetLogging()
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            logging.error('Usage: Server.py Server_port')
        # 生成SSL上下文
        # context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
        # 加载服务器所用证书和私钥
        # context.load_cert_chain('/etc/stunnel/rtsp.xxxxx.pem', '/etc/stunnel/rtsp.xxxxx.key')
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        logging.info("RTSPserver bind prot: " + str(SERVER_PORT))
        logging.info("RTSP Listing incoming request...")
        rtspSocket.listen(5)

        # Receive client info (address,port) through RTSP/TCP session
        # 将socket打包成SSL socket
        # with context.wrap_socket(rtspSocket, server_side=True) as ssock:
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept(
            )  # this accept {SockID,tuple object},tuple object = {clinet_addr,intNum}!!!
            ServerWorker(clientInfo).run()
Ejemplo n.º 5
0
    def main(self):
        SERVER_PORT = int(sys.argv[1])
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(5)

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            ServerWorker(clientInfo).run()
Ejemplo n.º 6
0
	def main(self):
		try:
			SERVER_PORT = 9707 # int(sys.argv[1])
		except:
			print("[Usage: Server.py Server_port]\n")
		while True:
			rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
			rtspSocket.bind(('', SERVER_PORT))
			rtspSocket.listen(5)        

			# Receive client info (address,port) through RTSP/TCP session
			clientInfo = {}
			clientInfo['rtspSocket'] = rtspSocket.accept()
			ServerWorker(clientInfo).run()		
Ejemplo n.º 7
0
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print("[Usage: Server.py Server_port]\n")

        try:
            key = 'aio_XiUB37wuN11MQFiaR2ltrBsqa09L'
            UPDATE_FLAG = sys.argv[2]
            if UPDATE_FLAG == '-u':
                print("Server is updating the library..")
                files_in_directory = os.listdir("./")
                filtered_files = ""
                for file in files_in_directory:
                    if file.endswith(".mjpeg"):
                        filtered_files += str(file) + '_'
                print(filtered_files)
                if requests.get(
                        'https://io.adafruit.com/api/v2/thanhdanh27600/feeds?x-aio-key='
                        + key).text.find('username') == -1:
                    print("Cannot connect to Adafruit")
                else:
                    url = 'https://io.adafruit.com/api/v2/thanhdanh27600/feeds/cn/data'
                    myobj = {'value': filtered_files}
                    auth_key = {'X-AIO-Key': key}
                    post_data = requests.post(url,
                                              json=myobj,
                                              headers=auth_key)
                    if (post_data.text.find('value') == -1):
                        print("Cannot update the value to Adafruit")
                    else:
                        print(post_data.text)
        except:
            print("Not update playlist!")

        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(
            (socket.gethostbyname(socket.gethostname()), SERVER_PORT))
        rtspSocket.listen(5)
        print(
            f"Server is listening ok {socket.gethostbyname(socket.gethostname())}:{SERVER_PORT}"
        )
        # Receive cpython Server.py 1027lient info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            clientInfo['serverPort'] = SERVER_PORT
            print("Accept new client: ", clientInfo)
            ServerWorker(clientInfo).run()
Ejemplo n.º 8
0
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print "[Uso: python Server.py Server_port]\n"
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(20)
        print "Esperando por conexões..."

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            ServerWorker(clientInfo).run()
Ejemplo n.º 9
0
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print("[Usage: Server.py Server_port]\n")
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(5)

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            print('[LOG] The connection is established successfully')
            ServerWorker(clientInfo).run()
Ejemplo n.º 10
0
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print "[Usage: Server.py Server_port]\n"
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        print dir(socket)
        rtspSocket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, 16384)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(5)

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            ServerWorker(clientInfo).run()
Ejemplo n.º 11
0
	def main(self):
		try:
			SERVER_PORT = int(sys.argv[1])
		except:
			print("[Usage: Server.py Server_port]\n")
		rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
		rtspSocket.bind(('', SERVER_PORT))
		print("RTSP Listing incoming request...")
		rtspSocket.listen(5)

		# Receive client info (address,port) through RTSP/TCP session
		while True:
			clientInfo = {}
			clientInfo['rtspSocket'] = rtspSocket.accept()   # this accept {SockID,tuple object},tuple object = {clinet_addr,intNum}!!!

			ServerWorker(clientInfo).run()
Ejemplo n.º 12
0
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print("[Usage: Server.py Server_port]\n")
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(5)
        print(
            f'Server is listening at {socket.gethostbyname(socket.gethostname())}:{SERVER_PORT}'
        )

        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            ServerWorker(clientInfo).run()
Ejemplo n.º 13
0
    def main(self):
        try:
            SERVER_PORT = int(sys.argv[1])
        except:
            print "[Usage: Server.py Server_port]\n"
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(5)
        signal.signal(signal.SIGINT, signal_handler)
        # Receive client info (address,port) through RTSP/TCP session
        while True:
            clientInfo = {}

            clientInfo['rtspSocket'] = rtspSocket.accept()

            ServerWorker(clientInfo).run()
 def main(self):
     try:
         SERVER_PORT = int(sys.argv[1])
     except:
         print("[Usage: Server.py Server_port]\n")
     rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
     rtspSocket.bind(('', SERVER_PORT))
     rtspSocket.listen(5)
     print("Listenning from client...")
     print("Server port: %s" % SERVER_PORT)
     print("IPv4 address: ")
     publicip.get()
     # Receive client info (address,port) through RTSP/TCP session
     while True:
         clientInfo = {}
         clientInfo['rtspSocket'] = rtspSocket.accept()
         ServerWorker(clientInfo).run()
Ejemplo n.º 15
0
    def __init__(self):
        # connect to main server as agent
        HOST = ""
        PORT = 7900
        self.conNum = 0

        self.mainSock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.mainSock.connect((HOST, PORT))

        print("Connected to MainServer.")

        # get RTSP port from client
        self.portNum = self.mainSock.recv(1024)
        self.portNum = pickle.loads(self.portNum)
        print("Agent Port Num set : ", self.portNum)

        #start main listener
        threading._start_new_thread(self.checkAvailable, ())

        # for RTSP communication
        SERVER_PORT = int(self.portNum[1])
        self.agentSeqNum = SERVER_PORT - 12000

        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(3)

        print("AgentReady")

        while True:
            clientInfo = {}
            clientInfo['rtspSocket'] = rtspSocket.accept()
            self.conNum += 1

            if self.conNum >= 3:    ## 1 is unavailable
                self.mainSock.send(pickle.dumps("1"))
            else:
                self.mainSock.send(pickle.dumps("2"))
                # send to mainserver i'm unavailable
            print("Connected by", clientInfo['rtspSocket'])
            print("Connection num", self.conNum)

            ServerWorker(clientInfo, self.mainSock, self.agentSeqNum).run()
Ejemplo n.º 16
0
    def main(self):
        try:
            SERVER_PORT = 8000
        except:
            print "[Usage: Server.py Server_port]\n"
        rtspSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        rtspSocket.bind(('', SERVER_PORT))
        rtspSocket.listen(5)

        while True:
            conn, addr = rtspSocket.accept()
            all_files_in_this_folder = [
                f for f in os.listdir('../foo/')
                if os.path.isdir(os.path.join('../foo/', f))
            ]
            print all_files_in_this_folder

            conn.send(pickle.dumps(all_files_in_this_folder))
            # Receive client info (address,port) through RTSP/TCP session

            foldername = conn.recv(1024)
            print foldername

            all_files_in_this_folder = [
                f for f in os.listdir('../foo/' + foldername)
                if os.path.isfile(os.path.join('../foo/' + foldername, f))
            ]
            print all_files_in_this_folder

            conn.send(pickle.dumps(all_files_in_this_folder))

            # thread.start_new_thread(self.callThread,(conn, rtspSocket,))
            while True:
                clientInfo = {}
                clientInfo['rtspSocket'] = rtspSocket.accept()
                ServerWorker(clientInfo).run()
Ejemplo n.º 17
0
#!/usr/bin/env python3

#import socket module
from socket import *
import sys  # In order to terminate the program

from ServerWorker import ServerWorker

serverSocket = socket(AF_INET, SOCK_STREAM)
#Prepare a sever socket
serverSocket.bind(('', 6789))
serverSocket.listen(1)
while True:
    #Establish the connection
    print('Ready to serve..')
    connectionSocket, addr = serverSocket.accept()
    ServerWorker(connectionSocket).run()
serverSocket.close()
sys.exit()  #Terminate the program after sending the corresponding data