Twitter StreamingAPI with Pusher - twitter

I am working on a project, which has a few dependencies. I would like to have your insights and best practices on a few matters.
Which is the right Twitter Streaming API to get the tweets from the authenticating user?
Does it make sense to hook that streaming API to Pusher and hook my Arduino on Pusher as well?
What is the best library to hook the streaming API to a Laravel backend?
I sincerely hope that this question is within the rules of StackOverflow, as I am not sure. I would really like to gain this information.

https://dev.twitter.com/rest/reference/get/statuses/home_timeline
You can definitely easily hook an incoming feed from Twitter up with Pusher (see next answer). And Pusher does have an Arduino library that should help you too.
Pusher has a solid PHP library so it will be easy to publish data from a Laravel application. The tricky part may be consuming the Twitter streaming API from Laravel and PHP.Phirehose claims to offer access to the streaming API from PHP.
If you could consider other technologies then there's an in-progress Pusher + Twitter Streaming example that you could look at written in Node. There's also this older example that uses Python.

Related

Gcloud, ruby on rails, speech to text

I am trying to use Google's new speech to text api: https://cloud.google.com/speech/docs/rest-tutorial . They currently have python and node.js examples.
Unfortunately, my application is RoR. I was looking through https://github.com/GoogleCloudPlatform/gcloud-ruby , which is a gem that interacts with google cloud services (but not speech). I was hoping that I could use the two together to come out with a working solution, but my knowledge of how to use API's is limited.
Enough background, my questions are:
Does anyone know if Google is going to put out a Ruby version of the speech to text api? If yes, is there a timeline?
If I am impatient, how would I go about using their current API's. By this I mean, is there a good resource for someone to learn how to use generic API's?
The gcloud-ruby gem now supports google-cloud-speech.
To address your other questions, there are no language specific versions of the APIs themselves. They are all HTTP APIs (either REST or gRPC), so they can be used from anything that can make HTTP requests. It can be tricky to use them directly though, because of things like how authentication is handled, which is why client libraries exist for different languages.
If you want to learn more about how to use the REST APIs directly, first take a look at the doc 'Using OAuth 2.0 for Web Server Applications' to find out how to manually authenticate, which has examples for Ruby and raw HTTP/REST.

Has Twitter streaming API anything to do with share-count API?

