Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
WS vBulletin Tweet Poster Details »»
WS vBulletin Tweet Poster
Version: 4.1.0, by Mosh Mosh is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Category: New Posting Features - Version: 4.x.x Rating:
Released: 02-18-2010 Last Update: 06-29-2013 Installs: 591
Uses Plugins
Re-useable Code Additional Files Translations  
No support by the author.

Please click Mark as Installed if you are using this hack.

What Does This Hack Do?[hr]Silver[/hr]
I use v4.1.0 of this hack at Wolfshead Solutions and have had no issues at all.

Depending on the options you select in the AdminCP, you can:
  • Automatically create a new tweet when you create a new thread only (including hashtags if selected)
  • Automatically create a new tweet when you post a new reply/quick reply to a thread only
  • Automatically create a new tweet when you create a new thread and post a new reply/quick reply

These tweets are live updates.... the instant you or your members post a new thread or a new reply/quick reply in a WS vBulletin Tweet Poster enabled forum, a tweet is made at the same time. These tweets will only be posted if they are 140 characters or shorter (this is automatically checked) and the new thread or new reply/quick reply is not sent the moderation queue.... so instead of throwing errors, in these cases this hack will not even attempt to tweet the thread/post.

As of v4.0.003, this hack is very, very loosely based on Buro9's vBulletin To Twitter hack (there is not one line of original untouched code left from his hack in this hack, and his hack is based on Basic authentication). I have totally rewritten his hack to made it into a product to use OAuth authentication to post to Twitter and have added extra functionality, which includes is.gd, TinyURL.com & Metamark as alternative url shortening services, as well as options to tweet replies to threads as well as tweet new threads and to add Hashtags.

What is required before installing this hack?

Your server needs the following options installed on it for this hack to work. This hack will check the requirements for you and will not install this hack if they are not.
  1. cURL with OpenSSL compiled into your php - http://curl.haxx.se/, http://php.net/manual/en/book.curl.php
  2. JSON support compiled into your php - http://www.json.org/, http://php.net/manual/en/book.json.php

Once you have server requisites from above covered, you will then need the following accounts setup before you can install this hack:
  1. You need to have a normal Twitter account details to post to - http://twitter.com
  2. You will need to register a new Twitter Application (while logged with your normal Twitter account) - http://dev.twitter.com/apps/new
  3. You will need the items below for step 4 of the attached install instructions:
    1. Note down the "Consumer Key" and "Consumer Secret" (Under App Details)
    2. Note down the "Access Token" and "Access Token Secret" (under My Access Token on the App details screen)
  4. If you want to use bit.ly url shortening (Optional)
    1. You need to have registered with bit.ly to obtain a username and your API Key - http://bit.ly
  5. Then install this hack by following the "Installation/Upgrade Instructions" attached.

TWITTER DEMO: There is no longer a demo available.

What Do You Get?

The settings in the AdminCP options are:
  • Turn this hack on or off
  • Enter your twitter "Consumer Key" and "Consumer Secret"
  • Enter your twitter "Access Token" and "Access Token Secret"
  • Select which url shortening service to use, is.gd, TinyURL.com, Metamark, bit.ly or none (default is bit.ly)
  • Enter your bit.ly username and API key
  • Option to include all, include selected or exclude selected forums when posting to twitter
  • Enter which forums to include or exclude when posting to twitter
  • Select if you want to use your thread prefixes when posting a new thread to twitter
  • Select if you want to post your new threads to twitter or not
  • Select if you want to allow user or admincp defined hashtags (or no hashtags at all)
  • Enter admincp defined hashtags
  • Select if you want to post your replies/quick replies to twitter or not
  • There is a link to edit the new reply/quick reply prefix (default is Re:)
  • Date prefix to add to new reply/quick reply to make it unique to not be detected as a duplicate by twitter

Frequently Asked Questions[hr]Silver[/hr]
Question 1:
It doesn't work! Help!!!
Answer:
That does not help others help you. Please explain exactly what the issue is, give as much information as possible and that may aid others in helping you.

Question 2:
I don't know how to setup a Twitter Application! Help!!!
Answer:
Enter the following details when creating your application:
  • Application Name: I advise your website url (for instance I used "wolfshead-solutions.com")
  • Application Website: Enter the full url to your site (for instance I used "http://www.wolfshead-solutions.com")
  • Application Type: Set to "Client"
  • Default Access type: Set to "Read & Write"
Stay logged into your Twitter account, as the first time you tweet from your forum you will need to authorise the domain.

