Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I am looking for a good geolocation api to use from bash. I want this call to return at the very minimum the name of the city I am in, and the state.
I imagine that there must be some site I can curl, or some scripting language that has a package that works. The machine does not have a GPS, but it does use wireless internet most of the time if that is needed.
I was looking at this problem again recently and found whereami, a geolocation bash script for Mac OS X Snow Leopard, which takes advantage of Core Location. This will tend to be much more precise than IP geolocation, and it works well in my tests.
Since whereami is not (officially) available for Swift 2 and Swift 3, I digged a bit deeper and found locateme what does its job on OSX 10.12.4:
Its asks for permission the first time, and then it works without any additional interaction. Also, the format parameter is nice:
geolocate-cli is still in alpha but should do the job.
Scraping the first Google hit result for "geoip" seems to work easily enough.
$ curl http://www.maxmind.com/app/locate_my_ip |
> awk '/<table>/{RS=RS RS}/tblProduct1/'
I haven't checked their EULA to see if using their service this way is okay, but they do also provide GeoIP libraries for C, Perl, Python, etc. with a "lite" database that you can distribute (with conditions).
If your platform is a *nixlike that supports network-manager, you can use this script:
curl "https://maps.googleapis.com/maps/api/browserlocation/json?browser=firefox&key=AIzaSyDBgL8fm9bD8RLShATOLI1xKmFcZ4ieMkM&sensor=true" --data-urlencode "`nmcli -f SSID,BSSID,SIGNAL dev wifi list |perl -ne "if(s/^(.+?)\s+(..:..:..:..:..:..)\s+(.+?)\s*$/&wifi=mac:\2|ssid:\1|ss:\3/g){print;}"`"
Check out How to create a script to query Google Browserlocation for more details.
Notice that there's some limit to this service. It was working fine, at first, but now I get "status" : "OVER_QUERY_LIMIT". I don't know what the limit is because I can only seem to find geocoding references, but if anyone knows, please tell me!
Wireless internet meaning WiFi, CDMA2k, UMTS, EDGE... ? And your carrier? Not that it matters.
Really. I'd start investing in a GPS dongle.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
Anyone know of a good free API to get the coordinates of a zip code? What I am currently using is
http://forecast.weather.gov/zipcity.php?inputstring=00000
But this is not a real API and is subject to change. I do not need exact locations, the purpose of this information is to find sunrise / sunset times.
Since I just needed to geocode a bunch of addresses and store it in the DB, I could not use the Google API as it'd be a TOS violation. Also I was looking for batch processing if possible. My search lead me to 2 APIs.
The first API was from MapQuest. It was easy enough to sign up for a key and start using the service. The problem with the free version is, sometimes, you get back blank co-ordinates for addresses. Apparently the enterprise version does not have this issue. Alas, I had to can this as it does not suit my needs.
The second gem I stumbled upon is from the United States Census Bureau. It provides REST interface for API access and there is no need for an API key. So far in my tests, I've had a match returned for all my queries. My only concern here is I see no verbiage about usage limits etc. Here is a link to the documentation: http://geocoding.geo.census.gov/geocoder/Geocoding_Services_API.pdf
I think you should take a look at the Google API.
I've had success using Yahoo Placefinder API.
You can also use Google Map's API, but I believe that using that comes with certain requirements to embed map data into your site as well.
<?php
$zipcode=$_POST('zipcode');
$url = "http://maps.googleapis.com/maps/api/geocode/json?address=".$zipcode."&
sensor=false";
$details=file_get_contents($url);
$result = json_decode($details,true);
$account_lat=$result['results'][0]['geometry']['location']['lat'];
$account_long=$result['results'][0]['geometry']['location']['lng'];
echo "Latitude :" .$account_lat;
echo '<br>';
echo "Longitude :" .$account_long;
?>
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I just installed graphite/statsd for production use. I'm really happy with it, but one of my co-workers asked me if there was a way to make it look prettier. Honestly, I can't say that I haven't wonder the same.
Are there alternatives to the Graphite UI that do a better job rendering data, perhaps using one of the awesome frontend graphing libraries and http push?
Try Grafana
It has a very nice UI and advanced dashboard and graph editing features. Very simple to install.
On the latest Graphite docs page, there is a list of tools which work with Graphite. For reference, here are the ones which seem to be prettification-based:
Charcoal
Descartes
GDash
Giraffe
Graphitus
Graph-Explorer
Graphene
Graphiti
Graphsky
Pencil
Tasseo
Additional interesting resources:
Graphitoid: (an Android-App dashboard)
Graphitejs: (a jQuery plugin for making/displaying Graphite graphs)
Seyren: (an alerting dashboard for Graphite)
For details on each one, check out their pages, or take a look at the description on the first link I added, for the Graphite docs page.
If you don't want to code up your own frontend, you can use Graphiti. It is simple to use and looks great!
A-ha! I did some googling and found Cubism.js which does exactly what I need.
It has integrated support for graphite and provides the necessary graphing components (as a plugin to D3) to create beautiful real-time dashboards.
I can see this is a bit old, but thought I'd add to it for future prosperity:
I went through a few of the options listed in #troy's response (and a few others). You can see my impressions in my blog post
You can try Graphene which is a layer above Graphite:
http://jondot.github.com/graphene/
Anyone tried Orion? Seems to be a good option but overlooked so far.
https://github.com/gree/Orion
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
How did they implement text to speech (TTS)? Is there an open, free API for TTS synthesis? I know about Google Translate, but the license is not clear to me (another issue is that they block a request if it contains a referrer). Any idea?
Majdron,
I'm a lead developer at Quizlet. We're using a combination of our own technology and licensing/purchasing TTS software from several different companies.
There are some open source TTS engines/voices:
http://www.cstr.ed.ac.uk/projects/festival/
http://www.babelfish.org/tts-free.htm
http://espeak.sourceforge.net/
http://freetts.sourceforge.net/docs/index.php
http://mary.dfki.de/
Good luck!
The voices sound exactly the same as http://www.neospeech.com. Also, their list of languages match exactly.
It's not free, you have to license it.
Google has just introduced browser-based access to its speech engine through HTML5.
http://slides.html5rocks.com/#speech-input
To get this page to work, I launched the Chromium browser as follows in Ubuntu:
$ chromium-browser --enable-speech-input
I'm not sure if this works in other operating systems.
Another interesting project is WAMI from MIT:
http://wami.csail.mit.edu
I don't know which specific engine Quizlet are using, but assuming they are using a free service then it might be TTS-API (http://tts-api.com/) which was recently featured on Hacker News.
From what I know is the only "free-to-use" TTS web-API out there. Please comment below if I'm wrong - I'd love to find similar free services. There are a lot of pay only services out there but very very few truly free ones.
Since finding out about TTS-API on HN I've successfully used it in a recent app project. Since the TTS is only a HTTP fetch away I was able to quickly integrate it in both the iOS and Android versions of my app. The service appears to be very quick, so no complaints so far :-)
Nobody gave the right answer. They have their own TTS engine that is connected to a single file located at http://quizlet.com/tts/en.mp3 the file takes arguments with it so the url http://quizlet.com/tts/en.mp3?v=14&b=QXJlYSBvZiBwYXJhbGxlbG9ncmFt&s=m5dx52Q. says "Area of parallelogram" thanks the first base64 string labeled b. I have not discovered what v or s are used for but I know they are essential for making the file speak. I will do more research and get back to this answer.
jj b is correct. The core engine of Quizlet's speech features is Neospeech, and uses Neospeech's VTML (VoiceText [TM] Markup Language) exactly, as far as I can tell.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
This weekend I installed Windows 7 (brilliant!) and there I found this genious tool called Problem Steps Recorder. Apparently a tool that came with the beta bug reporting tool thingy.
I am currently trying to document some application usages for other developers. (In this exact case, how to get Showplan XML Statistics in SQL Profiler and some basic usage of Database Engine Tuning Advisor). And I was thinking that a tool like that Problem Steps Recorder with be perfect for this! Only problem is that it is only in windows 7 (?) and the output is an mht file which also contains some general bug issue text etc...
Anyways, does anyone know if this tool is available in a more general version? Or if there are some free and smooth alternatives which does kind of the same thing for Vista (and other windows versions if possible)?
Maybe Wink is your answer.
I'm looking for a better capture tool for both user documentation and reporting bugs. The best "steps recorder" that I've seen is bundled with Testuff. Their Test Runner app lets you select a region to record (video). It captures every mouse click and logs every key press along side the video playback. Of course, it's designed only for reporting bugs to a development team.
I'm still using SnagIt (cheap, not free) for capturing screens and adding annotations. I also have Camtasia, but that's definitely not "free" as you requested :)
I just stumbled upon 'Imago recorder', available via various software / download sites. It's not pretty but it does the trick and it's free.
It's currentyl available here
Additional option you should definitely pay attention to is StepsToReproduce. There are several options for recording (screen/window/region) and nice powerful annotation tools. And it's also free!
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
I'm looking for a way to list all connected storage devices, like Disk Utility does. That means also for not mounted volumes.
The second thing I'm looking for is more detailed information, to what port a device is connected, the size of it and the block size of it.
Is there an API to do this? I prefer Cocoa, but a unix API is also ok.
What I've found so far
diskutil can be used on the command line.
getmntinfo and getfsstat return information about mounted devices.
You can use the the various IOKit APIs to search for all block devices. You can check out the documentation, specifically you want to pay attention to IOServiceGetMatchingServices. There is example code to find all CD-Roms media in the system that could be easily adapted.
The command:
diskutil info /Volumes/*
might work for you.
There is also FSGetVolumeInfo(). I am not sure if it works for unmounted volumes.
Check out df in the terminal and statfs (loot at man 2 statfs).
These will both tell you the size, what is free and used, and statfs (in whatever language you are using) will give you block sizes and such.