Vad man kan göra med vårt API

För dig som inte visste det så har vemringde.se ett API. Ett API är ett sätt för oss att dela med oss av vår information så att andra kan ha nytta av den på olika sätt. Vårt API gör det till exempel möjligt för vår iPhone-app att hämta och blockera de vanliga numren, och för Android-appen att visa vem ägare är trots att Eniro eller Hitta.se inte har en aning.

Men APIet gör det också möjligt för väldigt många privatpersoner att få en lugn hemtelefon som inte släpper igenom telefonförsäljare eller andra oönskade samtal. För några dagar sen fick jag ett mail från Ted, Ted ville ha en APInyckel för att kunna söka på vemringde.se när någon ringer hem till honom. Det visade sig när jag frågade hur han gjorde det att det inte var någon vanlig hemtelefon vi pratade om. I den här posten berättar Ted hur han har gjort, jag vill varna för svåra tekniska termer (jag förstår inte själv till 100 procent) och nördiga bilder på datorutrustning. ;)

          +----------+
          | Telejack |
          +---+-+----+
             /   \
            /     \
+----------+-+   +-+-----------------+
| ADSL-modem |   | IP ATA            |
|            |   | Grandstream HT503 |
+----------+-+   +--+----------------+
WAN-sidan  |        |
+----------+----+   |
| Router        |   |
+------------+--+   |
LAN-sidan    |      |
         +---+------+--+
         | Switch      |
         +-+---------+-+
           |         |
+----------+---+  +--+--------------------+
| Linux Server |  | Div. Windows-maskiner |
+--------------+  +-----------------------+

Teds egen förklaring

Översik

IP ATA: Är en adapter mellan analog telefoni och IP-telefoni vilket gör att man kan sätta upp en gratis intern telefonväxel på sin Linux-server och låta alla på lilla kontoret (eller det moderna hemmet) ha personliga anknytningar och telefonsvarare osv. I denna lösning används IP ATA:n dock endast för att tolka de DTMF-toner som genereras av den externa telefonväxeln strax innan telefonen börjar ringa. Den har den inbyggda möjligheten att skicka meddelanden i form av standard syslog-meddelanden (RFC3164)

Närbild av 19"-racket.

Linux Server: På denna körs diverse program:
syslog-ng: Står för syslog – next generation. Det är en syslog-daemon som lyssnar på inkommande syslog-meddelanden och skriver ned dem i olika logfiler eller skickar dem vidare till andra program. I detta fall skickas meddelanden ifrån IP ATA:n vidare till programmet ‘syslog_callerid’.

syslog_callerid: Tar emot meddelanden ifrån syslog-ng. När ett inkommande telefonnummer avkodats anropas programmet ‘get_caller’ som svarar med namn och adress. Telefonnumret, namn och adress broadcastas sedan ut i nätverket på en UDP port.

Närbild av IP ATA:n

get_caller: Använder eniro.se, hitta.se, vemringde.se samt en egen databas för att slå upp vem som står bakom ett visst telefonnummer.

Windows-maskinerna: Blandat XP, Vista och Windows 7. Alla kör en enkel liten Windows-service kallad ‘numpres’ som startar upp så fort strömmen slås på. Den lyssnar efter broadcastade meddelanden på tidigare nämnd UDP-port och visar en liten ruta med vem som ringer så fort något meddelande inkommer. Man behöver inte vara inloggad på Windows-maskinen man står närmast för att rutan skall visas. Det räcker att den är igång.

Det hela fungerar mycket bra och den lilla rutan med vem som ringer brukar dyka upp under första ringsignalen.

Ted var snäll nog att skicka med några bilder på sin setup. Vi ska också säga att Ted arbetar som programmerare på Ericsson. Hur använder du vårt API? Beskriv gärna i kommentarerna eller skicka ett mail till info@vemringde.se.

Om Carl-Fredrik Herö (visa alla inlägg)

Carl-Fredrik Herö arbetar till vardags på Elvenite AB i Karlstad som Web Architect. Där hjälper han företag att bli mer effektiva genom bättre interna samarbetsverktyg, intranät och wikis.
This entry was posted in API, Appar and tagged , , . Bookmark the permalink.
  • Tobias

    Hej

    Jag har ett liknande hobbyprojekt där jag istället för IP_ATA använder jag en NIM http://www.nim.se/index.php?option=com_frontpage&Itemid=1 för att få tag i DTMF tonerna .

    Och efter uppslagning (ännu inte mot Vem Ringde men snart) så skickas meddelande via MSN, mail och eventuella YAC clienter (http://sunflowerhead.com/software/yac/) till berörda personen.

    Dessutom läggs ett meddelande upp på ett specifikt Facebook konto så att dom berörda personerna kan kommentera samtalet. Allt funkar (nästan) men i mitt fall är dom berörda personerna bara jag och min ointresserade fru men mailet gillar hon i alla fall :)

    //Tobias

    • Björn

      Tobias, kan du kontakta mig på pcproffsen(a)gmail.com

  • http://www.facebook.com/people/Kristoffer-Nyqvist/744685744 Kristoffer Nyqvist

    Detta va nästan lite onödigt invecklat skrivet. :)

    Att sätta upp en egen telefonväxel till IP-telefonen är väldigt enkelt och detta kan göras såväl med Windows som Linux. Så Windows användare låt er inte skrämmas. :)