Support » Plugin: Strictly Tweetbot » Not working with auto-tags / bit.ly

Viewing 9 replies - 1 through 9 (of 9 total)
  • according to the API this is the code that should be used :

    https://api-ssl.bitly.com/v3/shorten?access_token=050fec89e41bcc63096054314726fc5f4467XXXX&longUrl=http%3A%2F%2Fexample.com%2Fpage%3Fparameter%3Dvalue%23anchor&format=json

    This returns :
    { “status_code”: 200, “status_txt”: “OK”, “data”: { “long_url”: “http:\/\/example.com\/page?parameter=value#anchor”, “url”: “http:\/\/bit.ly\/1sMummi”, “hash”: “1sMummi”, “global_hash”: “L2d3h4”, “new_hash”: 1 } }

    http://dev.bitly.com/best_practices.html

    Come on Mr Author, do I have to hack the plugin myself or shall I just look for another plugin….

    two weeks later I half fix my own problem…

    I guess the author is too busy fixing his paid version of the plugin to bother reply to the free one …. :p

    anyway, log into bit.ly and go here:

    https://bitly.com/a/your_api_key

    apparently your user name isn’t your ‘username’…. its more like ‘o_5pv5gapXXX’.

    Auto tags is still broken and double posting though…. 🙁

    Plugin Author Strictly Software

    (@strictly-software)

    Hi

    Well I don’t spend all day watching this message board and as emails don’t get sent to me when someone complains I am not going to know if someone has a problem am I?

    Plus the day job sort of gets in the way of fixing peoples problems for free!

    There is no difference in the functionality for bit.ly in the free OR paid version. I use it on two big sites and tweet out to 10+ accounts depending on the content etc.

    I have had no issues with bit.ly and it always shortens my URL correctly.

    I notice you didn’t bother to print out the results of the “Test Configuration” button which would have actually helped me see what was going on with your site and bit.ly.

    Here is the output from a recent article on one of my sites when you run the “test configuration” button at the bottom.

    Starting Strictly Tweetbot Configuration Check…

    Testing Bit.ly configuration with URL: http://www.mysite.com.

    URL shortening API is set to: http://api.bit.ly/shorten?version=2.0.1&longUrl=http%3A%2F%2Fwww.mysite.com&login=mysite&apiKey=R_7e56f13949834272885c330bd7ab9955.

    Bit.ly returned a short URL of http://bit.ly/87CTuR and is configured correctly.

    (names and urls changed)

    And just by checking any of my Twitter accounts I can see it working as well even though Twitter wrap all their links in their own shortened code.

    So it must be a problem with your setup or something to do with your account as I have had no-one else complain about this in 3+ years and I have never had an issue with bit.ly.

    Maybe its new account sign ups that have this issue so older users are unaffected?

    Thanks

    Rob

    I notice you didn’t bother to print out the results of the “Test Configuration” button which would have actually helped me see what was going on with your site and bit.ly.

    Um, actually I did, look in the middle of my first post… what a shame you didn’t actually read my three messages outlining how I worked out what the problem was…

    If you put a link to ‘https://bitly.com/a/your_api_key’ next to ‘Username’ in the plugin configuration (since finding this on the bit.ly site is the problem) then anyone else would avoid this problem.

    Anyway, for the third time and after a month of waiting for you to notice I will repeat:

    “Strictly Auto tags is still broken and double posting”

    ps “and as emails don’t get sent to me”… click the ‘Notify me of follow-up posts via email’ tickbox underneath….

    Plugin Author Strictly Software

    (@strictly-software)

    Thanks for your so kind reply. It really urges me to try and help you out when people write response like that. Despite your attitude I will try to.

    By the way

    a) I do click on the notify emails at the bottoms of responses (that’s how I knew you had responded), but that is for follow up emails after someone has replied.

    What I meant is I don’t get notified when there is a NEW support message so I have no idea someone is having issues unless I check the site which I don’t have much time to very often.

    and b) The print out of your config page was split up into chunks rather than just a single print out of the screen after a tweet which isn’t helpful as I cannot see all the configuration options for each account. Therefore when you talk about double tweets without me seeing the output of the screen AFTER such a double post I cannot see if there is issues to do with content analysis or errors coming back from Twitter. I cannot see any messages from Twitter in any of your posts.

    And c) as for bit.ly I have just gone onto one of my sites and run the test button and got back (with changes to URL/KEY)

    Starting Strictly Tweetbot Configuration Check…

    Testing Bit.ly configuration with URL: http://www.mysite.com.

    URL shortening API is set to: http://api.bit.ly/shorten?version=2.0.1&longUrl=http%3A%2F%2Fwww.mysite.com&login=mysite&apiKey=R_7d39f1394983427245056e7a1106.

    Bit.ly returned a short URL of http://bit.ly/87CCCC and is configured correctly.

    Which works fine

    As you can see I am sending the request to

    http://api.bit.ly/shorten?version=2.0.1&longUrl=http%3A%2F%2Fwww.mysite.com&login=mysite&apiKey=R_7d39f1394983427245056e7a1106

    and getting back a URL

    http://bit.ly/87CCCC (changed)

    Also I am not using https.

    So…

    You say you are getting 2 posts sent out to an account.

    Without seeing the output of the window AFTER such a duplicate tweet (and I mean the whole output) there is no way of me knowing whether this due to your configuration or not.

    Many people set up the same Twitter account to have content analysis on that would mean the tweet would be sent out to the same account but with a different tweet format or different hashtags.

    Also Twitter does NOT allow duplicate posts therefore if the plugin did try send out the same EXACT tweet to the same account more than once you would see in the window next to the response from Twitter error messages like:

    duplicate tweet
    or
    this looks like an automated request

    or something similar.

    Also I have no idea if you have Jetpack installed and have Sharing enabled. Or any other plugins that can auto tweet or fire events that would trigger Strictly TweetBOT to run.

    If you had Jetpack installed you could easily be firing Tweets from Jetpack and Strictly TweetBOT – forgetting any other plugin.

    As for Strictly AutoTags which I use in conjunction with TweetBOT on multiple sites the way the two interact is below.

    First Strictly AutoTags has no ability to send Tweets. All it does if enabled is tell TweetBOT to wait until the Tagging has finished before running the TweetBOT code.

    If you didn’t do this you could (depending on the size of your tag list) run into issues where tweets are sent BEFORE tagging has finished so any Tweet accounts using post_tags would not be able to use them.

    Sometimes if you are lucky as WP doesn’t actually run all the hooks sequentially (for some reason – even with the priorities set differently) you could have some Tweets with post_tags used as #hashtags and some with none.

    I ran into this problem when my tag list grew too large. Due to the length of time to tag a post the tweets were being sent without #hashtags (post_tags). On small lists you might not notice but on large lists you would.

    This is why AutoTags has it’s own hook/event called : finished_doing_tagging and if TweetBOT detects AutoTags it waits for that hook/event to fire before running anything.

    As your talking about revisions being posted I would suggest turning them off in wp_config to see if that helps then you know the cause of the problem.

    However Strictly AutoTags fires on “save_post” which can be when you save a draft, post or a revision (I guess).

    The finished_doing_tagging hook only fires once tagging is complete and the Strictly TweetBOT only listens to that hook/event on the publish_post event.

    So saving a draft/revision should not fire TweetBOT as you are not publishing any posts.

    When a post IS published the TweetBOT checks for the existence of AutoTags and if found it uses the post_id to work out from the meta data whether the tweets have already run for that post or not. If they have it leaves it be.

    If no meta data exists e.g strictlytweetbot_posted_tweet which you can see below your posts if custom fields are enabled. Then it will wait for the finished_doing_tagging hook to fire for that post before running the TweetBOT.

    So as TweetBOT only runs when a post is published I cannot see how you are getting double posts unless you keep re-publishing the article and getting new bit.ly links which are making the Tweets unique enough for Twitter not to complain about duplicate postings.

    Another possibility is to ensure in AutoTags that you enable the correct options as you may be causing issues by always re-cleaning your content on each save operation.

    So turn on “Skip Pre-tagged posts” so that you are not constantly cleaning, removing tags then re-tagging the post on every save operation. Not only will this be eating your memory (more so with a big tag list) but if you have revisions enabled and auto-save etc you will be constantly removing and adding tags behind the scenes when ideally you want to do it once when you are finished with an article.

    I always save a draft first, see what tags are added, remove any I don’t want, add any it missed, then publish the post. The TweetBot only runs on the publish event so this is fine.

    With auto-blogging it would depend on how your RSS Feed importer adds posts into the system. I wouldn’t know. But many have been found to cause issues due to their methods. However I repeat TweetBOT only fires when a post is PUBLISHED so revisions should not cause tweeting – if you are re-publishing constantly then obviously that would cause re-tweeting depending on the AutoTag config (e.g Skip Pre-Tagged Posts and Always Cleanup on Re-Save)

    If you have “Always Cleanup on Re-Save” enabled then everytime you save a post, all tags will be removed first, deeplinking and bolding removed, then the AutoTagger will run again.

    As I said before I have never had anybody from either AutoTags or TweetBOT experience the same problem as you and I have tried to replicate it but cannot.

    Therefore I would try those suggestions and check your config for both plugins.

    Also try running just the two without any other plugins (especially Jetpack or Caching plugins) enabled.

    Hope this helps.

    My attitude is that I’m actually grateful for guys like you providing free plugins and I certainly don’t expect 24/7 support. I’m finding it quite frustrating that you’re stilll not actually really reading my replies…

    URL shortening works. Please stop referring to it or trying to help me fix it, I figured it out myself.

    As for Strictly Auto-tags, it’s handy but I can live without it and just run it manually once in a while if I want to.

    It’s not tweeting the same tweet, as established in the first line of the first post.

    2014-Sep-16 12:18:50 – Tweet > [test – please ignore http://bit.ly/YOqzfL #oculusrift #indiedev #tech #gaming #kickstarter] was posted successfully to FeelThree.

    2014-Sep-16 12:18:52 – Tweet > [test – please ignore http://bit.ly/YOqys2 #oculusrift #indiedev #tech #gaming #kickstarter] was posted successfully to FeelThree.

    This is the output on the auto post settings page.

    I disabled ALL plugins except your two and it still did it. I have only 90 tags so that’s hardly a problem. “Skip Pre-tagged posts” was ticked.

    Anyway, I’ve figured out the work around and what the problem seems to be and why you can’t replicate it.

    You wrote “I always save a draft first”.

    With both plugins enabled if I click ‘save draft’ before ‘publish’ it only fires once. So I think what you’ll find is that it’s tweeting the automatically saved draft (NOT the *manually* saved draft) as well as the published post together. That’s what you need to test if you want to figure it out.

    Never assume your users will do what you do, try not saving a draft and you’ll probably find the problem.

    Yes, it helped… 🙂

    Plugin Author Strictly Software

    (@strictly-software)

    I did say the only difference was the URLS from bit.ly which is what they seem to be.

    I responded to the bit.ly link because you say you fixed something which isn’t broken on mine or anyone else’s (as far as I can see) plugin/setup. Therefore I don’t know why you had to change the format when my non https version works.

    Also why Twitter is not responding with a duplicate post / automated response error and preventing the dupe post I don’t know – that is why I asked to see the WHOLE screen output AFTER a dupe post had been posted.

    Also I only save a draft when I manually post articles, and then only to check the tags, and re-add, edit, remove them etc.

    Only on a publish action will TweetBOT run.

    I also use a feed importer tool that automatically adds posts, and then tweets. This does not cause me issues.

    I also often edit articles and re-publish them. This never re-tweets due to the lock strictlytweetbot_posted_tweet (custom field) that is added after the post is first published and tweeted upon.

    If you read the logic of how the two plugins link together OR just the TweetBOT plugin you will see it only fires ON PUBLISH. So saving a draft / revision shouldn’t cause TweetBOT to run unless you are publishing and the lock file doesn’t yet exist.

    Therefore having revisions/auto-save turned on (which I disabled for performance reasons – but used to have enabled) should NOT send two posts.

    I would check the database and see what values you have in the records for post_status on the two tweets. If both say “publish” then you are publishing twice and if so I would be checking for the existence of the lock file > strictlytweetbot_posted_tweet after the first publish and try and find out why it’s not stopping the 2nd publish event.

    You can easily turn debug on IN the plugin to find out what is actually going on.

    Use this SQL top find what is happening in regards to revisions and publish statuses.

    select * from wp_posts where id=3434

    It looks like your tweets are 2 minutes apart so I don’t know what you are doing 2 minutes after publishing your post but NOT saving a draft first will have NO effect. It’s nothing to do with users doing X or Y it’s just that the TweetBOT only runs when the “publish” event is fired.

    If the strictlytweetbot_posted_tweet “lock” exists after your first publish then no tweeting is done on any subsequent saving.

    which ‘WHOLE screen output AFTER a dupe post had been posted’?

    Have you actually tried just publishing something without saving a draft?

    “saving a draft / revision shouldn’t cause TweetBOT to run” I never said it did.

    Just to be clear it isn’t POSTING twice, it’s tweeting twice.

    The post_status for the two tweets are ‘publish’ and ‘inherit’ in my database, but the link to the ‘inherit’ one is superfluous.

    I see no ‘debug’ option in the plugin, only ‘test settings’

    Please check the time stamps again, the gap is only two seconds, not two minutes.

    Plugin Author Strictly Software

    (@strictly-software)

    a) The Whole Screen output is when you go to the admin page for Strictly TweetBOT AFTER a post has been published. It will show you similar data to the Test config output but actually show you which accounts were sent to, any errors coming back from Bit.ly or Twitter and detail on Shrinking or Content Analysis e.g whether the Tweet met the analysis or not and was sent.

    Yes I publish 99% of all my articles without first saving a draft. As I said before I use a feed importer which imports articles from feeds. This doesn’t save a draft first. I also edit existing published articles and re-publish them (as a draft is not possible once published). I do then when I see old articles with tags I want to add or remove.

    I know its not posting twice and tweeting twice the question is why as the TweetBOT only runs on the “publish” event. So if you are not publishing the article the code won’t run.

    Also if you have published once the lock file strictlytweetbot_posted_tweet should be in your custom fields under the post for you to see. This lock file prevents future re-publishing from even running the TweetBOT. This is why I don’t understand how you can be getting 2 Tweets and why I wanted to see the WHOLE output of the admin panel AFTER one of these duplicate posts.

    Also the 2 second gap needs to be explained by yourself. How is it happening? Are you hitting the re-publish button 2 seconds after the 1st publish or is it a revision/autosave?

    If only one record in the database is “publish” then this should be the one that is Tweeted against.

    You can try disabling autosaves (or setting the time long into the future) and revisions with this code in WP-CONFIG.php

    /* turn off post revisions */
    define (‘WP_POST_REVISIONS’, false);

    /* set auto saves so far in future they shouldn’t get saved on autoposts */
    define( ‘AUTOSAVE_INTERVAL’, 10000 );

    The debug settings are right at the TOP of the main class. YOu will need to edit it to turn debug on for your IP only. Then only upload the file just before you are about to hit “publish” this will show you a white screen with lots of debug but it will show you whether two tweets are being sent.

    However from your first example they are 2 second apart so only you can explain why that is. Unless you have the pro version that is setting delays between each tweet then you must be doing something to cause the publish button to be hit twice. Maybe your tag list is SO big that by the time it gets to add the lock file it is over 2 seconds and you have either re-published or had an auto publish that hasn’t been stopped by the lock file.

    However as far as I am aware AND from your DB results, if the record doesn’t have publish in it then it’s not a published post and the TweetBOT only runs on published posts.

    Edit the is_tweet_me function so your IP address returns true so only you see the debug.

    // put your IP here
    if($ip == "182.34.48.25"){
    	return true;
    }else{
    	return false;
    }

    Then ensure the following lines of code that ensure debug is on if your IP is the one being used is set e.g

    // if the DEBUG constant hasn't been set then create it and turn it off
    if(!defined('TWEETBOTDEBUG')){
    	if(is_tweet_me()){
    		define('TWEETBOTDEBUG',true);
    	}else{
    		define('TWEETBOTDEBUG',false);
    	}
    }

    Once debug is on you will get lots of debug when a post is published.

    Yours is a weird situation as no-one else has had it and I cannot replicate it.

    Unless you need auto revisions / auto save on then try turning it off to see if that stops it.

    If that does stop it then you know that your auto-saves are set too close together and not giving any publish event enough time to run the tweetbot and then set the lock flag. If this is the case and you want to keep them you could work out how long it takes to run the Tweets and set your auto save time to that time + a few seconds for safety.

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Not working with auto-tags / bit.ly’ is closed to new replies.