Question 3:
I think I have set up everything correctly, the thread and/or post is created with no issues, there are no errors, but nothing is posted to twitter. Help !!!
Answer:
On the Details tab of your Twitter Application (at https://dev.twitter.com), check the following:
  • Under the OAuth settings section, check Access level is set to Read and write not Read-only
  • Under the Your access token section, check Access level is set to Read and write not Read-only

If either of the above settings is Read-only, then you need to do the following:
  • Revoke access for the current application on your normal twitter account
  • Delete your current application
  • Create a brand new application with exactly the same information as the application you have just deleted.
  • Under the Settings tab, check the Access level under the Application type
    is set to Read and write not Read-only before you create the Access Token

Question 4:
I am using vBulletin 3.8.7 and the user hash tag field is not showing.... what can I do?
Answer:
Follow the instructions in this post.

Question 5:
Can you please add the ability to tweet RSS feeds, CMS articles, Blogs, calendar events etc?
Answer:
This hack tweets live to twitter, and as none of the requests above are guaranteed to be live (ie they can be set to be published later), I will never be adding the any of the above to this hack and that will never change.

Question 6:
Can I use this hack with vBulletin 4.1.4 which has the new CKEditor, and the hashtag field be visible to my members (if selected in the AdminCP options)?
Answer:
Yes, this hack is already compatible. If you select Only User defined Hashtags or Both User and AdminCP defined Hashtags in the AdminCP Options for this hack, the hashtag field will be displayed to your members.

Question 7:
I see "Basic authentication is not supported on line XXX" or /statuses/update.xml Could not authenticate you. Unauthorized on line XXX errors
Answer:
It means you still have either v4.0.001 or v4.0.002 of this hack installed, and the solution is to upgrade to v4.1.0 or above of this hack, which uses OAuth Authentication.

Question 8:
I see "Fatal error: Cannot redeclare class OAuthException in [path]/includes/twitteroauth/OAuth.php on line 8" error
Answer:
Edit the OAuth.php file in the twitteroauth folder. Find all instances of OAuthException and change them to OAuthException_tw. That should fix it up.

Question 9:
I see a "You must be authenticated to access shorten" or INVALID_LOGIN on line xxx in /xxxxx/xxxxx/xxxxx/includes/bitly.php error message.... what do I do?
Answer:
Ensure you have entered your bit.ly username & API key correctly. If that does not fix it, then select is.gd, TinyURL or Metamark in your AdminCP Options instead of bit.ly for url shortening.

Question 10:
I see an "INVALID_JSON" error
Answer:
Select is.gd, TinyURL or Metamark in your AdminCP Options instead of bit.ly for url shortening.

Question 11:
bit.ly does not work (gives error messages), what can I do?
Answer:
Select is.gd, TinyURL or Metamark in your AdminCP Options instead of bit.ly for url shortening.

Question 12:
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"
Answer:
Looks like that is a safe_mode issue... the below should fix it (but is not guaranteed that it will, but it should). In bitly.php, find:
PHP Code:
$options[CURLOPT_FOLLOWLOCATION] = true
Change it to:
PHP Code:
$options[CURLOPT_FOLLOWLOCATION] = false;
$options[CURLOPT_HEADER] = true
If that does not fix it, then select is.gd, TinyURL or Metamark in your AdminCP Options instead of bit.ly for url shortening.

Question 13:
As I do not have to register with is.gd, how to I view click statistics with the generated link?
Answer:
Simply add a hyphen (dash) to the end of the shortened URL, and instead of being redirected to the original long address automatically, you'll be taken to a preview page telling you where the link goes and gives you the click statistics for the url.

For example: You have been given the shortened link http://is.gd/8HdYu and want to check where it goes. Copy/paste it into your browser's address bar and then add a hyphen, making the link http://is.gd/8HdYu-. Now simply visit that address, and instead of being taken directly to the original URL, you'll be taken to a preview page on the is.gd site which will tell you the link's destination along with the click statistics.

Question 14:
Threads with titles that have special characters in them (such as ? ? ? ? ? ? ? ?) do not tweet, what do I do?
Answer:
Sorry, but it looks like an issue with the Twitter (OAuth) class file by Abraham Williams and not with this hack at all.

I have checked his bug tracker and this issue has been reported twice and has not been fixed yet by the author, please see:
You might want to reply to both of the bug reports to see if you can get the author to fix his Twitter class any quicker.

Question 15:
This hack has been working fine then stopped working on Tuesday 11th June 2013 and I did not make any changes, what do I do?
Answer:
Twitter updated their API to version 1.1 on 11/6/2013, so any versions of this hack below v4.1.0 will have stopped working. The solution is to upgrade to v4.1.0 of this hack.

If it still does not work, then you will probably need to do the following, then the hack should start working again within 24 hours:
  • Revoke access for the current application on your normal twitter account
  • Delete your current application
  • Create a brand new application with exactly the same information as the application you have just deleted.
  • Under the Settings tab, check the Access level under the Application type
    is set to Read and write not Read-only before you create the Access Token

vBulletin Version Compatibility[hr]Silver[/hr]
This hack can be used with vBulletin versions 4.0.0 - 4.2.1.

This has been tested with vBulletin v3.8.x and works fine, it should also work with v3.7.x and earlier versions (but has not been tested).



Hack Support/Feature Requests[hr]Silver[/hr]
IMPORTANT: This hack is no longer supported, but I have marked it as re-usable code, so it can be developed further (remember to acknowledge me as orignal author of this hack).



Install/Upgrade/Uninstall Instructions[hr]Silver[/hr]
There are no file or template changes at all and is fully phrased. You just need to upload 5 files (in 2 folders), import 1 product and alter the correct vBulletin Options in the AdminCP, and then it will work from then on.

The readme.txt instructions file is included in attached .zip file.


Version History[hr]Silver[/hr]
v4.1.0 - Sunday 30th June 2013 (Final Version Ever)
-- Updated: Installation/Upgrade/Removal Instructions file
-- Updated: OAuth.php & twitteroauth.php files to use the new Twitter API 1.1 (old API 1.0 no longer works)
-- Removed: all references to "account/rate_limit_status", as this has been removed from the Twitter API 1.1
-- Removed: Two plugins to aid in diagnosing problems with this hack (as I no longer support this hack, and have now left the vBulletin community)

v4.0.6 - Saturday 29th January 2011
-- Changed: Hack name
-- Updated: Installation/Upgrade/Removal Instructions file
-- Updated: Screenshots
-- Fixed: New Threads, Replies & Quick Replies in twitter enabled forums are only tweeted when they will not end up on the moderation queue
-- Fixed: Hashtags now work in vBulletin v3.8.x (hack tested and working.... not tested on v3.7.x nor v3.6.x but should also work)
-- Added: Install code to ensure all server requirements are met and all folders and files have been uploaded before the hack will install
-- Added: AdminCP Options to allow for both User & AdminCP defined Hashtags for new threads in twitter enabled forums
-- Added: Two plugins to aid in diagnosing problems with this hack (disabled by default)

v4.0.5 - Saturday 27th November 2010 (first released to Wolfshead Solutions on Wednesday 27th October 2010)
-- Changed: Version number formatting
-- Updated: Installation/Upgrade/Removal Instructions file
-- Updated: Screenshots
-- Added: AdminCP Options to include/exclude forums
-- Added: Hashtags for new threads in twitter enabled forums
-- Added: 2 plugins to cater for new hashtag feature
-- Added: AdminCP Option to also use the Metamark url shortening service
-- Added: Version History file
-- Removed: AdminCP Option for tli.td url shortening service (now requires api key)

v4.0.004 - Saturday 18th September 2010 (first released to Wolfshead Solutions on Wednesday 18th August 2010)
-- Updated: Installation/Upgrade/Removal Instructions file
-- Updated: Screenshots
-- Fixed: Tweets for new replies now correctly use the AdminCP's timezone offset setting along with DST settings for the timestamp
-- Added: AdminCP Options to also use the TinyURL and tli.tl url shortening services
-- Added: Automatic check to see if tweet is longer 140 characters or not (and post tweet if not)
-- Added: Automatic truncate tweet title text in the tweet if the tweet (including the URL) exceeds 140 characters
-- Added: Automatic check to see if number of hourly calls to the Twitter OAuth API has been exceeded or not (and post tweet if not)
-- Added: Ability to use vBulletin "Friendly URLs" (available in vBulletin 4 and later only) or just plain URLs
-- Added: All files needed for this hack in one package (no longer necessary to download other class files separately any more)

v4.0.003 - Friday 2nd July 2010
-- Updated: Installation/Upgrade/Removal Instructions file
-- Updated: Screenshots
-- Updated: 3 plugins to now use OAuth instead of Basic authentication when posting to Twitter
-- Added: AdminCP Option to not use url shortening at all
-- Added: 4 new AdminCP Options for Twitter "Consumer Key", "Consumer Secret", "Access Token" and "Access Token Secret"
-- Removed: 2 AdminCP Options for Twitter "Username" and "Password"

v4.0.002 - Monday 1st March 2010
-- Fixed: When multiple forums selected in AdminCP Options, threads or posts were not twittered at all

v4.0.001 - Friday 19th February 2010
-- Initial vBulletin v4.0.x Release


Thanks[hr]Silver[/hr]
Thanks go out to Buro9 who marked his original hack Re-usable Code. Thanks also go out to Dragonsys for pointing me in the right direction to converting this hack to use OAuth authentication, and also to Videx who bugged me about updating this and I have noticed is doing a lot to support this hack.


Show Your Appreciation [hr]Silver[/hr]
Although not required, if you have enjoyed the benefits of this hack, and would like show your appreciation for my efforts, then please feel free to click on the Support Developer link and donate any amount you feel is appropriate.


Donations[hr]Silver[/hr]
I would like to thank the following people for their kind donations:

Download Now

File Type: zip ms_vb2twitter_40-v4_1_0.zip (22.3 KB, 508 views)

Screenshots

File Type: png phpinfo-curl.png (6.2 KB, 0 views)
File Type: png phpinfo-json.png (4.6 KB, 0 views)
File Type: png is.gd-preview.png (86.2 KB, 0 views)
File Type: png tweets.png (52.9 KB, 0 views)
File Type: jpg admincp-options.jpg (101.5 KB, 0 views)
File Type: png new_thread_3xx.png (102.3 KB, 0 views)
File Type: png new_thread_4xx.png (68.9 KB, 0 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
10 благодарности(ей) от:
eif, fxdigi-cash, iCrazy, iiioroh, LOGECT, MikeF, RichieBoy67, sodasusu, sose

Comments
  #692  
Old 06-13-2013, 06:26 PM
m13 m13 is offline
 
Join Date: Mar 2013
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

hi QFIT I have done what you have stated in your post and I have not worked. Maybe you did something more or not?
Reply With Quote
  #693  
Old 06-13-2013, 06:30 PM
Simon Lloyd's Avatar
Simon Lloyd Simon Lloyd is offline
 
Join Date: Aug 2008
Location: Manchester
Posts: 3,481
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

do you have cURL enabled on your server?
Reply With Quote
  #694  
Old 06-13-2013, 06:36 PM
m13 m13 is offline
 
Join Date: Mar 2013
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Simon Lloyd Yes CURL is Enable in my server everytime.
Reply With Quote
  #695  
Old 06-13-2013, 07:12 PM
m13 m13 is offline
 
Join Date: Mar 2013
Posts: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nice Work again! Thank very Much QFIT I reinstall the new files and modifying with your steps and now it works, at first I worked for was editing across the plugin, now it works, Thank you!
Reply With Quote
  #696  
Old 06-13-2013, 09:05 PM
rwoscott rwoscott is offline
 
Join Date: Jan 2007
Location: Melbourne
Posts: 142
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by QFIT View Post
You can get the two updated OAUth modules from https://github.com/abraham/twitteroa...r/twitteroauth

Place them in includes\twitteroauth.

Also, in the vBulletin 2 Twitter: Thread To Twitter plugin, you will see four lines near the end as follows:

// if ($twitterApiLimitCheck->remaining_hits > 0)
// {
$twitter->post('statuses/update', array('status' => $tweet));
// }

Comment the three lines out as I have above.

Warning, I do not know PHP. I just guessed that this would work, and it does.
Thanks.
Will give it a try tonight!!
Reply With Quote
  #697  
Old 06-14-2013, 02:02 AM
Videx's Avatar
Videx Videx is offline
 
Join Date: Feb 2007
Posts: 3,085
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by QFIT View Post
... Warning, I do not know PHP. I just guessed that this would work, and it does.
Not for us. No tweets have gone out since I did this, though a manual tweet just worked. Also, when my co-admin tried to "check the box to post simultaneously to facebook", he was taken to the github page for oauth.
Reply With Quote
  #698  
Old 06-15-2013, 01:26 AM
rwoscott rwoscott is offline
 
Join Date: Jan 2007
Location: Melbourne
Posts: 142
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Videx View Post
Not for us. No tweets have gone out since I did this, though a manual tweet just worked. Also, when my co-admin tried to "check the box to post simultaneously to facebook", he was taken to the github page for oauth.
Mine didn't work either.
I was taken to the this page: https://github.com/abraham/twitteroa...itteroauth.php
but with the new thread url.
Reply With Quote
  #699  
Old 06-15-2013, 07:04 PM
Simon Lloyd's Avatar
Simon Lloyd Simon Lloyd is offline
 
Join Date: Aug 2008
Location: Manchester
Posts: 3,481
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hey guys, mine took 24hrs but is now posting again!
Reply With Quote
  #700  
Old 06-16-2013, 12:44 AM
Videx's Avatar
Videx Videx is offline
 
Join Date: Feb 2007
Posts: 3,085
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Not ours. Still nothing. Almost fooled me though when my co-admin manually tweeted a thread, but it wasn't shortened and he admits to doing it manually.
Reply With Quote
  #701  
Old 06-17-2013, 12:20 PM
vinkenier vinkenier is offline
 
Join Date: Jan 2012
Posts: 22
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I also made the changes but still not posting. Has anybody a working solution? using vb4.2.1
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 02:18 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05410 seconds
  • Memory Usage 2,399KB
  • Queries Executed 26 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (2)bbcode_php
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (9)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (8)postbit_attachment
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete