9 |
9 |
10 from PyQt4.QtCore import pyqtSignal, QTimer, QTime, QByteArray |
10 from PyQt4.QtCore import pyqtSignal, QTimer, QTime, QByteArray |
11 from PyQt4.QtNetwork import QTcpSocket |
11 from PyQt4.QtNetwork import QTcpSocket |
12 |
12 |
13 from E5Gui import E5MessageBox |
13 from E5Gui import E5MessageBox |
|
14 from E5Gui.E5Application import e5App |
14 |
15 |
15 import Preferences |
16 import Preferences |
16 |
17 |
17 MaxBufferSize = 1024 * 1024 |
18 MaxBufferSize = 1024 * 1024 |
18 TransferTimeout = 30 * 1000 |
19 TransferTimeout = 30 * 1000 |
78 self.__isGreetingMessageSent = False |
79 self.__isGreetingMessageSent = False |
79 self.__pingTimer = QTimer(self) |
80 self.__pingTimer = QTimer(self) |
80 self.__pingTimer.setInterval(PingInterval) |
81 self.__pingTimer.setInterval(PingInterval) |
81 self.__pongTime = QTime() |
82 self.__pongTime = QTime() |
82 self.__buffer = QByteArray() |
83 self.__buffer = QByteArray() |
|
84 self.__client = None |
83 |
85 |
84 self.readyRead.connect(self.__processReadyRead) |
86 self.readyRead.connect(self.__processReadyRead) |
85 self.disconnected.connect(self.__disconnected) |
87 self.disconnected.connect(self.__disconnected) |
86 self.__pingTimer.timeout.connect(self.__sendPing) |
88 self.__pingTimer.timeout.connect(self.__sendPing) |
87 self.connected.connect(self.__sendGreetingMessage) |
89 self.connected.connect(self.__sendGreetingMessage) |
100 |
102 |
101 @return server port (integer) |
103 @return server port (integer) |
102 """ |
104 """ |
103 return self.__serverPort |
105 return self.__serverPort |
104 |
106 |
|
107 def setClient(self, client): |
|
108 """ |
|
109 Public method to set the reference to the cooperation client. |
|
110 |
|
111 @param client reference to the cooperation client (CooperationClient) |
|
112 """ |
|
113 self.__client = client |
|
114 |
105 def setGreetingMessage(self, message, serverPort): |
115 def setGreetingMessage(self, message, serverPort): |
106 """ |
116 """ |
107 Public method to set the greeting message. |
117 Public method to set the greeting message. |
108 |
118 |
109 @param message greeting message (string) |
119 @param message greeting message (string) |
201 yesDefault=True) |
211 yesDefault=True) |
202 if not res: |
212 if not res: |
203 self.abort() |
213 self.abort() |
204 return |
214 return |
205 |
215 |
|
216 if self.__client is not None: |
|
217 chatWidget = self.__client.chatWidget() |
|
218 if chatWidget is not None and not chatWidget.isVisible(): |
|
219 e5App().getObject("UserInterface").activateCooperationViewer() |
|
220 |
206 if not self.__isGreetingMessageSent: |
221 if not self.__isGreetingMessageSent: |
207 self.__sendGreetingMessage() |
222 self.__sendGreetingMessage() |
208 |
223 |
209 self.__pingTimer.start() |
224 self.__pingTimer.start() |
210 self.__pongTime.start() |
225 self.__pongTime.start() |