Code: Select all
[20:18:46] Tcl error in file 'cornholio.conf':
[20:18:46] wrong # args: should be "regsub ?switches? exp string subSpec ?varName?"
while executing
"regsub -all -line \
"
(file "scripts/twitter/sha1.tcl" line 1059)
invoked from within
"source scripts/twitter/sha1.tcl"
(file "cornholio.conf" line 1386)
[20:18:46] * CONFIG FILE NOT LOADED (NOT FOUND, OR ERROR)
This isn't actually an error with birdy. Birdy is simply oAuth.tcl and twitter.tcl combined. They do require the additional support of base64 and sha1 for it to calculate base signatures and do its hash algorithms before making requests to twitter. You either have these with your tcl installation as packages. Which you can check, on your bots partyline type ".tcl package require sha1" does that work? if so, do not source sha1.tcl in your eggdrop.conf. Same goes for base64. Do not source this if you have the provided packages present on your system. Sourcing them as scripts is a dirtier work around with no serious consequences other than paths and permissions might be incorrect on some functions on whatever that package may be. For sha1 and base64 these packages work either way just fine. Sourced or provided as an included package.invoked from within
"source scripts/twitter/sha1.tcl"
(file "cornholio.conf" line 1386)
[20:18:46] * CONFIG FILE NOT LOADED (NOT FOUND, OR ERROR)
terron wrote:Would it be possible to have the megahal portion mention a random follower/person you're following?
So it is considered abuse to approach someone, without them having approached you first. This is why the megahal replies to your @mention's. Those users have contacted you first. It is then considered normal to reply back to them. To apporach a user cold is against the rules for an automated process on twitter. Everything the script does must follow these automation rules, or your account risks suspension/deletion as does your application. They are quite serious about this, and swift to enforce.Twitter's Automation Rules and Best Practices wrote:...snpped irrelevant parts...
Automated @Replies and Mentions
The @reply and Mention functions are intended to make communication between users easier, and automating these processes to place unsolicited messages into lots of users’ reply tabs is considered an abuse of feature. If you are automatically sending @reply messages or Mentions to a bunch of users, the recipients must request or approve this action in advance. For example, sending automated @replies based on keyword searches is not permitted.
Users should also have an easy way to opt-out of your service (in addition to the requirement that all users must opt-in before receiving the messages). We review blocks and reports of spam, so you’ll need to provide a clear way for users to stop your messages.
That error cannot occur with "birdy". As you see below your error does not match, hence it is not caused by the oauth.tcl used with "birdy".lishalulz wrote:Hi guys! Can someone please explain this?
wrong # args: should be "oauth:query_api url method oauth_token oauth_token_secret query_dict"
Thanks!
Code: Select all
proc oauth:query_api {url consumer_key consumer_secret method oauth_token oauth_token_secret query_dict} {
Code: Select all
# Multiple account wrapper. Single token use. No pin required.
proc proc:twitter:oauth {url method chan query} {
global twitter
set found [lsearch -glob $twitter(accts) "[string tolower $chan]|*"]
if {$found != -1} {
set tuser [lindex [split [lindex $twitter(accts) $found] |] 1]
set c_tok [lindex [split [lindex $twitter(accts) $found] |] 2]
set c_sec [lindex [split [lindex $twitter(accts) $found] |] 3]
set o_tok [lindex [split [lindex $twitter(accts) $found] |] 4]
set o_sec [lindex [split [lindex $twitter(accts) $found] |] 5]
set tformat [join [lrange [split [lindex $twitter(accts) $found] |] 6 end]]
if {[catch {set reply [oauth:query_api $url $c_tok $c_sec $method $o_tok $o_sec $query]} error]} { error $error }
return $reply
}
}
A lot of the ideas people have can be realized. It's just that with the way twitter runs its "rate limit" policy and it's automation and best practices. Most of the methods to attain things would cause your accounts and applications to get suspended over time. I will add more features eventually. The !friends/!followers command will only list the last 100. It doesn't list them all. Also, the automated detector for new and lost followers. This doesn't track above 100 as well. These are limitations put in place because of how twitter changed it's API. The new method to attain these requires several API hits now. This is something that will eventually get added when I have time for it. Sorry the updates won't be tomorrow but eventually this script will have an update to address those short-comings...terron wrote:Ah, okay. I didn't know about that rule. Thanks for the heads up.
If you dont mind me asking how exactly did you fix this error cause i cant seem to get it to go awayblake wrote:hey
keep getting the following when i try send a tweet
Code: Select all
[15:13] <TwitterBot> [18:13:00] unable to convert date-time string "2011-11-25 18:13:00 MSK": syntax error (characters 19-22)
Solved this issue
Code: Select all
OAuth failed: (???) Unknown problem... No reason given...( timeout )