I want to develop some stuff with the twitter streaming API and twitter4j in university. I read now about shutting down the share-count API (https://blog.twitter.com/2015/hard-decisions-for-a-sustainable-platform). Will this effect the twitter streaming API and how it works in any way? Because I need this service for at least 6 month.
The Share-Count and the Streaming API do not cross paths, actually you can obtain the share-count from the Streaming API data as suggested in this post.
Since they are discontinuing that service, it will have no effect on the data that you're able to obtain from the Streaming API so it won't effect the progress of your project.
As far as GNIP goes, that's overkill, it should not have been suggested at all. For research base, especially during initial stages and possibly later phases, the Streaming API will provide you with excellent amount of data. You can even request a limit increase through Twitter's Sale Department but it's up to them to make the final decision. They can be contacted at data-sales#twitter.com
Share count and streaming are totally separate APIs.
If you need guaranteed access, I suggest paying for Twitter's GNIP service - https://www.gnip.com/

Twitter push notifications using Spring Social .NET

I'm using Spring.NET Twitter extensions in an application. Instead of querying in a loop for twit updates (pulling), I just want to listen to twits of interest (hashtags, # mentions, keywords or updates in timeline) and receive push notifications as they come. So I think the way to do it is to use an event model such as Observables, however, I can't find anything in the API to handle this nor any samples to demonstrate it. I would appreciate if anyone can put me in the right direction for this functionality. Thanks.
Spring Social Twitter only recently started supporting Twitter's streaming API. But that's for Java and your question is about SpringSocial.NET. I doubt that SpringSocial.NET has support for this yet. But I'll ping Bruno (the SpringSocial.NET project lead) and see if he can chime in here.
Until SpringSocial.NET supports Twitter's streaming API, your options are to continue polling (which is non-ideal due to rate limiting concerns) or to implement streaming support on your own. I'm sure Bruno wouldn't mind a pull-request to add streaming support to his project. :)
To be clear, SpringSocial.NET is not the same project as Spring Social and the two projects are only loosely related (in that I know who to email if there's ever a question about SpringSocial.NET).
Rx will just allow you to expose Push based API nicely. If the API does not support Push then you could use Rx to Fake Push by doing polling but expose it as if it was push (Observable.Interval or Schedulers etc).
You first will need to find how Twitter exposes Push based notifcations. If your Client (Spring.NET Twitter Ext) does not support this you are stuck with polling (via Rx or not).
It appears that you want to look at Twitter Streams API (https://dev.twitter.com/docs/streaming-apis)

What to consider first when designing a meta-search engine using Erlang, Mnesia and Yaws?

Can someone explain to me what to consider first when designing a meta-search engine using Erlang, Mnesia and the Yaws web server? This engine should have SMS capability but I am still wondering how I am going to incorporate this feature...
The meta search engine, you need REST or Ajax APIs from Google, Yahoo and Bing. Below am providing you with examples which you may use within your back end HTTP capable Library or your front end JavaScript. I personally use mochiweb and yaws Appmods.
For example: Google has an Ajax search API which works like this:
http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=computers
Hitting that URL will give you a JSON Object which contains several search responses. In this case, the search term is "computers"
Yahoo has what it calls Boss APIs. An example of Yahoo Rest search API using Boss is here below:
For an XML result:
http://boss.yahooapis.com/ysearch/web/v1/animals?appid=APPID&format=xml&start=1&count=3
For a Json result:
http://boss.yahooapis.com/ysearch/web/v1/animals?appid=APPID&format=json&start=1&count=3
Analyse the whole HTTP GET query very well, you notice something they call an APPID. This you will get when you register with them here. I cannot give to you my APPID, you will have to get yours,then paste it in there and you will be good to go. Yahoo has something more powerful called
YQL. In the above query, the search term is: "animals"
Bing as well has got an API for you, but you will need an APPID:
http://api.bing.net/json.aspx?AppId=APPID&Query=love&Sources=Web&Version=2.0&Market=en-us&Web.Count=10
Above, the search term is: "love"
About the Meta Search Engine
You have a web page, people enter search queries in this page. You use your javaScript (JSONP). JSONP could be implemented in any one of your favorite JavaScript Framework you use e.g.
JQUERY,Ext JS,Dojo, Prototype e.t.c
Then you would have to parse the XML or JSON response from the three sources (Google, Yahoo and Bing),and make an appropriate display for your users to navigate the results.
About the SMS part
SMS capability is attained using SMS Gateway. There are several open and close source SMS Gateways. the most powerful of them all is the one built in Erlang/OTP technology called: OSERL, but to test it, you need direct connection with an SMSC in anyone of your local service provider.You need a Port on their SMSC, a user name and a password.There is another one which is better for development reasons called: NowSMS because it has capabilities for USSD, Modem Internet Communication, SMSC service connectivity, HTTP 1.1 and HTTP 1.0, configuration of two-way SMS messaging e.t.c from a Web App to-and -from the SMS Gateway. Go to their site, grab the trial version, follow the documentation and then configure two-way from your web app to the gateway and vice versa. Since NowSMS is not free, you can try: Kannel, it is open source but you will need help from the community to set it up on your Unix or Linux box.
More on incorporating SMS capability in Web Applications can be found:
Here
I also asked once a Question related to development of a powerful search engine using Erlang, Mnesia & YAWS webserver on Stackoverflow. I got plenty of good answers and responses.
Please CLICK ME!
Hope this may help. As I am not sure about SMS thing.

Twitter Api for .NETApplications

Can any one suggest me to best C# twitter api for developing application with twitter api?. I want all the advance functionality of twitter in my application.
Twitterizer
Twitterizer is a .NET class library that provides an easy-to-use interface for the Twitter web api. It is written for developers. It's features are easy to discover and follow a consistent design pattern. http://www.twitterizer.net
LINQ to Twitter, if your app is LINQ-enabled.
"LINQ to Twitter is a LINQ Provider for the Twitter micro-blogging service. It uses standard LINQ syntax for queries and includes method calls for changes via the Twitter API."
I haven't used this myself, just found it when browsing and passing it on. It's interesting that if you search with the #linqtotwitter hashtag, you can see all the test tweets, which all start with "Ç".
Kindly follow the below link to get latest API for Twitter
Latest Twitter API
May I humbly suggest TweetSharp. It has full support for the API including the Search API and updates are released as soon as possible to address changes in the twitter API. (for instance, it already supports the upcoming GeoLocation APIs).
It's open source (MIT license), so you can use it free for pretty much anything you want.
Disclosure: I'm a project owner.

Resources