egghelp.org community Forum Index
[ egghelp.org home | forum home ]
egghelp.org community
Discussion of eggdrop bots, shell accounts and tcl scripts.
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Eggdrop Telnet Client
Goto page Previous  1, 2, 3, 4, 5, 6  Next
 
Post new topic   Reply to topic    egghelp.org community Forum Index -> Eggdrop Help
View previous topic :: View next topic  
Author Message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Fri Oct 21, 2011 5:06 pm    Post subject: Reply with quote

The history string list is already available in the version you are using. It refers to things entered via the clients input area, commands or whatever. If you input something and hit enter, it is echoed to the console, sent to the Eggdrops telnet server and added to the history string list (providing it is not already there - duplicate history items not allowed). Then using the up/down cursor keys you can navigate this list. Try it. Note that it does not function for commands entered via clicking on menu items, only things manually input via the input area. I think the history length is 20 items.

You can also use the command .quit in Defero. Just input it manually via the clients input area and hit enter.

Exactly how a disconnection is viewed will depend on the cause/method AND which side of a connection you happen to be studying. For example, forcibly closing a socket on one side of the connection might be a deliberate and valid event which would not result in a code 'Exception'. On the other side of the connection, it would almost certainly raise an 'Exception' and would need to be handled.

Defero clears the console on disconnect, in much the same way that putty closes completely. One disadvatage with this, is you cannot see any messages in the console that may relate to the disconnection. I have seperately handled events such that a message box will show for things like 'booted from the party line', 'bot shutdown' and various winsock exceptions. Maybe as the user base grows I will learn more about less common disconnects and add additional message boxes.

I will investigate further what happens clientside when manually entering .quit and maybe code an appropriate message box for it. I don't think I have previously used .quit. If I was using a dcc chat session from IRC then I would simply close the dcc chat window.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
willyw
Owner


Joined: 15 Jan 2009
Posts: 925

PostPosted: Fri Oct 21, 2011 8:01 pm    Post subject: Reply with quote

arfer wrote:
The history string list is already available in the version you are using.
...


It is?

...

Aha.
Same situation as with the buttons - the history doesn't work if username is left blank, and entered manually.
So - I thought it didn't work.

Just tried it, with a name in the username block, and history works.



Quote:


You can also use the command .quit in Defero. Just input it manually via the clients input area and hit enter.



Right. That's what I do.

Quote:

Exactly how a disconnection is viewed will depend on the cause/method
....


I just wanted to let you know that the bot reports the two methods differently.
Whether it is important, or could ever be important - is for you or somebody in-the-know to determine. Smile

Quote:

...
I don't think I have previously used .quit. If I was using a dcc chat session from IRC then I would simply close the dcc chat window.


Since it is the command that is designed for that, I suppose that is why I try to always use .quit. (I just use .q )
I never asked anyone if it mattered, compared to slamming the window shut.


Thanks
Back to top
View user's profile Send private message
desired
Voice


Joined: 12 Sep 2011
Posts: 31

PostPosted: Sat Nov 05, 2011 1:19 pm    Post subject: Reply with quote

What I am missing...

- STRG + V (paste)

- arrow up (command history like in mirc client)

- command line switch for portability -d .\Data - configuration goes into .\Data

PS:

- not to clear the window after the connection broke down (bot got killed, crashed or whatever), last output while .tcl die is interesting
_________________
eggdrop running on Android powered mobile phone - Yes, it is possible! - Very reliable.
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Sun Nov 06, 2011 8:24 am    Post subject: Reply with quote

Thanks for your input desired.

1. Copy/Paste is already available via mouse right click in the input area. I will add Copy/Paste via Ctrl key in the input area to the todo list. Copy will be available via right mouse click and Ctrl key from the console area in the next version. Paste to the console area will not be made available, since this would be pointless.

2. A history string is already available via cursor up/down keys. This has already been discussed in this thread. See the post above yours. There is a bug in the current version of the program that occurs if you use manual login and do not include a bot username in the connection string. It would prevent some of the commands working along with disable the history string. This has also been discussed and will be fixed in the next version. Ensure that when connected the client title bar demonstrates that Defero recognises you have joined the party line. Full functionality is only available when this is true.

3. I am assuming your third point is regarding the connection strings file (connect.xml) going into a subdirectory of users 'My Documents'. I am aware that it would probably have been more consistent to put this in users 'AppData/Roaming'. However, I was not aware that this gives a problem in portability. What OS version are you porting the program to that gives a problem?

