Framtiden
Är du i framtiden?Följeslag
Bloggar
Kategorier
- Emily
- Filmat
- Fotograferat
- Fototriss
- Ingen kategori
- IT/BBVote (Votech)
- IT/Blandat
- IT/Data
- IT/Development
- IT/Integritet
- IT/Telefoni
- Komponerat
- Media/nöje
- Musik
- Predikan
- Projekt: Moralspaning
- Projekt: Pose
- Projekt: Roadrage
- Projekt: Svensk sophantering
- Roadrage i verkligheten
- Roadrage: Bakom raseriet
- Seriös Journalistik
Tornevall @ Twitter
Blogglänkningar
Arkiv
Category Archives: IT/Telefoni
Dåliga säljare ger dålig reklam till de bra
Anders Lundwall liked this post
Blev idag uppringd av ett för mig okänt nummer. Jag kände spontant att jag inte kunde svara på det samtalet, eftersom det kan vara någon jag inte blir av med. Och på jobbet så är inte det är en bra combo. Så jag slog upp numret på google först, och ganska snabbt insåg jag att det här var en väldigt jobbig säljare. Ord som ”gubbjävel”, ”blir inte av med”, ”kommer ringa tills kunden vill lyssna” dök upp både här och var på nätet.
Jag har inte dom här problemen på hemmatelefonen. Min växel är så pass smart att den kan filtrera bort samtal jag inte vill ha, genom att koppla dom direkt till telefonsvarare, ge dom ett meddelande som säger att de inte kommer att få sälja något hos mig, eller helt sonika lägger på luren.
Men nu har det här så klart börjat smitta av sig på mobiltelefonen också. Säkerligen beror det på att det finns på Eniro. Jag började därför fundera på hur jag skulle göra för att inte behöva ta de här samtalen men ändå, om det är något viktigt, få reda på vem som ringt. Slutligen hade jag en perfekt lösning färdig. Nej – inte NIX. Jag kommer att skaffa det också, för att sålla bort de säljare som går att sålla bort. Men sedan finns det ju fortfarande en del ”instanser” som inte respekterar NIX eller som råkat missa NIX helt.
Hemtelefonen:
- Avvisa samtliga hemliga nummer med ett meddelande
- Filtrera på nummer. Vissa kända försäljningsnummer kopplas till ett ”Nejtack”, med möjlighet att lämna meddelande. Andra kända nummer kopplas bort med ”upptaget”.
Mobilen
- Koppla samtal jag inte hinner ta till hemtelefonen. Hemtelefonen löser resten. Seriösa samtal går fram som vanligt.
- Med nummer jag inte känner igen, avvisa dom med ett klick. Mobilen kopplar sedan om till hemtelefonen – som löser resten. Hemliga nummer lär avvisas utan nåd.
Om de avvisade/omkopplade telefonnumren från mobilen sedan visar sig vara ett säljsamtal kommer dessa alltså att självsaneras. Säljaren kommer aldrig få en möjlighet att prata med mig och jag kommer aldrig behöva tvingas ta mig igenom ett långt samtal från en säljare som inte vill lägga på luren.
Posted in Ingen kategori, IT/Telefoni, Predikan
9 Comments
Asterisk – Megaphone – Fax
Det har antagligen inte alls med saken att göra, men på sistone har jag i mitt domännamnshandlande stött på en del verksamheter som fortfarande förlitar sig på att folk skickar in sina ansökningar via fax. Det kan handla om att flytta till ny registrar, eller något annat byråkratiskt dito. Det fick mig också att fundera på om man inte skulle ta och skaffa sig en fax igen också. Men vad har man att välja på? Å ena sidan skulle man kunna köpa ett stort åbäke som man inte vet vart man skall ha, å andra sidan skulle man kunna virtualisera faxen nästan helt och hållet. Men skulle mitt telefon-nät klara av det? Det är ju ganska onödigt att köpa en stor fax bara för att inse att den inte kommer att fungera ihop med IP-telefonin.
Jag bestämde mig för att börja i liten skala: Virtualisering. Detta hoppades jag på skulle hjälpa mig med första utredningen, om IP-telefonen skulle klara av att hantera dataströmmen. Jag stötte naturligtvis på problem direkt, då jag kör Asterisk som växel framför Megaphone-nätet. Version 1.4 var för gammal. Efter mycket krånglande med en virtuell fax (Faxback som verkar vara bland få program som faktiskt gör vad jag önskar), så insåg jag att Asterisk 1.4 bara stödjer T.38 Passthrough. Dvs, den stödjer fax, men ändå inte. Jag läste mig även fram till att Asterisk 10 skulle ha fullt inbyggt faxstöd. Problemet med detta var att man då även sannolikt skulle behöva installera faxtillägg till växeln, samtidigt som man var tvungen att uppgradera till version 10. Jag var dock inte jättesugen på att krångla med det, så jag tänkte istället att min telefoni-Vood 322 skulle kunna klara detta bättre.
Väl igång med Vooden insåg jag ännu en gång att det inte skulle fungera. Vooden hade förvisso stöd för T.38 på en annan nivå än Asterisk 1.4 hade, men autentiseringen mot Megaphone var i princip helt omöjlig att få igång. Av någon anledning förstod Megaphone inte längre vad jag hade för användarnamn och lösenord i boxen. Jag fattade inte riktigt varför dock, men faktum var att jag aldrig kunde se något lösenord skickas i autentiseringen när jag läste av nätverkstrafiken. Här insåg jag också att det fanns vissa nackdelar med att inte längre vara anställd på Megaphone som tekniker – det fanns ingen direkt möjlighet att analysera trafiken från andra hållet heller, så jag slängde iväg ett mail för att se om det fanns någon möjlighet att kunna få en analys av läget. Instruktionerna jag fick var att nollställa allt – en inte särskilt bra idé då jag visste att allt egentligen fungerade.
Sagt och gjort – det fanns bara en utväg kvar: Den utväg jag från början ville undvika på grund av tiden det skulle ta att få igång. Jag installerade alltså Asterisk 10 och klonade samtliga gamla inställningar från version 1.4. Slutligen kickade faxfunktionen igång, då ihop med ett gammalt faxmodem jag åter hade hittat i en kartong med gamla prylar!
Posted in IT/Telefoni
Leave a comment
Asterisk med DTMF-styrd vidarekoppling
Jag har sedan länge funderat på om det med hjälp av telefonen skulle gå att vidarekoppla inkommande samtal till något annat telefonnummer. Jag hade föreställt mig möjligheten att göra detta, i synnerhet om säljare någon dag får för sig att hitta mitt nummer och ringa mig, fastän jag inte vill det. Idag tog jag mig tid att titta på det och plötsligt fick jag det att fungera.
Som vanligt hade jag stor nytta av http://www.voip-info.org/
Aktiveringen av ”blind transfer”, som det heter, sker i två steg. Först redigerar man features.conf:
Kod:
[featuremap] ;blindxfer => #1 ; Blind transfer (default is #) blindxfer => *2 ; Flytta koden till *2
Därefter skall det räcka med att redigera exten.conf. Transferkoden lägger jag efter att Asterisk har ringt upp mina extensions. Det viktiga här är att även ha med parametern ”t” under parametrarna som finns på Dial-raden. Observera även ordningen på raderna. Det är viktigt att inte transfer-kommandot tar över det inkommande samtalet, eftersom – om man har sådan installerad förstås – röstbrevlådan då kommer bli lidande…
Kod:
exten => s,n,Dial(SIP/tmm&SIP/mobil&SIP/tmm-vood&SIP/megatmm,30,wWkKt)
exten => s,n,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
exten => s-NOANSWER,1,VoiceMail(1001,u)
exten => s,n,Gotoif($${BLINDTRANSFER}=""?500)
exten => s,500,Hangup
exten => s,501,Set(tx=${BLINDTRANSFER:0:7})
exten => s,502,SetCallerID(RET_${EXTEN} <${CALLERIDNUM}>)
exten => s,503,Dial(${tx},,mTt)
exten => s,504,Hangup
Posted in IT/Telefoni
Leave a comment
Asterisk och Megaphone
OBS: Användning av denna dokumentation sker på egen risk!
Denna text har skapats (filer bifogade) som ett självändamål för att spara in tid och hårbortfall vid eventuella framtida omkonfigurationer av Asterisk, om detta behov någon gång skulle uppstå. Det finns ingen egentlig support i bemärkelsen ”Hej, hur gör man detta? Jag får inte rätt på det!” – allt som egentligen behövs är mycket tålamod och lite engelska kunskaper, eftersom grundhjälpen har inhämtats från http://www.voip-info.org/. Vill du ha riktig hjälp, läs förslagsvis där innan du börjar ställa frågor som saknar svar. Har du några frågar som jag KAN besvara, så gör jag givetvis det.
Om detta inlägg
Denna text har skapats (filer bifogade) som ett självändamål för att spara in tid och hårbortfall vid eventuella framtida omkonfigurationer av Asterisk, om detta behov någon gång skulle uppstå. Det finns ingen egentlig support i bemärkelsen ”Hej, hur gör man detta? Jag får inte rätt på det!” – allt som egentligen behövs är mycket tålamod och lite engelska kunskaper, eftersom grundhjälpen har inhämtats från http://www.voip-info.org/. Vill du ha riktig hjälp, läs förslagsvis där innan du börjar ställa frågor som saknar svar. Har du några frågar som jag KAN besvara, så gör jag givetvis det.
Om detta inlägg
Informationen i denna text bygger på att man har fler SIP-baserade abonnemang hos telefoni-operatören Megaphone. Hur din konfiguration kommer fungera hos någon annan operatör har jag ingen aning om. Ej heller har jag någon aning om den kommer att fungera hos dig om du tar del av den. Det grundläggande upplägget som bör räcka för att få flera telefonnummer (eller ett!) att fungera för både in- och utgående telefoni beskrivs dock, enligt nedan. Det är som tidigare skrivet, ej garanterat att detta fungerar för alla.
Konfigurationen öppnar möjligheten att ta emot ett samtal på flera telefoner, där den som svarar först tar samtalet. Utgående telefoni fungerar också, men skall man kunna ringa ut från två olika nummer måste också Asterisk anpassas efter möjligheterna, med lite fulkod. Jag kallar detta för ”fusktrunk” även om benämningen troligen är helt felaktig (konfigurationen är inkluderad enligt nedan, vilket innebär att om man med denna konfiguration använder en extra nolla i början av riktnumret så används linje 2 för utgående samtal).
Operatörens egna forking-möjligheter rekommenderas starkt, eftersom operatören då tillhandahåller denna tjänst i stället för dig. Detta lär vara stabilare samt ger en del andra fördelar – såsom faktisk support. I Asterisk får du klara dig själv om telefonen plötsligt slutar fungera. Observera även att Asterisk i dessa exempel innehåller specialkonfiguration för andra ändamål också, främst intern röstbrevlåda. Detta kan medföra att allt inte kommer att fungera på önskat sätt för andra som installerat Asterisk då all konfigurering utöver dessa exempel är individuell och nedanstående har av oförklarlig anledning skrivits på engelska.
Övriga frågor och svar följer under dessa konfigurationer.
sip.conf
Kod:
[general] context=default ; Default context for incoming calls allowoverlap=no ; Disable overlap dialing support. (Default is yes) bindport=5060 ; UDP Port to bind to (SIP standard port is 5060) bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all) srvlookup=yes ; Enable DNS SRV lookups on outbound calls realm=asterisk domain=my.sip.domain ; Set default domain for this host ; If configured, Asterisk will only allow ; INVITE and REFER to non-local domains ; Use "sip show domains" to list local domains ;disallow=all ; First disallow all codecs allow=ulaw ; Allow codecs in order of preference allow=ulaw allow=alaw allow=g729 rtptimeout=60 ; Terminate call if 60 seconds of no RTP or RTCP activity rtpholdtimeout=300 ; Terminate call if 300 seconds of no RTP or RTCP activity ; Be careful with this sipdebug = yes ; Turn on SIP debugging by default, from recordhistory=yes ; Record SIP history by default dumphistory=yes ; Dump SIP history at end of SIP dialogue ;; SIP Phone 1 register => username.megaphone.se:password@sip.megaphone.se ;; SIP Phone 2 ; /1001 = Connect immediately to extension 1001 and pass by any automated messages... ; (this seem to be linked to the extension-config) register => username.megaphone.se:password@sip.megaphone.se/1001 localnet=10.0.0.0/255.0.0.0 localnet=192.168.0.0/255.255.0.0 nat=yes ; Global NAT settings (Affects all peers and users) canreinvite=no ; Asterisk by default tries to redirect the [authentication] ; Obviously not required (Dual stuff) ;;;auth=username.megaphone.se:password@sip.megaphone.se ;;;auth=username.megaphone.se:password@sip.megaphone.se ;;;; USER CONFIGURATION ; Main extension for home [self] type=friend username=me secret=mypassword host=dynamic context=myextension regexten=1001 ; Let the Vood have its own extension if this runs on SIP [self-vood] type=friend username=self-vood secret=voodpassword host=dynamic context=myextension regexten=1011 ; Let the Nokia on! [selfmobile] type=friend username=selfmobile secret=mobilepassword host=dynamic context=myextension regexten=1010 [user1] type=friend username=user1 secret=password1 host=dynamic context=user1 regexten=2000 [user2] type=friend username=user2 secret=password2 host=dynamic context=user2 regexten=2001 ; The PEERS (Megaphone) [NUM1] type=peer username=username.megaphone.se fromdomain=sip.megaphone.se insecure=very qualify=yes nat=yes secret=password host=sip.megaphone.se context=default [NUM2] type=peer username=username.megaphone.se fromdomain=sip.megaphone.se insecure=very qualify=yes nat=yes secret=password host=sip.megaphone.se context=default
extensions.conf
Kod:
[general] static=yes writeprotect=no clearglobalvars=no priorityjumping=yes ;#include "filename.conf" [globals] CONSOLE=Console/dsp ; Console interface for demo ;TRUNK=Zap/G2 ; Trunk interface ; Never required... (This is dual number!) ;;;SIPtrunk=SIP/username.megaphone.se:password@sip.megaphone.se ; SIP trunk ;;;SIPtrunk=SIP/username.megaphone.se:password@sip.megaphone.se ; SIP trunk ; Used by everybody! (Incoming connections) [default] include => allextensions exten => s,1,NoOp(${SIP_HEADER}) exten => s,n,NoOp(${CALLERID}) exten => s,n,Wait(1) exten => s,n,Answer ; Play a message! exten => s,n,BackGround(welcome) ; Wait for a beep for about 2 sec! exten => s,n,WaitExten(2) ; Play another message (in this case: "redirecting your call") exten => s,n,BackGround(calling_dittsamtal) ; If no extension set above, dial those number for 30 sec exten => s,n,Dial(SIP/self&SIP/selfmobile&SIP/self-vood,30) ; Then check status... exten => s,n,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) ; And send to voicemail for extension 1001 on no answer exten => s-NOANSWER,1,VoiceMail(1001,u) [self] include => default include => outgoing [self-vood] include => default include => allextensions include => outgoing [selfmobile] include => default include => outgoing ; Only allow internal calls for user 1 [user1] include => allextensions exten => 1000,1,Voicemailmain(1000) ; Allow the same as "self" for user2 [user2] include => allextensions include => outgoing exten => 1000,1,Voicemailmain(1000) exten => _X.,1,Dial(SIP/${EXTEN}@NUM1,30,r) ; All outgoing extensions [outgoing] ; Allow yourself to dial between your external extensions exten => NUM1,1,Dial(SIP/${EXTEN}@NUM2,30,r) exten => NUM2,1,Dial(SIP/${EXTEN}@NUM1,30,r) ; Anything else goes out through NUM1 exten => _X.,1,Dial(SIP/${EXTEN}@NUM1,30,r) ; But if any call starts with an extra zero, use NUM2 ; This makes both numbers available for outbound traffic exten => _00X.,1,Dial(SIP/${EXTEN:1}@NUM2,30,r) exten => s,n,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) exten => s-NOANSWER,n,VoiceMail(${ARG1},u) ; Internal usage [allextensions] ; Extension 1000 - Voicemail! exten => 1000,1,Voicemailmain(1000) ; Self extension and the default! Try for 20 sec exten => 1001,1,Dial(SIP/self&SIP/self-vood&SIP/selfmobile,20) ; Missed calls goes to voicemail exten => 1001,2,VoiceMail(1001,u) ; Others exten => 1010,1,Dial(SIP/selfmobile,20) exten => 1010,2,VoiceMail(1001,u) exten => 1011,1,Dial(SIP/self-vood,20) exten => 1011,2,VoiceMail(1001,u) ; User 1 exten => 2000,1,Dial(SIP/user1,20) exten => 2000,2,VoiceMail(2000,u) ; User 2 exten => 2001,1,Dial(SIP/user2,20) exten => 2001,2,VoiceMail(2001,u) ; Invalid extensions goes to voicemail exten => i,1,VoiceMail(1001,u)
Specialanpassningar
Jag har ju två nummer… men när det ringer in vet jag inte vilket av numren jag söks på!
I de fall då tester har utförts med Asterisk så visas inkommande telefonnummer i stil med
Kod:
To: "0435xxxxxx"
Detta leder givetvis till problem eftersom SIP_HEADER(TO) inte kan användas på det sätt som var tänkt (denna information kan med sökningsfunktioner återfinnas på voip-info, se länk ovan). Så vitt jag förstått det, så är det ”s@xxx” som ställer till det, då numret egentligen skulle visats där istället (i stil med ”0435xxxxx@”), vilket gör att man inte kan identifiera destinationen med sip-headern. Att destinationen omnämns på samma rad spelar heller ingen roll.
Därför skrev jag om några rader i konfigurationsfilerna. Dels så lade jag in följande exten-rad i extensions.conf, efter callerid-raden:
Kod:
exten => s,n,Set(CALLERID(num)=${CALLERID(num)} to 0435xxxxxx)
Detta gör att jag kan se till vilket nummer någon ringer, åtminstone I SIP-klienten (X-lite). Hur det blir i en vanlig nummerpresentatör kan jag faktiskt inte svara på (det är mycket troligt att resultatet dels är för långt och jag misstänker att alla nummerpresentatörer inte klarar av formateringen på numret). Resultatet blir nämligen, exempelvis:
Kod:
0812345677 to 0435123456@127.0.0.1

