7f57dde74b07fca259053625e2532935d7f617e0 max Fri Jan 4 02:47:24 2019 -0800 adding URL to botDelay message, refs #22716 diff --git src/hg/lib/botDelay.c src/hg/lib/botDelay.c index 70c36ca..a43614a 100644 --- src/hg/lib/botDelay.c +++ src/hg/lib/botDelay.c @@ -32,45 +32,55 @@ { time_t now = time(NULL); warn("There is a very high volume of traffic coming from your " "site (IP address %s) as of %s (California time). So that other " "users get a fair share " "of our bandwidth, we are putting in a delay of %3.1f seconds " "before we service your request. This delay will slowly " "decrease over a half hour as activity returns to normal. This " "high volume of traffic is likely due to program-driven rather than " "interactive access, or the submission of queries on a large " "number of sequences. If you are making large batch queries, " "please write to our genome@soe.ucsc.edu public mailing list " "and inquire about more efficient ways to access our data. " "If you are sharing an IP address with someone who is submitting " "large batch queries, we apologize for the " - "inconvenience. Please contact genome-www@soe.ucsc.edu if " - "you think this delay is being imposed unfairly.", + "inconvenience. " + "To use the genome browser functionality from a Unix command line, " + "please read <a href='http://genome.ucsc.edu/FAQ/FAQdownloads.html#download36'>our FAQ</a> on this topic. " + "For further help on how to access our data from a command line, " + "or if " + "you think this delay is being imposed unfairly, please contact genome@soe.ucsc.edu.", ip, asctime(localtime(&now)), .001*millis); } void botTerminateMessage(char *ip, int millis) /* Print out message saying why you are terminated. */ { time_t now = time(NULL); hUserAbort("There is an exceedingly high volume of traffic coming from your " "site (IP address %s) as of %s (California time). It looks like " "a web robot is launching queries quickly, and not even waiting for " "the results of one query to finish before launching another query. " "/* We cannot service requests from your IP address under */ these " - "conditions. (code %d)", ip, asctime(localtime(&now)), millis); + "conditions. (code %d)" + "To use the genome browser functionality from a Unix command line, " + "please read <a href='http://genome.ucsc.edu/FAQ/FAQdownloads.html#download36'>our FAQ</a> on this topic. " + "For further help on how to access our data from a command line, " + "or if " + "you think this delay is being imposed unfairly, please contact genome@soe.ucsc.edu." + , ip, asctime(localtime(&now)), millis); } static char *getCookieUser() /* get user from hguid cookie */ { char *user = NULL; char *centralCookie = hUserCookie(); if (centralCookie) user = findCookieData(centralCookie); return user; } static char *getBotCheckString(char *ip, double fraction)