4. I am considering what to do regarding clearing the console area after the connection is closed. It looks rarther messy to have the client disconnected but the console area full of data from the last connection. At the moment I am trying to capture any pertinent last output and open a message dialog box with the information. For example, bot shutdown via .die is caught, booted from the partyline is caught etc. I do need help in this respect. If the connection is lost yet no dialog box, then recreate the problem in a dcc chat session and report any message please.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
desired
Voice


Joined: 12 Sep 2011
Posts: 31

PostPosted: Sun Nov 06, 2011 7:57 pm    Post subject: Reply with quote

arfer wrote:
3. I am assuming your third point is regarding the connection strings file (connect.xml) going into a subdirectory of users 'My Documents'. I am aware that it would probably have been more consistent to put this in users 'AppData/Roaming'. However, I was not aware that this gives a problem in portability. What OS version are you porting the program to that gives a problem?

No, we are talking about different things.

I mean portability in sense of Windows portable software. Like portableapps.com.

Portable means no settings go into Windows registry (because it's hard to backup and so on) and with a switch, for example -d .\Data would mean that all userdata goes into .\Data.

Example:
usb-pendrive e:
e:\Defro\Defro.exe
e:\Defro\Data\connect.xml

That'd be nice. I prefer it for any software. Not because I use usb-pendrives, but in case of Windows crash and format c: (which even microsoft admits, that this happens) you still have all your appdata working... Side effect: somehow a little "independent" from the operating system (most portable software runs on Windows 95, 98, ME, XP, Vista, 7 and even Linux Wine).
_________________
eggdrop running on Android powered mobile phone - Yes, it is possible! - Very reliable.
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Mon Nov 07, 2011 6:09 pm    Post subject: Reply with quote

OK desired, I get what you mean now regarding portability. However, I'm not feeling much motivation towards including this functionality anytime soon. There are many useful additions I could make to ther program that would have broader appeal.

With reference to your earlier point regarding not clearing the console area so that you can see disconnection messages. I have now included this code as an 'option' setting. It can be switched on for a while to try to discover if any such message exist, therafter switched off to get back to a tidier clear console area. It will be available in the next version hopefully within a month, though other modifications are proving time consuming and delaying the release date.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
desired
Voice


Joined: 12 Sep 2011
Posts: 31

PostPosted: Mon Nov 28, 2011 5:58 pm    Post subject: Reply with quote

few more wishes:

- option disable scroll lock
(when there is new output from the bot it will scroll. it's not possible to read the old messages as long as new messages come. This can be quite disturbing while reading.

- *nix support
Unfortunately there is no *nix version and WINE does not work as well.
_________________
eggdrop running on Android powered mobile phone - Yes, it is possible! - Very reliable.
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Mon Nov 28, 2011 7:13 pm    Post subject: Reply with quote

desired, thanks for your comments and suggestions. Please keep them coming.

I agree with your idea regarding the scroll lock. At the very least I will add it to the 'ToDo' list. In fact, I will see if I can incorporate it into the coming upgrade. Depends on the level of difficulty.

Nix support is generally out of the question in the short term. Embarcadero, the current owners of Delphi, no longer support a nix version of the programming environment (formerly Kylix). However, they are promising a cross-compiler at sometime in the future. We'll just have to see. A rewrite using something like Lazarus and Free Pascal would be a massive undertaking.

I understand that Defero works fine with the latest version of Wine, but performs poorly with older versions. I am unable to personally confirm this bacause I don't use it, but the evidence comes from reliable sources. Please check your version and confirm. I understand the latest version is 1.2.3 (stable), though I can't say for sure if they meant the 1.3.33 development branch. I will try to find out.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Mon Nov 28, 2011 11:04 pm    Post subject: Reply with quote

desired, regarding my last post on the subject of Wine

1.2.2 can yield runtime error 216 on closing Defero
1.2.3 seems to function well with Defero

Earlier versions are known to cause more severe issues such as failing to save the connection strings
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Fri Dec 02, 2011 10:01 pm    Post subject: Reply with quote

NEW VERSION RELEASED 1.2.2.526

Uninstall your current version (you will not lose any connection strings you have already set up).

http://defero.ircspeed.org

Many enhancements and fixes.

Please give me some feedback.

*** edited 07/12/11 to version 1.2.2.526 (from 1.2.1.524) - minor alteration in error handling and will not materially effect functionality.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
desired
Voice


Joined: 12 Sep 2011
Posts: 31

PostPosted: Tue Dec 13, 2011 7:49 pm    Post subject: Reply with quote

I have an even better idea for bots who
- crashed
- shutdown
- user lost internet connection (24 hour force disconnect, bad Wifi/3g connection)
- shell lost internet connection
just in time the telnet client was still connected...

Idea:
- no popups
- no cleanup messages
- just notify the user that the connection has been lost
- try to re-establish the session

That seams to me the most logical solution as it would be quite similar to other programs. Browser, ftp client, ssh client and so on, most do not close the window and reconnect automatically.
_________________
eggdrop running on Android powered mobile phone - Yes, it is possible! - Very reliable.
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Wed Dec 21, 2011 4:52 pm    Post subject: Reply with quote

desired, Sorry about the delayed response

I'm not aware of any software I use that reconnects automatically other than my IRC client. Not really much point in doing that if, for example, the bot has shutdown.

As regards popup messages I suppose its a matter of finding the right balance between being informative and being a nuisance. At the same time as you are suggesting less popup messages, another user I communicate with is suggesting more. If more people would respond with thoughts and ideas, I could better judge popular choices and code accordingly.

I have tried to be more informative with messages in appropriate places. Before coding this client I used putty, which simply disappears when it disconnects because it is a console application.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
desired
Voice


Joined: 12 Sep 2011
Posts: 31

PostPosted: Fri Dec 23, 2011 1:23 am    Post subject: Reply with quote

arfer wrote:
I'm not aware of any software I use that reconnects automatically other than my IRC client. Not really much point in doing that if, for example, the bot has shutdown.

Sometimes happens to me when I type rehash or got a segfault (eggdrop bug crash).

arfer wrote:
I have tried to be more informative with messages in appropriate places. Before coding this client I used putty, which simply disappears when it disconnects because it is a console application.

Uhm, yes that is annoying... It's only a bad default option. But I am so happy that there are options in putty to change this.

At the bottom of the session window there are options...

Close window on exit
- always (current behaviour)
- never (the one I proposed here)
- only on clean exit
_________________
eggdrop running on Android powered mobile phone - Yes, it is possible! - Very reliable.
Back to top
View user's profile Send private message
desired
Voice


Joined: 12 Sep 2011
Posts: 31

PostPosted: Tue Jan 03, 2012 4:02 pm    Post subject: Reply with quote

By the way I thought about your idea of implementing SSH into Defero. That would be great. Because

1.) Very good firewall workarround, in most cases (not all) it is possible to SSH to the shell. After the SSL connection is established Defero can do telnet 127.0.0.1 telnet-port.

2.) The eggdrop telnet chat would be even encrypted!

