Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Shortwave: iBeacon-powered messaging (getshortwave.com)
70 points by siralonso on May 11, 2014 | hide | past | favorite | 43 comments


The app is rated "12+" in iTunes because of "Fear / horror-related themes" and "drug and alcohol references."

This is surprising for an innocent messaging app, but then again, I've never submitted to the App Store. Does it require that you make these disclaimers just because users could potentially discuss the topics using your platform?


Yep. I believe Chrome is rated 17+ in the iOS store because people can visit arbitrary websites with it.

Really, though, the app age-ratings system would work much better flipped around. There are certain apps that either have no user-generated content/social interactions, or which restrict what user-generated content/social interactions they do have to being nonthreatening (usually by not allowing that many degrees of freedom in expression. thatgamecompany's Journey is a good example.)

Games that are safe for kids could ask Apple to give them additional vetting; Apple could then declare them to be explicitly "safe for children", put them on additional "For Kids" lists, etc. Unlike the current setup, there would be no such thing as an "adult" app--just an "unvetted" app. The parental controls, if turned on, would prompt a parent to independently evaluate unvetted apps.


There is something called "made for children" on the app store. It's an explicit flag that you can set on any app.


You're pretty much spot-on. When you submit to the App Store, they give you boxes to tick for each potentially offensive type of content. If you have a lot of user-generated content, you tend to tick boxes that apply to content you think users might generate.

This really needs to be fixed - plenty of apps carry a rating that could fluctuate substantially, because users can write what they wish.


See also, FireChat[0] - released a month prior to Shortwave.

[0] https://itunes.apple.com/us/app/firechat/id719829352?mt=8


Yeah! Firechat came out while we we were building Shortwave.

They use the iOS multipeer API, which you should definitely check out. It can use infrastructure wifi, p2p wifi, or Bluetooth. The drawback is that it requires both apps to be in the foreground to establish a connection - think Airdrop.

https://developer.apple.com/library/ios/documentation/Multip...

There's also a really good WWDC talk if you've got an iOS dev account.


I thought that used wifi/Bluetooth rather than iBeacons.


iBeacons is bluetooth though (you interact with them via the core bluetooth framework)... FireChat does apparently also use wifi though since they use the multipeer connectivity API.


Isn't "shortwave" radio used for extremely long distance communication?


Yeah, I was disappointed to find that the name had nothing to do with the underlying technology or the actual use-case. It's just a super-short-range messaging app.


FWIW, "shortwave radio" is a very historical name: the 1.6-30MHz range is no longer "short" in wavelength relative to even broadcast FM at 88 to 100, much less cell starting at many hundreds of MHz, much much less bluetooth at 2.4 GHz. Really, I think "shortwave" applies pretty accurately given the use of bluetooth, and considering the shorter the wavelength, the greater the attenuation with distance.

But you're right, it's not shortwave radio. And since your cellphone doesn't have any shortwave radio hardware on board, I'm not too bothered by that :)


we've released a similar networking app called Loopd (http://getloopd.com) which also uses iBeacon technology to let you connect with people at a social gathering, also includes messaging, tagging, and showing context of where and when you met


I'm not sure if anonymous is the way to go like it is with shortwave. at least in applications I can imagine, something like Loopd would be more productive in finding the right people to chat with. looks like shortwave is like secret but for messaging - which could be interesting but also sounds like a chicken and egg thing.


I try to keep track of new contacts I meet in a google doc with info like name, where I met them, what they appeared to be (manager, secretary, etc), what they looked like... Way too much work and it's hard to look through. Can't wait for this app to be on Android! I keep hearing good things about it :)


thanks Alex! We're partnering with Evernote and Linkedin to create an even more robust contact management system, so stay tuned!


Thanks for the reply! Saw you guys have a facebook group - is this the best way to follow the progress?


Actually, I find loopd to be the most useful application of iBeacon I've personally used so far. It's been on my phone since monday and there are about 400 contacts already.

how is it going, ayhoung? are you one of developers?


thanks! yeah i'm the lead dev behind the app. We're trying to make the best face-to-face networking app for conferences, trade shows, etc. Let me know if there's anything else we should add, we're adding features like mad!


