TweetPhone – ännu ett skojprojekt

TweetPhone – ännu ett skojprojekt

En dag stod en gammal bakelittelefon utanför mitt rum. Eftersom jag alltid letar efter små projekt att jobba med för att vässa min kompetens inom olika områden, så var det väl lika bra att jag tog hand om den. Det är alltid lika kul att blanda gammal och ny teknik – och eftersom det finns en ringklocka i telefonen, så skulle den få användas igen. För att ringa när jag får nya tweets. Och eftersom det finns en hörlur, så ska meddelandena läsas upp i telefonen när jag lyfter på luren.

Nu finns det alltså en “twitter-app” för den ytterst analoga LM Ericsson bakelittelefonen. 🙂

I detta projekt så har jag jobbat vidare med Python som språk, Tweepy för att kommunicera via API med Twitter, TinyDB för att spara meddelande-id:n i en databas samt gTTS (Google Text-To-Speech) för att göra om twittermeddelandena från text till uppläst ljud. Inget avancerat, men ett roligt projekt och lite problemlösning.

All kod finns på GitHub på github.com/mickekring/Tweetofone

1. Kontroll att allt funkar

Det enda jag kommer använda mig av i själva telefonen är ringklockan samt högtalaren. I någon avlägsen framtid kanske jag testar att använda mikrofonen och gör någon röststyrning.

2. Grundkod – Twitter > MP3

Därefter var det dags att ta tag i koden. Helt enkelt så finns en funktion som läser av min tidslinje och letar efter mentions till mig. Om nya meddelanden hittas sparas dessa till en lista samt att meddelande-id:n sparas till en databas, så att programmet kommer ihåg vilka meddelanden som redan hittats.
Därefter tar nästa funktion över, som skickar de nya meddelandena från listan till Googles text-to-speech där de görs om till talat språk och sparas lokalt som mp3.
Avslutningsvis så spelas dessa mp3:or upp.

3. Fixa klart hårdvara

Efter att ha rensat gammalt skräp och plockat bort en hel del kabel och gamla läskiga kondensatorer och annat var det bara att löda ihop det som behövdes. Hörlursjack samt lysdiod och “strömbrytaren” som känner av om luren är av eller på.

4. Raspberry Pi – Python – Telefon > GO!!!

Då var det klart. Jag kommer helt klart att bli galen på detta ljud som redan skrämt slag på mig ett antal gånger redan. En DND-knapp (Do Not Disturb) borde givetvis ha implementerats, vilket jag var på väg att göra, men men… Nu vet ni hur ni kan få min uppmärksamhet på jobbet i alla fall. 🙂
Kod finns i länken längst upp i inlägget.

Har ni tips på förbättring eller några förslag? Kommentera gärna i så fall!

Skrivet av
Micke Kring
Diskutera detta