Bug - Not A Bug Checking Easyfax doesn't time out

Grabuge

Member
Easyfax is currently disable but it completely stop my script when faxbot() is called.
The gcli states:
Configuring faxable monsters.
Configuring Easyfax (2504737)
but it never gets further, even if I request a fax manually from cheesefax.

It seems to also happen when use "Request a fax". I think the problem is that easyfax is online but just not responsive.
 

fronobulax

Developer
Staff member
As an aside, do you have a chat window open when you do this? If chat is open and available KoLmafia will report success when it happens or failure due to timeout. I'm not sure what timeout information is provided if chat is not open.
 

Grabuge

Member
Yeah, at first I thought it was failing since I didn't have the chat open but now it seems to be failing to even get the list from easyfax.
In my opinion, the problem isn't knowing if the bot send the fax or not, it is timing out from getting the list of available faxes from easyfax.
 

fronobulax

Developer
Staff member
I use the GUI and not always a script but my experience (even lately) has been that either EasyFax responds or KoLmafia decides that it it probably not online, displays that in the GUI if asked and then I believe mafia and stop expecting it to answer. But there are probably a couple time out values that might better be preferences to let the user make adjustments.
 

Crowther

Active member
Easyfax has been down a lot more recently do to all these server side errors. They break my regular scripts too. The list is stored on Sourceforge.
 

madowl

New member
I just encountered this condition where Easyfax is online but not responding to requests, so I wanted to bump this bug up again. If we could have mafia either timeout or be able to set a preference for which bot to use in case one is offline would be helpful I think in this particular situation.
 

Veracity

Developer
Staff member
Times out for me. My script eventually realizes it is down and proceeds without faxing.
Can you explain the following, please:

How are you calling EasyFax?
What happens to you when Easyfax is down?
What do you think should happen in that case?

Thanks.
 

Pazleysox

Member
I just encountered this condition where Easyfax is online but not responding to requests, so I wanted to bump this bug up again. If we could have mafia either timeout or be able to set a preference for which bot to use in case one is offline would be helpful I think in this particular situation.

Could this be a whitelist issue? I might be completely off the mark with this. I have been having whitelist troubles with a dreadsylvania bot that i run. I don't think the issue is script related for the bot, because the error fixed itself when the bot logged on the next day.
 

Crowther

Active member
I just encountered this condition where Easyfax is online but not responding to requests, so I wanted to bump this bug up again. If we could have mafia either timeout or be able to set a preference for which bot to use in case one is offline would be helpful I think in this particular situation.
Those server-side timeouts are a pain for all my scripts and EasyFax is very conservative. If it fails to dump a fax it stops, because I'm worried about it accidentally dumping one into a holding clan.
 

fronobulax

Developer
Staff member
Times out for me. My script eventually realizes it is down and proceeds without faxing.
Can you explain the following, please:

How are you calling EasyFax?
What happens to you when Easyfax is down?
What do you think should happen in that case?

Thanks.

I use an alias that finds a faxable monster that needs factoids and then (in ash) does "faxbot(mon)". faxbot (i.e. KoLmafia) has elected which bot to use. I have learned that I am much happier with the results if I open a chat window before running the command. Most of the time EasyFax is the bot selected. Things usually work as expected. There are times when I get "no answer" from the bot. Sometimes if I try again I get the fax. If I get two or three failures I use the GUI to select a monster from the other faxbot. Recently - as within the last month or so, I have seen a couple failures that were not timeouts but had a message that the bot was not whitelisted in my clan. Since that is a false statement I figured what it really meant is that somewhere there was a network related timing issue.

Once or twice I have seen something similar to the OP where the alias "stops" but does not complete. What that happened I just confirmed that the bot was "probably not online" in the GUI and then got the fax manually.

I think mafia does time out and declare failure under most circumstances.
 

fronobulax

Developer
Staff member
if easyfax fails couldn't mafia just then request from cheesefax?

There are two issues here. One is a possible bug report that mafia does not recognize a time out or handle it "well". The other is a potential feature request concerning how to handle the situation (besides reporting it).

The issue is that the two fax networks are not identical. If a monster is requested, the fax times out and the monster is not available elsewhere, how should that be handled?

That said, the documentation suggests that faxbot() is expected to check all possible faxbots before returning false. A quick looks at the code suggests faxbot only tries the first online bot with the monster. I will look at that more closely and change it if I still believe it is only checking one.
 
Top