У меня проблема с программой, благодаря которой 2 человека могут отправлять сообщения друг другу.Это самый простой способ общения.Когда клиентский сервер прослушивает подключение к адаптированной программе, он может подключаться к другим различным программам с тем же IP-адресом компьютера, на котором расположена основная программа.К ним относятся такие сообщения:
Magda: GET / HTTP / 1.1 HOST 192.168.10.129:8080 User-Agent: avast!Антивирус Accept: * / * Accept-Encoding: deflate, gzip
К сожалению, я понятия не имею, о чем идет речь.Можно ли это исправить?
Вот код:
import tkMessageBox as messagebox
import os, webbrowser, urllib2
from datetime import date
import thread
from ChatFns import *
from playsound import playsound
#from pynput.keyboard import Key , Controller
global name_log
name_log = ("")
+conn = ''
+
def StartApp():
"""
+
+ """chat"""
+ WindowTitle = ' Chat Serwis'
+ s = socket(AF_INET, SOCK_STREAM)
+ HOST = gethostname()
+ PORT = 8080
+ s.bind((HOST, PORT))
+ global pom
+ pom = 0
+
+ #---------------------------------------------------#
+ #------------------ MOUSE EVENTS -------------------#
+ #---------------------------------------------------#
+ def ClickAction():
+ try:
+
+ #Write message to chat window
+ EntryText = FilteredMessage(EntryBox.get("0.0",END))
+ LoadMyEntry(ChatLog, EntryText)
+
+ #Scroll to the bottom of chat windows
+ ChatLog.yview(END)
+
+ #Erace previous message in Entry Box
+ EntryBox.delete("0.0",END)
+
+ if pom == 0:
+ #Send my mesage to all others
+ conn.sendall(EntryText.encode('utf-8'))
+ else:
+ pass
+ except:
+ pass
+
+ #---------------------------------------------------#
+ #----------------- KEYBOARD EVENTS -----------------#
+ #---------------------------------------------------#
+ def PressAction(event):
+ EntryBox.config(state=NORMAL)
+ ClickAction()
+ def DisableEntry(event):
+ EntryBox.config(state=DISABLED)
+
+ #Create a window
+ #base = Tk()
+ #base.title(WindowTitle)
+ #base.geometry("400x500")
+ #base.resizable(width=FALSE, height=FALSE)
+
+ #Create a Chat window
+ ChatLog = Text(page, bd=0, bg="white", height="1", w
idth="50", font="Arial 10",)
+ ChatLog.insert(END, "Łączenie, proszę czekaj......\n")
+ ChatLog.config(state=DISABLED)
+
+ #Bind a scrollbar to the Chat window
+ scrollbar = Scrollbar(page, command=ChatLog.yview, cursor="arrow")
+ ChatLog['yscrollcommand'] = scrollbar.set
+
+ #Create the Button to send message
+ SendButton = Button(page, font=30, text="Wyślij", width="12", height=5,
+ bd=0, bg="#FFBF00", activebackground="#FACC2E",
+ command=ClickAction)
+
+ #Create the box to enter message
+ EntryBox = Text(page, bd=0, bg="white",width="29", height="5", font="Arial 10")
+ EntryBox.bind("<Return>", DisableEntry)
+ EntryBox.bind("<KeyRelease-Return>", PressAction)
+
+ #Place all components on the screen
+ scrollbar.place(x=1330,y=310, height=300)
+ ChatLog.place(x=1100,y=310, height=300, width=230)
+ EntryBox.place(x=1170, y=620, height=60, width=175)
+ SendButton.place(x=1100, y=620, height=60,width=60)
+
+
+ #---------------------------------------------------#
+ #----------------CONNECTION MANAGEMENT--------------#
+ #---------------------------------------------------#
+
+ def GetConnected():
+ s.listen(1)
+ global conn
+ global pom
+ conn, addr = s.accept()
+ LoadConnectionInfo(ChatLog, 'Połączono z: ' + str(addr)
+ '\n')
+ pom = 0
+
+ while 1:
+ try:
+ data = conn.recv(1024)
+ LoadOtherEntry(ChatLog, data)
+ if page.focus_get() == None:
+ playsound ('notif.wav')
+ #FlashMyWindow(WindowTitle)
+ # playsound('notif.wav')
+ except:
+ LoadConnectionInfo(ChatLog, '\n [ Twój znajomy jest Offline ]\n Nie możesz wysłać wiadomości \n ')
+ pom = 1
+ GetConnected()
+
+ conn.close()
+
+ thread.start_new_thread(GetConnected,())
+
+ #base.mainloop()
+
+
+