Fully implementing SSH would be probable to much work (password authentication, keyfile authentication etc.). Perhaps you can utilize common tools such as Putty?
_________________
eggdrop running on Android powered mobile phone - Yes, it is possible! - Very reliable.
Back to top
View user's profile Send private message
arfer
Master


Joined: 26 Nov 2004
Posts: 436
Location: Manchester, UK

PostPosted: Wed Jan 04, 2012 11:00 am    Post subject: Reply with quote

I can't say I fully understand what you are saying desired. Telnet localhost?

In any case I have already implemented a testbed SSH connection window in Defero using SSHBlackBox components to launch a seperate window and automatically login using password authentication rather than the normal keyboard authentication, but there are two difficulties.

1. Many SSH shell bash prompts these days are what might be termed semi-graphical using Linux character sets G1 and G2. I haven't yet found these character sets in order to attempt to translate them, though I haven't searched long and hard. I would consider this problem do'able.

2. My testbed SSH connection is rather primitive and would definitely not cope with things like command line editors, nano and the like, though it is adequate for most bash commands. I could attempt to build a complete vt emulation to translate keystroke by keystroke (both ways of course), or preferably find a suitable third party emulator (form based, not console based). Since the latter has proven difficult to find, this problem is rather less do'able though I might yet give it a go. I am currently looking at the potential for terminal emulation in TMS Async32 components. It would be in keeping with my ultimate goal of having an 'all-in-one' Eggdrop tool .. TELNET/SSH/(S)FTP.

There are probably more important things to do first. The programming environment I used is getting rather aged, I would like to upgrade to Delphi XE2 and change socket technology to make easier the added functionality of IPv6 and SSL. Pretty big jobs for a single developer. Cost is an issue too.
_________________
I must have had nothing to do
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    egghelp.org community Forum Index -> Eggdrop Help All times are GMT - 4 Hours
Goto page Previous  1, 2, 3, 4, 5, 6  Next
Page 4 of 6

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Forum hosting provided by Reverse.net

Powered by phpBB © 2001, 2005 phpBB Group
subGreen style by ktauber