The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
vBulletin to Twitter, live tweets of new threads Details »» | |||||||||||||||||||||||||||
vBulletin to Twitter, live tweets of new threads
Developer Last Online: Jul 2012
This should work on all 4 and 3 versions of vBulletin as it's trivial.
Description: You start a new thread, this hack makes a tweet about it on your twitter account. This are live updates... not delayed, not based on RSS... the instant the thread is started, a tweet is made. This is how this hack differs from other hacks. Why: Mostly for SEO, but also as an alert system. For SEO the idea is simply that search engines are drinking from the Twitter firehose and are indexing the links that are tweeted. Faster and increased indexing of your site benefits you by helping it be found. For alerts it means that users are able to use whatever twitter client they wish to obtain updates. A lot of these provide filtering capabilities, so they're able to get a live filtered stream of updates that interest them. This works very well when you also use thread prefixes. Pre-requisites: You should have an account on bit.ly for URL shortening, and you should have an account on Twitter. Go and register if you haven't yet: http://bit.ly/ http://twitter.com/ Installation: NOTE: Most problems are related to not putting your bit.ly or twitter user details in the plugin. Follow the instructions carefully! Upload the two attached files to your forum root. These are twitter and bitly classes that enable the hack to work, you can also download these from the author: http://classes.verkoyen.eu/bitly http://classes.verkoyen.eu/twitter/ Go to the plugin manager and create a new plugin with the following details: Product: vBulletin Hook: newthread_post_complete Title: Tweet to Twitter PHP Code: [See below] To configure the PHP code you need to know your bit.ly API key (go get it from bit.ly/account) and your username and password for twitter. You also should make a list of the forumIds that are non-public as you will want to put these in the array provided. i.e. if your admin forum is forumId = 7 and you also have a private forum for regular members which is forumid = 12, then you will want this: $excludedForums = array(7, 12); The PHP code should be this, with all of the relevant values for your forum inserted (replace everything bolded, including the < and > bits): PHP Code:
$bitly = new Bitly('testUser', 'R_hj3456hgf3hig56hi2gf6'); NOT $bitly = new Bitly('<testUser>', '<R_hj3456hgf3hig56hi2gf6>'); See? Remove those <> bits, they just show what to replace. The shortUrl line might look like this: $shortUrl = 'http://www.vbulletin.com/forum/showthread.php?t='.$newpost[threadid]; The Twitter line might look like this: $twitter = new Twitter('stephenfry','op1umisn1ce'); All make sense? And that's it. Save and activate the plugin and create a test thread. Now whenever a new thread is started, a tweet will be made to twitter instantly. You can see this in effect here: http://twitter.com/lfgss That is being pushed new threads for http://www.lfgss.com/ and it's working perfectly. Any questions? FAQ (Frequently Asked Questions) Q: It doesn't work! A: That's not a question, however if it doesn't work then it's extremely likely you got your username and passwords wrong or left the < > signs in there. Double-check and do it again. Q: I see an "INVALID_JSON" error A: Disable bitly by setting $useBitly to false. Q: I see an "You must be authenticated to access shorten" error A: The credentials that you entered are either wrong, or you made a mess of the syntax. You did remove the < > when you put your values in right? Did you check the example given above? Q: I see an error that says "Warning: curl_setopt_array() [function.curl-setopt-array]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in [path]/bitly.php" A: Wow, that's a good one... but easily fixable. Insert this at line 136 (just after the CURL options) in bitly.php: PHP Code:
Show Your Support
|
Comments |
#582
|
|||
|
|||
I get this:
Basic authentication is not supported on line 204 in /home/forum/public_html/twitter.php #0 /home/forum/public_html/twitter.php(648): Twitter->doCall('statuses/update...', Array, true) #1 /home/forum/public_html/newthread.php(277) : eval()'d code(26): Twitter->updateStatus('Test http://bit...') #2 /home/forum/public_html/newthread.php(277): eval() #3 {main} Fatal error: Basic authentication is not supported on line 204 in [path]/twitter.php in [path]/vb/vb.php on line 287 #0 vb_error_handler(256, Basic authentication is not supported on line 204 in /home/forum/public_html/twitter.php , /home/forum/public_html/vb/vb.php, 287, Array ([exception] => TwitterException Object ([] => Array ([100] => Continue,[101] => Switching Protocols,[200] => OK,[201] => Created,[202] => Accepted,[203] => Non-Authoritative Information,[204] => No Content,[205] => Reset Content,[206] => Partial Content,[300] => Multiple Choices,[301] => Status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.,[302] => Status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.,[303] => See Other,[304] => Not Modified,[305] => Use Proxy,[306] => (Unused),[307] => Temporary Redirect,[400] => Bad Request,[401] => Unauthorized,[402] => Payment Required,[403] => Forbidden,[404] => Not Found,[405] => Method Not Allowed,[406] => Not Acceptable,[407] => Proxy Authentication Required,[408] => Request Timeout,[409] => Conflict,[411] => Length Required,[412] => Precondition Failed,[413] => Request Entity Too Large,[414] => Request-URI Too Long,[415] => Unsupported Media Type,[416] => Requested Range Not Satisfiable,[417] => Expectation Failed,[500] => Internal Server Error,[501] => Not Implemented,[502] => Bad Gateway,[503] => Service Unavailable,[504] => Gateway Timeout,[505] => HTTP Version Not Supported),[] => Basic authentication is not supported,[] => ,[] => 0,[] => /home/forum/public_html/twitter.php,[] => 204,[] => Array ([0] => Array ([file] => /home/forum/public_html/twitter.php,[line] => 648,[function] => doCall,[class] => Twitter,[type] => ->,[args] => Array ([0] => statuses/update.xml,[1] => Array ([status] => Test http://bit.ly/rhKelq),[2] => 1)),[1] => Array ([file] => /home/forum/public_html/newthread.php(277) : eval()'d code,[line] => 26,[function] => updateStatus,[class] => Twitter,[type] => ->,[args] => Array ([0] => Test http://bit.ly/rhKelq)),[2] => Array ([file] => /home/forum/public_html/newthread.php,[line] => 277,[function] => eval))),[code] => 256)) called at [(null):0] #1 trigger_error(Basic authentication is not supported on line 204 in /home/forum/public_html/twitter.php , 256) called at [/home/forum/public_html/vb/vb.php:287] #2 vB::handleException(TwitterException Object ([] => Array ([100] => Continue,[101] => Switching Protocols,[200] => OK,[201] => Created,[202] => Accepted,[203] => Non-Authoritative Information,[204] => No Content,[205] => Reset Content,[206] => Partial Content,[300] => Multiple Choices,[301] => Status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.,[302] => Status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.,[303] => See Other,[304] => Not Modified,[305] => Use Proxy,[306] => (Unused),[307] => Temporary Redirect,[400] => Bad Request,[401] => Unauthorized,[402] => Payment Required,[403] => Forbidden,[404] => Not Found,[405] => Method Not Allowed,[406] => Not Acceptable,[407] => Proxy Authentication Required,[408] => Request Timeout,[409] => Conflict,[411] => Length Required,[412] => Precondition Failed,[413] => Request Entity Too Large,[414] => Request-URI Too Long,[415] => Unsupported Media Type,[416] => Requested Range Not Satisfiable,[417] => Expectation Failed,[500] => Internal Server Error,[501] => Not Implemented,[502] => Bad Gateway,[503] => Service Unavailable,[504] => Gateway Timeout,[505] => HTTP Version Not Supported),[] => Basic authentication is not supported,[] => ,[] => 0,[] => /home/forum/public_html/twitter.php,[] => 204,[] => Array ([0] => Array ([file] => /home/forum/public_html/twitter.php,[line] => 648,[function] => doCall,[class] => Twitter,[type] => ->,[args] => Array ([0] => statuses/update.xml,[1] => Array ([status] => Test http://bit.ly/rhKelq),[2] => 1)),[1] => Array ([file] => /home/forum/public_html/newthread.php(277) : eval()'d code,[line] => 26,[function] => updateStatus,[class] => Twitter,[type] => ->,[args] => Array ([0] => Test http://bit.ly/rhKelq)),[2] => Array ([file] => /home/forum/public_html/newthread.php,[line] => 277,[function] => eval)))) called at [(null):0] |
#583
|
||||
|
||||
Well, whatever you do, don't read the entire thread before installing a mod. Or bother searching the thread for a solution before asking. Especially don't read back JUST TWO POSTS for a solution.
edit: Oh and be sure to always quote your entire error. |
#584
|
|||
|
|||
Any help would be great! Thanks in advance.
(bits in red changed to protect the innocent) ERROR MESSAGE - Could not authenticate you. /statuses/update.xml Unauthorized on line 229 in /var/www/vhosts/mydomain.co.uk/httpdocs/twitter.php #0 /var/www/vhosts/mydomain.co.uk/httpdocs/twitter.php(648): Twitter->doCall('statuses/update...', Array, true) #1 /var/www/vhosts/mydomain.co.uk/httpdocs/newthread.php(276) : eval()'d code(23): Twitter->updateStatus('Test from Mark ...') #2 /var/www/vhosts/mydomain.co.uk/httpdocs/newthread.php(276): eval() #3 {main} MY PHP SCRIPT // If you are having trouble getting bitly URL shortening to work... disable it! $useBitly = true; if (!in_array($foruminfo[forumid], $excludedForums)) { $shortUrl = 'http://www.myDomain.co.uk/showthread.php?t='.$newpost[threadid]; if ($useBitly) { // http://classes.verkoyen.eu/bitly require_once 'bitly.php'; $bitly = new Bitly('accountName', 'R_70765765765765765765'); $shortUrl = $bitly->shorten($shortUrl); } $tweet = ''; if (isset($newpost['prefixid']) && $newpost['prefixid'] != '') { $tweet = $vbphrase['prefix_'.$newpost['prefixid'].'_title_plain'].' '; } $tweet .= $newpost['title'].' '.$shortUrl; // http://classes.verkoyen.eu/twitter/ require_once 'twitter.php'; $twitter = new Twitter('accountName','234kjh234k2j3h4'); $twitter->updateStatus($tweet); } |
#585
|
|||
|
|||
Quote:
The direct link to the actual mod is here https://vborg.vbsupport.ru/showthread.php?t=236278 |
#586
|
|||
|
|||
Hello, I need to know something.
Can I add Tweet Prefixes (not thread prefixes) With this add-on? For xample, Tweet: [Forum] vBulletin, the best forum system bit.ly/TweetURL23 Many thanks. |
#587
|
|||
|
|||
I have got it working after some googling og different errors.
Thanks for the mod. |
#588
|
|||
|
|||
Here is the error that I'm getting. Any ideas?
Quote:
|
#589
|
|||
|
|||
Here is the php I entered in the plug-in with the password and API starred out:
PHP Code:
|
#590
|
||||
|
||||
Go to the upper right and "search this mod" for the error you're getting. Specifically "Basic authentication is not supported".
|
#591
|
|||
|
|||
Thanks for the help. What it boils down to, essentially, is that this mod is a piece of crap. Right? LOL
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|