Xojo Plugin
Xojo Plugin
Twitter - Tweet with Multiple Images
Example to post a status update with multiple associated images/photos (or videos).Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// ----------------------------------------------------------------------
// This initial setup, which involves setting the OAuth1 properties and connecting
// to api.twitter.com, is only required once at the beginning. Once connected, the same
// object instance may be re-used, and if necessary, it will automatically reconnect
// as needed.
// Assume we've previously obtained an access token and saved it to a JSON file..
Dim json As New Chilkat.JsonObject
success = json.LoadFile("qa_data/tokens/twitter.json")
Dim rest As New Chilkat.Rest
Dim oauth1 As New Chilkat.OAuth1
oauth1.ConsumerKey = "TWITTER_CONSUMER_KEY"
oauth1.ConsumerSecret = "TWITTER_CONSUMER_SECRET"
oauth1.Token = json.StringOf("oauth_token")
oauth1.TokenSecret = json.StringOf("oauth_token_secret")
oauth1.SignatureMethod = "HMAC-SHA1"
success = oauth1.GenNonce(16)
success = rest.SetAuthOAuth1(oauth1,False)
Dim bAutoReconnect As Boolean
bAutoReconnect = True
success = rest.Connect("api.twitter.com",443,True,bAutoReconnect)
If (success <> True) Then
System.DebugLog(rest.LastErrorText)
Return
End If
// This ends the initial setup...
// ----------------------------------------------------------------------
Dim tweetContent As String
tweetContent = "This is a test tweet with multiple images."
// Send a tweet...
success = rest.ClearAllQueryParams()
success = rest.AddQueryParam("status",tweetContent)
// Add list of comma separated media_ids to associate with the Tweet.
// You may include up to 4 photos or 1 animated GIF or 1 video in a Tweet.
// The image needs to have been previously uploaded. The upload response gave us
// the media ID we'll use to associate this tweet with the image (or video)
// See Twitter Upload Media for sample code.
success = rest.AddQueryParam("media_ids","793137045996646400,793192201392041984")
Dim resp As String
resp = rest.FullRequestFormUrlEncoded("POST","/1.1/statuses/update.json")
If (rest.LastMethodSuccess <> True) Then
System.DebugLog(rest.LastErrorText)
Return
End If
Dim jsonResponse As New Chilkat.JsonObject
jsonResponse.EmitCompact = False
success = jsonResponse.Load(resp)
If (rest.ResponseStatusCode <> 200) Then
System.DebugLog(jsonResponse.Emit())
Return
End If
// Show the successful response:
System.DebugLog(jsonResponse.Emit())
System.DebugLog("Success.")