Xojo Plugin
Xojo Plugin
Emoji Tweet
Demonstrates posting a status update that includes an emoji character.This example is deprecated and no longer valid.
Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This 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...
// ----------------------------------------------------------------------
// For this example, I've pre-created a text file containing two emoji
// characters (the "ghost" emoji, and a "face savouring delicious food" emoji).
// This text file was saved using the utf-8 encoding.
// The utf-8 bytes for the ghost emoji are 0x9f 0x91 0xbb. (Note: This is the utf-8
// representation that does not use surrogate pairs.)
//
// The utf-8 bytes for the "face savouring delicious food" emoji are \xF0\x9F\x98\x8B.
Dim sbText As New Chilkat.StringBuilder
success = sbText.LoadFile("qa_data/txt/ghost_emoji.txt","utf-8")
success = sbText.Prepend("Test tweet using two emoji chars: ")
// Send a tweet...
success = rest.ClearAllQueryParams()
success = rest.AddQueryParam("status",sbText.GetAsString())
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.")