136 lines
4.5 KiB
Python
136 lines
4.5 KiB
Python
import socket
|
|
import os
|
|
import pynput
|
|
from pynput.keyboard import Key, Controller
|
|
#press
|
|
keyboard=Controller()
|
|
|
|
# device's IP address
|
|
SERVER_HOST = "0.0.0.0" #(socket.gethostbyname(socket.gethostname()))
|
|
SERVER_PORT = 10001
|
|
# receive 4096 bytes each time
|
|
BUFFER_SIZE = 128
|
|
SEPARATOR = "<SEPARATOR>"
|
|
# create the server socket
|
|
# TCP socket
|
|
s = socket.socket()
|
|
# bind the socket to our local address
|
|
s.bind((SERVER_HOST, SERVER_PORT))
|
|
# enabling our server to accept connections
|
|
# 5 here is the number of unaccepted connections that
|
|
# the system will allow before refusing new connections
|
|
s.listen(5)
|
|
print(f"[*] Listening as {SERVER_HOST}:{SERVER_PORT}")
|
|
# accept connection if there is any
|
|
client_socket, address = s.accept()
|
|
# if below code is executed, that means the sender is connected
|
|
print(f"[+] {address} is connected.")
|
|
|
|
|
|
def pressRrelease_char(char):
|
|
keyboard.press(char)
|
|
|
|
while True:
|
|
# read 1024 bytes from the socket (receive)
|
|
bytes_read = client_socket.recv(BUFFER_SIZE)
|
|
if not bytes_read:
|
|
# nothing is received
|
|
# file transmitting is done take another time
|
|
break
|
|
|
|
ge = bytes_read.decode()
|
|
|
|
print (ge)
|
|
try:
|
|
if (ge == "Key.enter"):
|
|
pressRrelease_char(Key.enter)
|
|
elif (ge == "Key.shift"):
|
|
pressRrelease_char(Key.shift)
|
|
elif (ge == "Key.space"):
|
|
pressRrelease_char(Key.space)
|
|
elif (ge == "Key.backspace"):
|
|
pressRrelease_char(Key.backspace)
|
|
elif (ge == "Key.ctrl_r"):
|
|
pressRrelease_char(Key.ctrl_r)
|
|
elif (ge == "Key.ctrl_l"):
|
|
pressRrelease_char(Key.ctrl_l)
|
|
elif (ge == "Key.shift_r"):
|
|
pressRrelease_char(Key.shift_r)
|
|
elif (ge == "Key.alt_l"):
|
|
pressRrelease_char(Key.alt_l)
|
|
elif (ge == "Key.alt_r"):
|
|
pressRrelease_char(Key.alt_r)
|
|
elif (ge == "Key.cmd"):
|
|
pressRrelease_char(Key.cmd)
|
|
elif (ge == "Key.caps_lock"):
|
|
pressRrelease_char(Key.caps_lock)
|
|
elif (ge == "Key.tab"):
|
|
pressRrelease_char(Key.tab)
|
|
elif (ge == "Key.f1"):
|
|
pressRrelease_char(Key.f1)
|
|
elif (ge == "Key.f2"):
|
|
pressRrelease_char(Key.f2)
|
|
elif (ge == "Key.f3"):
|
|
pressRrelease_char(Key.f3)
|
|
elif (ge == "Key.f4"):
|
|
pressRrelease_char(Key.f4)
|
|
elif (ge == "Key.f5"):
|
|
pressRrelease_char(Key.f5)
|
|
elif (ge == "Key.f6"):
|
|
pressRrelease_char(Key.f6)
|
|
elif (ge == "Key.f7"):
|
|
pressRrelease_char(Key.f7)
|
|
elif (ge == "Key.f8"):
|
|
pressRrelease_char(Key.f8)
|
|
elif (ge == "Key.f9"):
|
|
pressRrelease_char(Key.f9)
|
|
elif (ge == "Key.f10"):
|
|
pressRrelease_char(Key.f10)
|
|
elif (ge == "Key.f11"):
|
|
pressRrelease_char(Key.f11)
|
|
elif (ge == "Key.f12"):
|
|
pressRrelease_char(Key.f12)
|
|
elif (ge == "Key.esc"):
|
|
pressRrelease_char(Key.esc)
|
|
elif (ge == "Key.insert"):
|
|
pressRrelease_char(Key.insert)
|
|
elif (ge == "Key.delete"):
|
|
pressRrelease_char(Key.delete)
|
|
elif (ge == "Key.end"):
|
|
pressRrelease_char(Key.end)
|
|
elif (ge == "Key.num_lock"):
|
|
pressRrelease_char(Key.num_lock)
|
|
elif (ge == "Key.home"):
|
|
pressRrelease_char(Key.home)
|
|
elif (ge == "Key.page_up"):
|
|
pressRrelease_char(Key.page_up)
|
|
elif (ge == "Key.page_down"):
|
|
pressRrelease_char(Key.page_down)
|
|
elif (ge == "Key.pause"):
|
|
pressRrelease_char(Key.pause)
|
|
elif (ge == "Key.scroll_lock"):
|
|
pressRrelease_char(Key.scroll_lock)
|
|
elif (ge == "Key.menu"):
|
|
pressRrelease_char(Key.menu)
|
|
elif (ge == "Key.print_screen"):
|
|
pressRrelease_char(Key.print_screen)
|
|
elif (ge == "Key.left"):
|
|
pressRrelease_char(Key.left)
|
|
elif (ge == "Key.up"):
|
|
pressRrelease_char(Key.up)
|
|
elif (ge == "Key.right"):
|
|
pressRrelease_char(Key.right)
|
|
elif (ge == "Key.down"):
|
|
pressRrelease_char(Key.down)
|
|
else:
|
|
pressRrelease_char((ge))
|
|
except:
|
|
print("an error occured with ", ge)
|
|
|
|
|
|
|
|
# close the client socket
|
|
#client_socket.close()
|
|
# close the server socket
|
|
#s.close()
|