Can you remove/align the localizations on the phone number in loopd? I'm in Australia and can't put in a phone number.

Looks good otherwise, I'll try it around Sydney tomorrow.


yeah it was an oversight to lock it into US-based numbers! We'll release a version soon that has more support for international numbers


you are killing it. animations are so smooth. and it doesnt eat my battery like other apps I used before.

since you know this stuff really well, could you recommend some good articles about ibeacon? what did you use to build your app?

oh, and by the way. do you have an api? I'd like to build import to my basecamp account.


we only have evernote / csv support at the moment, but we hope to integrate CRM systems soon like Salesforce and Basecamp!


It's not to be found in the AppStore. Have you geo-limited it to ensure you grow less? :)

[EDIT: my mistake, it was loopd not loopt]


haha yeha. too many people confuse us with loopt :(


Could pick a slightly more inspiring example chat for the landing page!


I agree it's a terrible screenshot. Without any context I have no idea what those icon -> icon dividers mean. I guess its someone changing their icon?


I thought about an app like this years ago...a proximity messaging app that allows strangers to connect in public places that is otherwise difficult (ie. the bus, a flight, a restaurant, sporting event). I think the smart way to do it is to limit users identification/info to simply a photo. I visually identified a person physically and can then message them based on the photos of active users around me.


Interesting, when looking at it with BLExplr I see it presents a Battery and Current Time service. Are you using iBeacon basically just to discover nearby devices? Pretending to be an iBeacon and then listening for your uuid to wake up the other clients in the area?

It appears to use wifi for the chat once it finds a neighbor, are you using the iOS multipeer API once for the actual chat conversations?


The battery and current time service I think is inherent to the iPhone, not necessarily whatever software is running. I've seen that a lot when doing totally unrelated BLE/iBeacon stuff. A... clever combination of CoreBluetooth and iBeacon is used for discovery, messaging is actually handled via data connection. We toyed with some ways to transfer data directly (multipeer and decidedly-not-multipeer), but we haven't used those in this release.


Not to be confused with http://shortwaveapp.com


hey are you thinking of open sourcing any part of the code? i can think of a lot of further applications of this, especially relating to mesh networking


Hi! I helped build Shortwave. There are some interesting limitations to the ibeacon and corebluetooth APIs that we used - corebluetooth can broadcast in the background (but not receive) while ibeacon can receive in the background (but not broadcast).

Our goal was to be able to recognize that two shortwave users were within range of each other, even if both phones were locked, so we had to find a way to make these two APIs work together.

I'm working on a blog post that details how we did this. I hadn't thought of open-sourcing the code, but people seem interested so I'm more than happy to do so. I do have to warn you - this was my first foray into objective-c, so I'm sure there will be some shortcomings :)

I'll post it to hackernews when I wrap it up. I'm also @alonsoholmes on twitter, in case it doesn't make the front page.

Cheers!

- ah


Isn't iBeacon built on top of Core Bluetooth? What stops you scanning in the background with CB?


Nothing. You can continue to range and monitor in the background, but you can not be a beacon in the background while using the blessed methods for doing so. I haven't dug in to CoreBluetooth directly, but the CLLocationManager abstraction layer doesn't allow you to broadcast in the background.


Yes that's true. Check https://github.com/CharruaLabs/AltBeacon to understand how it's done.


You should patent it.


There is nothing to patent, is just iOS Bluetooth Low Energy.


Hi, We are working in a project that also uses Bluetooth Low Energy for nearby interaction (though is not a chat). So we do some similar stuff to have Beacons advertising in the background. Due to the demand we saw here, we decided to open source our library which is called AltBeacon. You can find it in https://github.com/CharruaLabs/AltBeacon , we need contributors so feel free to check it and contribute.


It's actually very simple. We've released a much more featured version of this at http://getloopd.com


Are you guys planning to open source any of this? I'd love to dig into this a little deeper....


Can you give some pointers on how you developed this app?


This is genius. And it shall incite scandal.


> Talk to anyone

Talk to anyone using an iPhone




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: