| ▲ | Show HN: Baby's first international landline(wip.tf) |
| 156 points by nbr23 5 days ago | 45 comments |
| Hi HN, As a weekend project, I hacked together a physical phone, a Raspberry Pi running Asterisk and Twilio, to let toddlers safely make international calls. I’ve documented the setup in this write-up and published the code + Ansible playbooks on GitHub so others can replicate it. I built this so kids of expats can easily stay in touch with family on other continents. Would love feedback from anyone who’s worked on something similar or tries building this themselves! writeup: https://wip.tf/posts/telefonefix-building-babys-first-intern...
github repos:
- https://github.com/nbr23/ansible-role-telefonefix
- https://github.com/nbr23/allo-wed |
|
| ▲ | robertlagrant a minute ago | parent | next [-] |
| I would love a way to make an IP phone that just lets my kids call their friends on their phones, and no-one else. I will take a look! |
|
| ▲ | jeduardo 5 hours ago | parent | prev | next [-] |
| One sidenote is that the Twilio part is harder than it looks. Not because of technical factors, but because of the paid requirement. Twilio refused to take my money and upgrade me to a paid account, even though they forced me to go to their confusing KYC procedure, where they asked me many times to provide the same set of documents. Support was useless, it looked like an AI bot repeating the same thing, but this was before the widespread usage of AI bots. Eventually I gave up and went to Telnyx, which had a better KYC process and actual humans behind support that could resolve any quirks with KYC. Apparently not being born where you live breaks a lot of the automation behind some of these processes, go figure. |
| |
| ▲ | dwedge 20 minutes ago | parent | next [-] | | After what Twilio did to Authy users I'd be very reluctant to use them for anything unless they were the only choice. | |
| ▲ | VenturingVole 2 hours ago | parent | prev [-] | | I'm not sure if they've changed the process since your issues (hopefully) - I was using their trial and when it expired had to go through the KYC process. They under-promised by saying two working days to reach out, but everything was wrapped up within an hour and done over email. I nearly moved away from Twilio having read the negative feedback, but my personal experience so far was very prompt support. | | |
| ▲ | jeduardo 2 hours ago | parent [-] | | Hey, that's good to hear. Was it a recent experience for you? Maybe they heard some of the feedback and acted on it. This encourages me to revisit them, not because I'm unhappy with my current provider, but rather because Twilio offers what I need (a number that can receive and send SMS) in regions where my current provider doesn't. | | |
| ▲ | VenturingVole 39 minutes ago | parent [-] | | This was last week. I ought to caveat that from a KYC perspective, I likely would have been 'easy' since my career history involves many well-known companies and the requested account was for a UK company that has been running for nearly 20 years. Though I'm no longer personally in the UK. Microsoft on the other hand: It was impossible for me to open up an Azure account even with their Customer Support. Suspect I will have to use Tailscale to bypass overly rigid geographical controls. |
|
|
|
|
| ▲ | hlieberman 11 hours ago | parent | prev | next [-] |
| I really like this... except you should add a special case for 911. I strongly believe that all phones, and anything that looks like phones, should be able to dial out in an emergency. Obviously, this can raise its own problems -- you'll have to train the kids not to randomly dial 911! -- but you never know what circumstances might exist where someone in a panic reaches for the nearest phone. |
| |
| ▲ | vermilingua 9 hours ago | parent | next [-] | | Kari's Law [0] is relevant here. Not strictly applicable as this is not a MLTS (phone line multiplexer), but very much in line with the spirit of the law as it was adopted after a child was unable to dial 911 from a motel phone. [0] https://www.fcc.gov/mlts-911-requirements | |
| ▲ | superb_dev 10 hours ago | parent | prev [-] | | Also if you want to test dial 911 I’ve been told you can schedule a test call with you local dispatch! I setup a phone system with Asterisk for fun a while ago and I avoided emergency calls because I didn’t know how to safely test it | | |
| ▲ | vermilingua 9 hours ago | parent | next [-] | | You can, but you should prefer dialling 933 which will use the same routing infrastructure, and reads out the address that 911/933 believes is associated with your connection. Does not take time away from a human dispatcher so should always be preferred unless there is a critical reason to test 911. | | |
| ▲ | ssl-3 4 hours ago | parent | next [-] | | Dialing 933 tests call routing and address reporting when dialing 933, but 911 and 933 are not the same number. And one might assume that it should work the same....and it may in fact be the same once a call reaches the greater telephone network. But calling 933 does not necessarily test 911 call routing as it relates to a specific pile of local gear. So sure: One should call 933 as an informal test and make sure it produces a good report. One should -also- call 911 and make sure that works correctly and that the result of a call is a good report, too (after calling the local non-emergency number for the PSAP and making arrangements). It's perfectly acceptable, OK, and appreciated (by PSAP operators and supervisors alike) to ensure that 911 calling is tested and working, end-to-end, upon the implementation of any particular telephone system. (But again, please let them know about it, first.) Lives do sometimes rely on 911 calls working properly, and an untested system is at best an unproven mystery. Please test it. "It -should- work fine!" is not good enough. | |
| ▲ | superb_dev 7 hours ago | parent | prev [-] | | Oh this sounds much better, thank you! |
| |
| ▲ | Terr_ 7 hours ago | parent | prev [-] | | Hmmm, I wonder if something like this applies to testing emergency-apps on my smartphone. Unlike a landline, it's harder to say where it ends up or who'll get angry at you for "testing". |
|
|
|
| ▲ | ale42 4 hours ago | parent | prev | next [-] |
| This is using Twilio, but given there's an Asterisk server behind, you can actually use any VoIP provider that allows outgoing calls over SIP right? Depending on the country you live in and/or where you want to call, you might get simpler & cheaper options (although for emergency service if you want to have it, which I think is important unless there's an alternative way to call emergencies around, it's more complicated). |
|
| ▲ | bignerd_95 10 hours ago | parent | prev | next [-] |
| Nice project!
Another route you might consider is flashing a small custom firmware on the Grandstream HT80x so the logic runs directly on the ATA instead of on the Pi/Asterisk side. I wrote a tool that can extract and repack Grandstream firmware (https://github.com/BigNerd95/Grandstream-Firmware-HT802/tree...). For example, I made a simple ARM patch that intercepts incoming caller IDs and triggers a bash script to decide what to do, in my case it checks a spam-lookup service and returns 0 or 1 so the ATA either rings or rejects the call. |
| |
| ▲ | toast0 8 hours ago | parent | next [-] | | This seems neat. I have some minor stuff I'd like an ATA to do differently [1], and maybe I can make it work with this, if I get motivated! [1] I don't quite remember what I wanted to do, so that's the first part! But I have a telephone controlled gate, with 3-pair wiring, and right now I'm using two pair for phone inbound and outbound, and one pair I can't use... If I can get the ATA to interface well enough with just one pair to the gate, then I can use two pair for ethernet, and I don't need to use a modem to interface with the gate over the phoneline. | |
| ▲ | protocolture 8 hours ago | parent | prev [-] | | I cant remember the circumstances, it might have involved an RMA with grandstream, but I vaguely recall this tool saving my bacon at one point. |
|
|
| ▲ | b_e_n_t_o_n 10 hours ago | parent | prev | next [-] |
| For some reason I thought it was for toddlers to call other toddlers. I think if you were looking for a feature to add, it would be to let kids call their friends. Could lead to some cute moments :) |
| |
| ▲ | eastbound 6 hours ago | parent [-] | | Oh yes then monetize the recordings! (Sorry, Silicon Valley PTSA kicking in) | | |
|
|
| ▲ | bombcar an hour ago | parent | prev | next [-] |
| If you want this as a ready to go product - https://tincan.kids/ and disable 911 if international. |
| |
|
| ▲ | mnutt 11 hours ago | parent | prev | next [-] |
| This is a great project writeup, I did something _very_ similar for my son. (HT802, asterisk, twilio, calling relatives) With all of the NAT involved I could never get sjsip to work properly so I ended up having to use the old sip module, but looking at yours makes me want to revisit it. Once you have asterisk set up and running, it becomes easy to also set up all sorts of other extensions like "check the weather" / "tell a joke" / "check the train statuses". I put up some code for it here: https://github.com/mnutt/rotary |
|
| ▲ | technofiend 9 hours ago | parent | prev | next [-] |
| I love everything about this. I've often thought families that wanted to extend their network between trusted friends could set up a literal private branch exchange (aka PBX) with only their friends as fellow members.You have a way for people to call each other without handing kids a smart phone and can also avoid the inevitable costs and unwanted calls associated with real land lines. |
| |
| ▲ | horseradish7k 6 hours ago | parent [-] | | almost if like they could be regional, for people within the same area... and there'd be a book with everyone's numbers... |
|
|
| ▲ | bryogenic 11 hours ago | parent | prev | next [-] |
| I just setup the same HT801 but I used SIP-domains and twilio services/functions instead of SIP trunk and asterisk. I'll make sure to reply again once I have a write up. Nice work! |
|
| ▲ | winterec 10 hours ago | parent | prev | next [-] |
| Great work! Thank you for sharing this. I'm looking forward to making one just like this too. |
|
| ▲ | throw-10-13 5 hours ago | parent | prev | next [-] |
| Hardest part of this is getting a twilio account that actually works. One of the worst service providers ive ever had to work with. |
| |
| ▲ | mrweasel 5 hours ago | parent [-] | | That explains the pricing. I've been looking for a cheap way to get a SIP/VOIP connection, so the kid and I can play with some old phones she's been gifted. I really want to make one or two of them work, so she can do internal calls at home, and maybe call grandmam. It's easy enough to get a VOIP account with a local company, but the pricing is just insane. I really wish I could find an ATA solution that can do internal call and use a SIM to call out. They exist, but the prices rather high. | | |
|
|
| ▲ | hawaiianbrah 12 hours ago | parent | prev | next [-] |
| This is so cool! Mine is too young but I was planning to hack on something similar when they’re of age. Thanks for the inspiration! |
| |
|
| ▲ | protocolture 8 hours ago | parent | prev | next [-] |
| >only permit calls to be made to an adult-controlled set of numbers
timezones and “awake/asleep” schedules, to avoid calling Europe at their 1am
prevent inbound calls entirely This is interesting. Was there a serious issue while using a regular landline? As a former toddler myself, I think that the worst I got up to was calling the radio station and giving bad traffic tips. My overseas family had such a long number, stored in a book in my grandmothers handwriting, that theres little chance I would have connected and woken them up. Is this designed to counter a specific threat model? |
| |
| ▲ | dwedge 13 minutes ago | parent | next [-] | | > My overseas family had such a long number, stored in a book in my grandmothers handwriting, that theres little chance I would have connected and woken them up. The article is about a phone with one button per person, so the thing that stopped you from doing this is not applicable. You now have a toddler who can press a button whenever they want and dial someone - you don't see how a child who doesn't understand timezones etc. might cause a problem here? | |
| ▲ | mrweasel 5 hours ago | parent | prev | next [-] | | > Was there a serious issue while using a regular landline? So a few other issues with landlines, in other countries: 1) Crazy expensive. 2) You can't sign-up for one anymore. 3) They may no longer be available. The cables have already been removed in some parts of Denmark. | | |
| ▲ | miki123211 4 hours ago | parent | next [-] | | In a lot of places a "landline" is: a) a phone using the ITU protocols, connecting to the router over ATM, or b) a straight up SIP / VOIP phone which just happens to be operated by your ISP, but which could, in principle, work anywhere, as long as it was connected to the internet, or c) a cell phone in a landline-like enclosure, perhaps with a carrier-side restriction that prevents its SIM card from working outside its intended local area. | | |
| ▲ | mrweasel 3 hours ago | parent [-] | | That is pretty interesting, because I figured that maybe that would solve my issue of trying to get a cheap "landline". Sadly no. My ISP also doesn't want to do VOIP. They have the product, but doesn't sign up new customers. | | |
| ▲ | protocolture 3 hours ago | parent [-] | | Voip is a classic loss maker for ISPs. Right up there with email servers and DNS. It increases their attack surface and support costs without any real bottom line benefit. I suspect I will be adding IPTV to that list in 5 years too. |
|
| |
| ▲ | protocolture 3 hours ago | parent | prev [-] | | For arguments sake lets include voip in there under landline. |
| |
| ▲ | kimixa 8 hours ago | parent | prev [-] | | ... Do you not see a toddler dialing random numbers as anything but a nuisance to the people whose numbers they happened to dial? Or waste emergency services' time? (their numbers are intentionally easy to dial, and likely more recognisable being repeated in media even to the young after all) It feels like you're forcing other people to take the effort of dealing with your child in that situation. | | |
| ▲ | protocolture 8 hours ago | parent [-] | | There's another thread here where they are talking about the necessity to make emergency services numbers available anyway, because kids are often the people who make the crucial phone call when a parent has an accident. And its doubtful that the parent is going to collapse, push an ansible update to his project, and then have the kid dial emergency. Theres potential for nuisance, but not one that seemed like a big threat for that whole period where toddlers routinely had access to phones. I asked because I am interested in whats happening, maybe they have a unique situation/environment that requires this. Maybe they have phone jockey kids who mastered the technique. |
|
|
|
| ▲ | _ZeD_ 3 hours ago | parent | prev [-] |
| uhmm... >>> As a weekend project, I hacked together a physical phone, a Raspberry Pi running Asterisk and Twilio, to let toddlers safely make international calls. how often do toddlers make international calls??? |
| |
| ▲ | Timwi 3 hours ago | parent | next [-] | | It's right there in the post: > I built this so kids of expats can easily stay in touch with family on other continents. Just think of families fleeing from war or persecution. This isn't rare by any measure, unfortunately. | |
| ▲ | detaro 3 hours ago | parent | prev | next [-] | | that probably depends how many close family members they have abroad. | |
| ▲ | atemerev 3 hours ago | parent | prev [-] | | Ahem. Some people never heard of immigration/emigration? (The system is valuable for adults too, if some of your relatives live in a country which blocks Whatsapp and other voice calling apps, like Russia or China). |
|