I sip.conf har jag tidigare angett att mitt andra nummer skall gå direkt till en specifik extension:
Kod:
register => username.megaphone.se:password@sip.megaphone.se/1001
Detta ändrar jag nu på, till:
Kod:
register => username.megaphone.se:password@sip.megaphone.se/1020
Sedan lägger jag upp en ny extension under [allextensions]:
Kod:
exten => 1020,1,Set(CALLERID(num)=${CALLERID(num)} to 0435xxxxxx)
exten => 1020,n,Dial(SIP/self&SIP/self-vood&SIP/selfmobile,20)
Nu kommer displayen, när det ringer på det andra numret visa upp till exempel:
Kod:
0812345677 to 0435654321@127.0.0.1
OBS: Användning av denna dokumentation sker på egen risk!
Denna text har skapats (filer bifogade) som ett självändamål för att spara in tid och hårbortfall vid eventuella framtida omkonfigurationer av Asterisk, om detta behov någon gång skulle uppstå. Det finns ingen egentlig support i bemärkelsen ”Hej, hur gör man detta? Jag får inte rätt på det!” – allt som egentligen behövs är mycket tålamod och lite engelska kunskaper, eftersom grundhjälpen har inhämtats från http://www.voip-info.org/. Vill du ha riktig hjälp, läs förslagsvis där innan du börjar ställa frågor som saknar svar. Har du några frågar som jag KAN besvara, så gör jag givetvis det.
Om detta inlägg Informationen i denna text bygger på att man har fler SIP-baserade abonnemang hos telefoni-operatören Megaphone. Hur din konfiguration kommer fungera hos någon annan operatör har jag ingen aning om. Ej heller har jag någon aning om den kommer att fungera hos dig om du tar del av den. Det grundläggande upplägget som bör räcka för att få flera telefonnummer (eller ett!) att fungera för både in- och utgående telefoni beskrivs dock, enligt nedan. Det är som tidigare skrivet, ej garanterat att detta fungerar för alla.
Konfigurationen öppnar möjligheten att ta emot ett samtal på flera telefoner, där den som svarar först tar samtalet. Utgående telefoni fungerar också, men skall man kunna ringa ut från två olika nummer måste också Asterisk anpassas efter möjligheterna, med lite fulkod. Jag kallar detta för ”fusktrunk” även om benämningen troligen är helt felaktig (konfigurationen är inkluderad enligt nedan, vilket innebär att om man med denna konfiguration använder en extra nolla i början av riktnumret så används linje 2 för utgående samtal).
Övriga frågor och svar följer under dessa konfigurationer.
sip.conf
Denna text har skapats (filer bifogade) som ett självändamål för att spara in tid och hårbortfall vid eventuella framtida omkonfigurationer av Asterisk, om detta behov någon gång skulle uppstå. Det finns ingen egentlig support i bemärkelsen ”Hej, hur gör man detta? Jag får inte rätt på det!” – allt som egentligen behövs är mycket tålamod och lite engelska kunskaper, eftersom grundhjälpen har inhämtats från http://www.voip-info.org/. Vill du ha riktig hjälp, läs förslagsvis där innan du börjar ställa frågor som saknar svar. Har du några frågar som jag KAN besvara, så gör jag givetvis det.
Om detta inlägg Informationen i denna text bygger på att man har fler SIP-baserade abonnemang hos telefoni-operatören Megaphone. Hur din konfiguration kommer fungera hos någon annan operatör har jag ingen aning om. Ej heller har jag någon aning om den kommer att fungera hos dig om du tar del av den. Det grundläggande upplägget som bör räcka för att få flera telefonnummer (eller ett!) att fungera för både in- och utgående telefoni beskrivs dock, enligt nedan. Det är som tidigare skrivet, ej garanterat att detta fungerar för alla.
Konfigurationen öppnar möjligheten att ta emot ett samtal på flera telefoner, där den som svarar först tar samtalet. Utgående telefoni fungerar också, men skall man kunna ringa ut från två olika nummer måste också Asterisk anpassas efter möjligheterna, med lite fulkod. Jag kallar detta för ”fusktrunk” även om benämningen troligen är helt felaktig (konfigurationen är inkluderad enligt nedan, vilket innebär att om man med denna konfiguration använder en extra nolla i början av riktnumret så används linje 2 för utgående samtal).
Operatörens egna forking-möjligheter rekommenderas starkt, eftersom operatören då tillhandahåller denna tjänst i stället för dig. Detta lär vara stabilare samt ger en del andra fördelar – såsom faktisk support. I Asterisk får du klara dig själv om telefonen plötsligt slutar fungera.
Observera även att Asterisk i dessa exempel innehåller specialkonfiguration för andra ändamål också, främst intern röstbrevlåda. Detta kan medföra att allt inte kommer att fungera på önskat sätt för andra som installerat Asterisk då all konfigurering utöver dessa exempel är individuell och nedanstående har av oförklarlig anledning skrivits på engelska.Övriga frågor och svar följer under dessa konfigurationer.
sip.conf
Kod:
[general] context=default ; Default context for incoming calls allowoverlap=no ; Disable overlap dialing support. (Default is yes) bindport=5060 ; UDP Port to bind to (SIP standard port is 5060) bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all) srvlookup=yes ; Enable DNS SRV lookups on outbound calls realm=asterisk domain=my.sip.domain ; Set default domain for this host ; If configured, Asterisk will only allow ; INVITE and REFER to non-local domains ; Use "sip show domains" to list local domains ;disallow=all ; First disallow all codecs allow=ulaw ; Allow codecs in order of preference allow=ulaw allow=alaw allow=g729 rtptimeout=60 ; Terminate call if 60 seconds of no RTP or RTCP activity rtpholdtimeout=300 ; Terminate call if 300 seconds of no RTP or RTCP activity ; Be careful with this sipdebug = yes ; Turn on SIP debugging by default, from recordhistory=yes ; Record SIP history by default dumphistory=yes ; Dump SIP history at end of SIP dialogue ;; SIP Phone 1 register => username.megaphone.se:password@sip.megaphone.se ;; SIP Phone 2 ; /1001 = Connect immediately to extension 1001 and pass by any automated messages... ; (this seem to be linked to the extension-config) register => username.megaphone.se:password@sip.megaphone.se/1001 localnet=10.0.0.0/255.0.0.0 localnet=192.168.0.0/255.255.0.0 nat=yes ; Global NAT settings (Affects all peers and users) canreinvite=no ; Asterisk by default tries to redirect the [authentication] ; Obviously not required (Dual stuff) ;;;auth=username.megaphone.se:password@sip.megaphone.se ;;;auth=username.megaphone.se:password@sip.megaphone.se ;;;; USER CONFIGURATION ; Main extension for home [self] type=friend username=me secret=mypassword host=dynamic context=myextension regexten=1001 ; Let the Vood have its own extension if this runs on SIP [self-vood] type=friend username=self-vood secret=voodpassword host=dynamic context=myextension regexten=1011 ; Let the Nokia on! [selfmobile] type=friend username=selfmobile secret=mobilepassword host=dynamic context=myextension regexten=1010 [user1] type=friend username=user1 secret=password1 host=dynamic context=user1 regexten=2000 [user2] type=friend username=user2 secret=password2 host=dynamic context=user2 regexten=2001 ; The PEERS (Megaphone) [NUM1] type=peer username=username.megaphone.se fromdomain=sip.megaphone.se insecure=very qualify=yes nat=yes secret=password host=sip.megaphone.se context=default [NUM2] type=peer username=username.megaphone.se fromdomain=sip.megaphone.se insecure=very qualify=yes nat=yes secret=password host=sip.megaphone.se context=default
extensions.conf
Kod:
[general] static=yes writeprotect=no clearglobalvars=no priorityjumping=yes ;#include "filename.conf" [globals] CONSOLE=Console/dsp ; Console interface for demo ;TRUNK=Zap/G2 ; Trunk interface ; Never required... (This is dual number!) ;;;SIPtrunk=SIP/username.megaphone.se:password@sip.megaphone.se ; SIP trunk ;;;SIPtrunk=SIP/username.megaphone.se:password@sip.megaphone.se ; SIP trunk ; Used by everybody! (Incoming connections) [default] include => allextensions exten => s,1,NoOp(${SIP_HEADER}) exten => s,n,NoOp(${CALLERID}) exten => s,n,Wait(1) exten => s,n,Answer ; Play a message! exten => s,n,BackGround(welcome) ; Wait for a beep for about 2 sec! exten => s,n,WaitExten(2) ; Play another message (in this case: "redirecting your call") exten => s,n,BackGround(calling_dittsamtal) ; If no extension set above, dial those number for 30 sec exten => s,n,Dial(SIP/self&SIP/selfmobile&SIP/self-vood,30) ; Then check status... exten => s,n,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) ; And send to voicemail for extension 1001 on no answer exten => s-NOANSWER,1,VoiceMail(1001,u) [self] include => default include => outgoing [self-vood] include => default include => allextensions include => outgoing [selfmobile] include => default include => outgoing ; Only allow internal calls for user 1 [user1] include => allextensions exten => 1000,1,Voicemailmain(1000) ; Allow the same as "self" for user2 [user2] include => allextensions include => outgoing exten => 1000,1,Voicemailmain(1000) exten => _X.,1,Dial(SIP/${EXTEN}@NUM1,30,r) ; All outgoing extensions [outgoing] ; Allow yourself to dial between your external extensions exten => NUM1,1,Dial(SIP/${EXTEN}@NUM2,30,r) exten => NUM2,1,Dial(SIP/${EXTEN}@NUM1,30,r) ; Anything else goes out through NUM1 exten => _X.,1,Dial(SIP/${EXTEN}@NUM1,30,r) ; But if any call starts with an extra zero, use NUM2 ; This makes both numbers available for outbound traffic exten => _00X.,1,Dial(SIP/${EXTEN:1}@NUM2,30,r) exten => s,n,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) exten => s-NOANSWER,n,VoiceMail(${ARG1},u) ; Internal usage [allextensions] ; Extension 1000 - Voicemail! exten => 1000,1,Voicemailmain(1000) ; Self extension and the default! Try for 20 sec exten => 1001,1,Dial(SIP/self&SIP/self-vood&SIP/selfmobile,20) ; Missed calls goes to voicemail exten => 1001,2,VoiceMail(1001,u) ; Others exten => 1010,1,Dial(SIP/selfmobile,20) exten => 1010,2,VoiceMail(1001,u) exten => 1011,1,Dial(SIP/self-vood,20) exten => 1011,2,VoiceMail(1001,u) ; User 1 exten => 2000,1,Dial(SIP/user1,20) exten => 2000,2,VoiceMail(2000,u) ; User 2 exten => 2001,1,Dial(SIP/user2,20) exten => 2001,2,VoiceMail(2001,u) ; Invalid extensions goes to voicemail exten => i,1,VoiceMail(1001,u)
Specialanpassningar
Jag har ju två nummer… men när det ringer in vet jag inte vilket av numren jag söks på!
I de fall då tester har utförts med Asterisk så visas inkommande telefonnummer i stil med
Kod:
To: "0435xxxxxx"
Detta leder givetvis till problem eftersom SIP_HEADER(TO) inte kan användas på det sätt som var tänkt (denna information kan med sökningsfunktioner återfinnas på voip-info, se länk ovan). Så vitt jag förstått det, så är det ”s@xxx” som ställer till det, då numret egentligen skulle visats där istället (i stil med ”0435xxxxx@”), vilket gör att man inte kan identifiera destinationen med sip-headern. Att destinationen omnämns på samma rad spelar heller ingen roll.
Därför skrev jag om några rader i konfigurationsfilerna. Dels så lade jag in följande exten-rad i extensions.conf, efter callerid-raden:
Kod:
exten => s,n,Set(CALLERID(num)=${CALLERID(num)} to 0435xxxxxx)
Detta gör att jag kan se till vilket nummer någon ringer, åtminstone I SIP-klienten (X-lite). Hur det blir i en vanlig nummerpresentatör kan jag faktiskt inte svara på (det är mycket troligt att resultatet dels är för långt och jag misstänker att alla nummerpresentatörer inte klarar av formateringen på numret). Resultatet blir nämligen, exempelvis:
Kod:
0812345677 to 0435123456@127.0.0.1

I sip.conf har jag tidigare angett att mitt andra nummer skall gå direkt till en specifik extension:
Kod:
register => username.megaphone.se:password@sip.megaphone.se/1001
Detta ändrar jag nu på, till:
Kod:
register => username.megaphone.se:password@sip.megaphone.se/1020
Sedan lägger jag upp en ny extension under [allextensions]:
Kod:
exten => 1020,1,Set(CALLERID(num)=${CALLERID(num)} to 0435xxxxxx)
exten => 1020,n,Dial(SIP/self&SIP/self-vood&SIP/selfmobile,20)
Nu kommer displayen, när det ringer på det andra numret visa upp till exempel:
Kod:
0812345677 to 0435654321@127.0.0.1
Posted in IT/Telefoni
Leave a comment

