|
Log in |
FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
Thread Tools | Display Modes |
#1
|
|||
|
|||
![]() > How is the Portal product different than the RemoteTools package that I
> bought from Danijel back around 2004 ? I seem to remember the price was > quite good for about 100 bucks including source. Whats up with the huge > price increase? Please send a mail with your details to sales at nexusdb.com about this ![]() |
#2
|
|||
|
|||
![]() Hello, I have a couple of quick questions on the chat. The first thing is about the following code from the demo program... procedure TMainForm.PChatNewUI(Sender: TRtcPChat; const user: String); var CWin:TrdChatForm; begin CWin:=TrdChatForm.Create(nil); if assigned(CWin) then begin ... do stuff else raise Exception.Create('Error creating Window'); if CWin.WindowState=wsNormal then begin ... do stuff end; end; It seems that every time chat starts, a new chat window is created. Even if I am chatting with the same user 3x in a row (open/close chat each time) I will generate a new chatWindow in memory. Is that correct, or am I not understanding something. The other thing is that we are having problems initiating a chat from a host. The host has a button that can start the chat with his controller. The code is as follows: procedure TMyDataModule.OpenChat(const aUserName:String); begin PChat.BeTheHost:=true; PChat.Open(aUserName); end; In our application, .BeTheHost is defaulted to false. In the following scenario, the following works fine: Host opens chat with method above. Chat window opens on controller. some chatting happens. controller closes chat window host closes chat window Then everything is okay, and the host can restart the chat at any time. However the following has problems Host opens chat with method above. Chat window opens on controller. some chatting happens. host closes chat window controller closes chat window In that case, if the host tried to start the chat again, the chat window does not appear for the host side. However, it does appear on the controller side. Do you have any idea what we can do to fix this?. -- dave novo |
#3
|
|||
|
|||
![]() "dave novo" wrote:
> > It seems that every time chat starts, a new chat window is created. > Even if I am chatting with the same user 3x in a row (open/close chat > each time) I will generate a new chatWindow in memory. Is that correct, > or am I not understanding something. You are missing something. 1) The code you have posted is from the Controler side, which will create a new chat window every time a new session is started with a new Host. The Host, on the other end, only creates a single chat window for all participants. You should look up the implementation of the OnNewUI event on the Host, and ... check the implementation of the Form being created and used for Chat. It will be freed when closed, so there will be nothing left in memory. > The other thing is that we are having problems initiating a chat from a > host. The host has a button that can start the chat with his controller. > The code is as follows: > > procedure TMyDataModule.OpenChat(const aUserName:String); > begin > PChat.BeTheHost:=true; > PChat.Open(aUserName); > end; > > In our application, .BeTheHost is defaulted to false. > Do you have any idea what we can do to fix this?. Your client is either the Host, or it is not the Host. The property which you are changing dinamically should be sent only once before login and never changed for as long as the client (Host or Control) is logged in. I should propably have added a check if the client is logged in and raised an exception in case you try to change that property "on-the-fly", but I did not expect someone would go changing that property on a running client. In other words, you shoud set the "BeTheHost" property accordingly BEFORE you log in to the Gateway and keep that property UNCHANGED afterwards, and use the correct implementations for the OnNewUI events on the Host and Control (look up implementations in the example Host and Control projects) to fix your problem. Best Regards, Danijel Tkalcec |
#4
|
|||
|
|||
![]() Danijel Tkalcec;93576 Wrote: > "dave novo" wrote: > > > > It seems that every time chat starts, a new chat window is created. > > Even if I am chatting with the same user 3x in a row (open/close chat > > each time) I will generate a new chatWindow in memory. Is that > correct, > > or am I not understanding something. > > You are missing something. > > 1) The code you have posted is from the Controler side, which will > create a > new chat window every time a new session is started with a new Host. > The > Host, on the other end, only creates a single chat window for all > participants. You should look up the implementation of the OnNewUI event > on > the Host, and ... check the implementation of the Form being created > and > used for Chat. It will be freed when closed, so there will be nothing > left > in memory. > > > The other thing is that we are having problems initiating a chat from > a > > host. The host has a button that can start the chat with his > controller. > > The code is as follows: > > > > procedure TMyDataModule.OpenChat(const aUserName:String); > > begin > > PChat.BeTheHost:=true; > > PChat.Open(aUserName); > > end; > > > > In our application, .BeTheHost is defaulted to false. > > > Do you have any idea what we can do to fix this?. > > Your client is either the Host, or it is not the Host. The property > which > you are changing dinamically should be sent only once before login and > never > changed for as long as the client (Host or Control) is logged in. I > should > propably have added a check if the client is logged in and raised an > exception in case you try to change that property "on-the-fly", but I > did > not expect someone would go changing that property on a running client. > > In other words, you shoud set the "BeTheHost" property accordingly > BEFORE > you log in to the Gateway and keep that property UNCHANGED afterwards, > and > use the correct implementations for the OnNewUI events on the Host and > Control (look up implementations in the example Host and Control > projects) > to fix your problem. > > Best Regards, > Danijel Tkalcec Hi, I'm also facing the same situation. After reading your comment does it mean that if client_A is a chat host, client_A should not initialize the chat with other non host clients. Instead client_A should wait for them to initialize chat with him. If yes, is there a way for client_A as a host to invite other clients to join a chat room without the above mentioned problem? Cheers. -- ks.yeoh |
#5
|
|||
|
|||
![]() In the onclose of the chat form it's set to CAFREE, when the form closes it is automatically freed and does not remain in memory. -- tcaduto |
#6
|
|||
|
|||
![]() Also if the user does not close the form it does not create a new one, it only creates a new one if the user closes the chat form. -- tcaduto |
Thread Tools | |
Display Modes | |
|
|