Asterisk PBX yleistä keskustelua

Liittynyt
16.10.2016
Viestejä
9 854
Tuossa on tullut säädettyä tämänkin Asterisk ohjelmiston parissa. Nykypäivänä pystytys ja peruskäyttö ei ole vaikeaa mutta kun haluaisi vähän lisää.

Onkohan Suomessa mitään järkeviä SIP Trunk tarjoajia? Vaikka pientä korvaustakin vastaan?

Ideana olisi laajentaa normaaleista voip/videopuheluista myös siihen, että voisi soittaa ulkomaailmaankin tarvittaessa.

Asterisk (PBX) - Wikipedia

Onko muita tämän kimpussa olevia tulevia osaajia?
 
Tuli itselle kokeeksi viriteltyä Asterisk 16 pohjainen VOIP VitalPBX GUI:lla NAS:n vm:n. Sain muutaman VOIP pöytäpuhelimen firman poistosta ja pitäähän tällä nyt sitten leikkiä vähän. Hyvin lähti toimimaan sisäpuhelut. Trunkki on periaatteessa jo sovittu, mutta sillä ei ole kiirettä. Täytyy ensin virittää järjestelmä ilman pelkoa että tulee sekoiltua viritysvaiheessa valtakunnan puhelinverkon kanssa ja aiheutettua itselle turhaa laskua.

Mutta, koska taloudessa muutkin käyttää tätä viritystä niin mistä saisi Asteriksin ääniviestit suomeksi veloituksetta. Tietääkö kukaan mistä ladata? Auttaisi varmasti vähemmän kielitaitoaisia integroitumaan tähän systeemiin.

Muuten ihan hauska systeemi kun olen antanut numerot (extensions) windows tietokoneille, pöytäpuhelimille, kännyköille ja tableteille omat puhelinnumerot niin voi VOIP-puheluita soitella ilman nettiin menemistä sisäverkossa oman puhelinkeskuksen kautta eri laitteiden välillä ja normaalit pito/siirto/... ominaisuudet käyttöön. Konferenssit, videopuhelut yms. näyttäisi onnistuvan myös.

Trunkin hinta yhdellä ulkoisella numerolla (siis numeroavaruus = 1) yhdellä operaattorilla luokkaa 3e/kk ja puhelut siinä 4c/min luokkaa valtakunnan verkkoon (pvm) joten aika edullista jos vertaa kännykkään ilman puhepakettia. Täytynee yhdistää valtakunnan verkkoon kunhan kerkiää ja saa laitettua riittävän hyvin pelittämään.
 
Nostampa vanhaa ketjua. Heräsi kysymys liittyen asteriskin ja gsm gatewayn yhteiseloon. Tarkoituksena olisi rakentaa järjestelmä, jonka avulla pystyisi soittamaan ja vastaanottamaan normaaleja gsm tai 3g puheluja, mutta puheluiden soittaminen tapahtuisi esim jollain sipclientillä, tämä toki vaatii jonkinlaisen gsm-gatewayn yhdistettäväksi asterisk serveriin ja ideana on herännyt käyttää tähän jotain nokian vanhaa symbianpuhelinta. Onko tämä tuhoontuomittu idea ja kuulostaako tämä täysin mahdottomalta toteuttaa, miten tällaisia ratkaisuja yleensä ollaan toteutettu.
 
Nostampa vanhaa ketjua. Heräsi kysymys liittyen asteriskin ja gsm gatewayn yhteiseloon. Tarkoituksena olisi rakentaa järjestelmä, jonka avulla pystyisi soittamaan ja vastaanottamaan normaaleja gsm tai 3g puheluja, mutta puheluiden soittaminen tapahtuisi esim jollain sipclientillä, tämä toki vaatii jonkinlaisen gsm-gatewayn yhdistettäväksi asterisk serveriin ja ideana on herännyt käyttää tähän jotain nokian vanhaa symbianpuhelinta. Onko tämä tuhoontuomittu idea ja kuulostaako tämä täysin mahdottomalta toteuttaa, miten tällaisia ratkaisuja yleensä ollaan toteutettu.

Näitä virityksia on tullut tehtyä parikin. Ensimmäisessä harjoituksessa käytin yhdyskäytävänä Nokia Premicelliä. Viimeisessä käytin Asteriskin sijasta FusionPBX:ää (alla FreeSWITCH), jossa oli Huawei E1552-mokkula 3G-yhdyskäytävänä. Asteriskin chan_mobile-palikkaa en koskaan saanut kunnolla toimimaan. Siinä oli äänenlaatuongelmia ja vasteajatkin olivat surkeita. Taisi olla juuri Nokia 6600-symppari silloin käytössä. Huawein mokkula toimi mainiosti ja saattaa toimia edelleenkin. Sen puheominaisuudet piti avata maksullisella hakkerisoftalla.
 
Viimeksi muokattu:
Näitä virityksia on tullut tehtyä parikin. Ensimmäisessä harjoituksessa käytin yhdyskäytävänä Nokia Premicelliä. Viimeisessä käytin Asteriskin sijasta FusionPBX:ää (alla FreeSWITCH), jossa oli Huawei E1552-mokkula 3G-yhdyskäytävänä. Asteriskin chan_dongle-palikkaa en koskaan saanut kunnolla toimimaan. Siinä oli äänenlaatuongelmia ja vasteajatkin olivat surkeita. Taisi olla juuri Nokia 6600-symppari silloin käytössä. Huawein mokkula toimi mainiosti ja saattaa toimia edelleenkin. Sen puheominaisuudet piti avata maksullisella hakkerisoftalla.
Tarkoituksena olisi käyttää freepbx:ää tässä projektissa, mitkä huawein mokkulat tukevat puheominaisuuksia ja pitääkö ne avata maksullisella softalla. Nokia premicell on täysin outo laite meikäläiselle, mitä tutkin niin kyseessä on vanhempi puhelin.
Edittiä
taitaa mahdollisuus soittaa äänipuheluja olla kaikissa 3g ja 4g modeemeissa, koska ihan samanlainen modeemi sisällä kuin perus puhelimissa. Kuitenkin käyttäisin mielelläni jotain vanhempaa symbiania, koska niiden saatavuus on huomattavasti parempi kuin vanhempien 3g mokkuloiden
 
Viimeksi muokattu:
Tarkoituksena olisi käyttää freepbx:ää tässä projektissa, mitkä huawein mokkulat tukevat puheominaisuuksia ja pitääkö ne avata maksullisella softalla. Nokia premicell on täysin outo laite meikäläiselle, mitä tutkin niin kyseessä on vanhempi puhelin.
Edittiä
taitaa mahdollisuus soittaa äänipuheluja olla kaikissa 3g ja 4g modeemeissa, koska ihan samanlainen modeemi sisällä kuin perus puhelimissa. Kuitenkin käyttäisin mielelläni jotain vanhempaa symbiania, koska niiden saatavuus on huomattavasti parempi kuin vanhempien 3g mokkuloiden

Suppea lista yhteensopivista mokkuloista löytyy täältä. Chan_donglen kehitys on lopahtanut jo ajat sitten, joten en menisi takuuseen yhteensopivuudesta kun kyseessä on uudemmat mokkulat. Käsittääkseni nämä toimivat reitittimen kaltaisesti, eli ne narraavat tietokoneelle olevansa Ethernet-sovittimia. En tiedä, saako niistä puheominaisuutta kaivettua esille, vaikka modeemipiirit sitä periaatteessa tukevatkin.

Sain Huawei E1552:n puheominaisuuden päälle dc-unlockerilla. Laitoin mokkulan toimimaan FusionPBX:n kanssa, jossa vastaava softapalikka on mod_gsmopen. Oletan, että kaikki sen tukemat mokkulat toimivat myös chan_donglen kanssa.

Premicell on GSM-lankapuhelinsovitin ja niin Aatamin aikaista teknologiaa, etten sen suhteen vaivautuisi.
 
Suppea lista yhteensopivista mokkuloista löytyy täältä. Chan_donglen kehitys on lopahtanut jo ajat sitten, joten en menisi takuuseen yhteensopivuudesta kun kyseessä on uudemmat mokkulat. Käsittääkseni nämä toimivat reitittimen kaltaisesti, eli ne narraavat tietokoneelle olevansa Ethernet-sovittimia. En tiedä, saako niistä puheominaisuutta kaivettua esille, vaikka modeemipiirit sitä periaatteessa tukevatkin.

Sain Huawei E1552:n puheominaisuuden päälle dc-unlockerilla. Laitoin mokkulan toimimaan FusionPBX:n kanssa, jossa vastaava softapalikka on mod_gsmopen. Oletan, että kaikki sen tukemat mokkulat toimivat myös chan_donglen kanssa.

Premicell on GSM-lankapuhelinsovitin ja niin Aatamin aikaista teknologiaa, etten sen suhteen vaivautuisi.
Taidan kallistua fusionpbx:ään luettuani sen dokumentaatiota, vaikuttaa monipuolisemmalta kuin freepbx. VOitko pistää jotain dokumentaationtynkää tai ohjetta miten sait tuon toimimaan. Fusionpbx:n dokumentaatio puhuu gatewaysta, jonka kautta puhelut ulkoverkkoon kulkevat, ilmeisesti gatewayna tässä toimii tuo mod_gsmopen
 
Taidan kallistua fusionpbx:ään luettuani sen dokumentaatiota, vaikuttaa monipuolisemmalta kuin freepbx. VOitko pistää jotain dokumentaationtynkää tai ohjetta miten sait tuon toimimaan. Fusionpbx:n dokumentaatio puhuu gatewaysta, jonka kautta puhelut ulkoverkkoon kulkevat, ilmeisesti gatewayna tässä toimii tuo mod_gsmopen

Mod_gsmopen on todella se FreeSwitchin palikka, jolla Huawei-mokkula alkoi toimimaan. Niillä ohjeilla menin, ei siinä sen kummempaa. Pientä hässäkkää oli, kun koodi ei kääntynyt Raspberry Pi:lla, mutta AMD-prossulla varustetussa HP:n kevytpäätteessä se alkoi toimimaan.
 
Pienenä päivityksenä edelliseen, että tein oman GSM-yhdyskäytävän ja sain sen jopa toimimaan. Palvelimena on FreePBX 16/Asterisk 20 ja sen rautana Raspberry Pi 3B+. Paritin Android-kännykkäni Bluetoothilla raspberryyn. Kännykkä on määritelty trunkiksi Asteriskin chan_mobile-moduulin avulla. Sekä tulevat että lähtevät puhelut toimivat, eli voin vastata kännykkänumerooni soitettuihin puheluihin vanhalla Ericsson Dialog-lankapuhelimella ja jopa soittaa ulos samaisella näppäinpuhelimella. Puhelinvanhus on Linksys PAP2-analogisovittimen takana, joka tekee siitä SIP-digitaalisen. Vähän harmittaa, ettei vielä vanhempi bakeliittipuhelimeni osaa soittaa ulos, sillä tuo PAP2 ei ymmärrä pulssivalinnan päälle.
 
Näitä virityksia on tullut tehtyä parikin. Ensimmäisessä harjoituksessa käytin yhdyskäytävänä Nokia Premicelliä. Viimeisessä käytin Asteriskin sijasta FusionPBX:ää (alla FreeSWITCH), jossa oli Huawei E1552-mokkula 3G-yhdyskäytävänä. Asteriskin chan_mobile-palikkaa en koskaan saanut kunnolla toimimaan. Siinä oli äänenlaatuongelmia ja vasteajatkin olivat surkeita. Taisi olla juuri Nokia 6600-symppari silloin käytössä. Huawein mokkula toimi mainiosti ja saattaa toimia edelleenkin. Sen puheominaisuudet piti avata maksullisella hakkerisoftalla.
Ehkä tyhmä kysymys, mutta miten tuo Mod_gsmopen liitetään fusionpbx:n gatewayksi, webbikäyttöliittymä kyselee gatewayn ip osoitetta ja mitään selkeää valintaa mistä voisin valita mobuulin gatewayksi ei ole, en ole vielä kääntänyt moduulia, kunhan ihmettelen.
Edittiä
Tutkin hieman lisää ja mitään selkeää asennuspolkua ei näyttäisi olevan tuolle moduulille, miten itse asensit sen ja löytyykö tuolle jokin fusionpbx:n githubarkisto
 
Viimeksi muokattu:
Ei näyttäisi tuo mod_opengsm kääntyvän uusimmalla debianilla miten @epollari sait sen asennettua fusionpbx:ään
Antaa seuraavanlaisia virheitä loputtomasti

256 | SMSStatusReportMessage(std::string pdu) throw(GsmException);
| ^~~~~
/usr/include/gsmlib/gsm_sms.h:315:40: error: ISO C++17 does not allow dynamic exception specifications
315 | SMSCommandMessage(std::string pdu) throw(GsmException);
| ^~~~~
/usr/include/gsmlib/gsm_sms.h:367:46: error: ISO C++17 does not allow dynamic exception specifications
367 | SMSDeliverReportMessage(std::string pdu) throw(GsmException);
| ^~~~~
/usr/include/gsmlib/gsm_sms.h:430:45: error: ISO C++17 does not allow dynamic exception specifications
430 | SMSSubmitReportMessage(std::string pdu) throw(GsmException);
| ^~~~~
make[3]: *** [Makefile:747: mod_gsmopen_la-gsmopen_protocol.lo] Error 1
make[3]: Leaving directory '/usr/src/freeswitch-1.10.11/src/mod/endpoints/mod_gsmopen'
make[2]: *** [Makefile:731: mod_gsmopen-all] Error 1
make[2]: Leaving directory '/usr/src/freeswitch-1.10.11/src/mod'
make[1]: *** [Makefile:798: mod_gsmopen] Error 2
make[1]: Leaving directory '/usr/src/freeswitch-1.10.11/src/mod'
make: *** [Makefile:4337: mod_gsmopen] Error 2
 
Ei näyttäisi tuo mod_opengsm kääntyvän uusimmalla debianilla miten @epollari sait sen asennettua fusionpbx:ään
Antaa seuraavanlaisia virheitä loputtomasti

256 | SMSStatusReportMessage(std::string pdu) throw(GsmException);
| ^~~~~
/usr/include/gsmlib/gsm_sms.h:315:40: error: ISO C++17 does not allow dynamic exception specifications
315 | SMSCommandMessage(std::string pdu) throw(GsmException);
| ^~~~~
/usr/include/gsmlib/gsm_sms.h:367:46: error: ISO C++17 does not allow dynamic exception specifications
367 | SMSDeliverReportMessage(std::string pdu) throw(GsmException);
| ^~~~~
/usr/include/gsmlib/gsm_sms.h:430:45: error: ISO C++17 does not allow dynamic exception specifications
430 | SMSSubmitReportMessage(std::string pdu) throw(GsmException);
| ^~~~~
make[3]: *** [Makefile:747: mod_gsmopen_la-gsmopen_protocol.lo] Error 1
make[3]: Leaving directory '/usr/src/freeswitch-1.10.11/src/mod/endpoints/mod_gsmopen'
make[2]: *** [Makefile:731: mod_gsmopen-all] Error 1
make[2]: Leaving directory '/usr/src/freeswitch-1.10.11/src/mod'
make[1]: *** [Makefile:798: mod_gsmopen] Error 2
make[1]: Leaving directory '/usr/src/freeswitch-1.10.11/src/mod'
make: *** [Makefile:4337: mod_gsmopen] Error 2

Aikaa on kulunut kahdeksan vuotta kun viimeksi käänsin kyseistä softaa. Näyttää siltä, että nykykääntäjä tykkää kyttyrää vanhasta koodista. Dynamic exceptionit eivät ole tuettuina C++-kääntäjän 17-versiossa. Voisit yrittää C++14-kääntäjää, mutta muita ongelmia voi olla tiedossa. Mod_opengsm-ohjeissa mainitaan kyllä Debian 12. Täytyy myöntää, etteivät erityisohjeet oikein vakuuta.
 
Aikaa on kulunut kahdeksan vuotta kun viimeksi käänsin kyseistä softaa. Näyttää siltä, että nykykääntäjä tykkää kyttyrää vanhasta koodista. Dynamic exceptionit eivät ole tuettuina C++-kääntäjän 17-versiossa. Voisit yrittää C++14-kääntäjää, mutta muita ongelmia voi olla tiedossa. Mod_opengsm-ohjeissa mainitaan kyllä Debian 12. Täytyy myöntää, etteivät erityisohjeet oikein vakuuta.
Sain tämän onneksi ratkaistua, lähti kääntymään tunkkailemalla seuraavia tiedostoja
cd /usr/src/freeswitch-1.10.11/src/mod/endpoints/mod_gsmopen
sed -i 's/throw([^)]*)//g' gsmopen_protocol.cpp
En sitten tiedä onko tuo kovin elegantti ratkaisu, mutta nyt toimii.
 
Tulipa askarreltua vanhojen tölkkien kanssa, eli Elisa kotiboksi ARV4510PW. Openwrt löytyy tuohon ja kun ottaa 19.07.10 version niin muisti riittää Asterisk:in ajoon.

Eli asenna
https://downloads.openwrt.org/relea...ay-arcadyan_arv4510pw-squashfs-sysupgrade.bin

Laite asetukset niin että pääset verkkoon

Asterisk asennus:
opkg install asterisk16 asterisk16-chan-lantiq asterisk16-chan-sip asterisk16-codec-a-mu asterisk16-codec-alaw asterisk16-codec-resample asterisk16-codec-ulaw asterisk16-res-rtp-asterisk asterisk16-pjsip nano


Poista turhat ajosta, eli disabloi uhttp, dmesg, firewall yms. jotta muisti riittää Asterisk:ille. Säädä Lantiq ajuri kuntoon, eli /etc/asterisk/lantiq.conf:
[interfaces]
;
; Number of FXS ports (default: 2)
channels = 2
;
; Create contexts per channel (default: off)
per_channel_context = on
;
; Set tapi firmware file path
;firmwarefilename = /lib/firmware/danube_firmware.bin
;
; Set tapi bbd file path
;bbdfilename = /lib/firmware/danube_bbd_fxs.bin
;
; Set vmmc device path
;basepath = /dev/vmmc
;
[general]
;
; Gain setting for the receive and transmit path.
; The value is given in dB within the range (-24dB to +12dB), in 1 dB steps.
;
rxgain = -10
txgain = -10
Gain asetus -10 on sopiva lyhyille piuhoille, vakio 1 aiheuttaa kiertoa jos ei ole kilometritolkulla lakua puhelimelle. Teoriassa tuolla +12 asetuksella saa sen ~10km johdon toimimaan.

Lopuksi vielä /etc/asterisk/extensions.conf
[from-internal]

;PHONE 2
exten = 102,1,Answer()
same = n,DIAL(TAPI/1,30,t)
same = n,Hangup()

;PHONE 1
exten = 101,1,Answer()
same = n,DIAL(TAPI/2,30,t)
same = n,Hangup()

[ltq1_out]
exten => _[+1-9]!,1,Dial(local/${EXTEN}@from-internal/n)

[ltq2_out]
exten => _[+1-9]!,1,Dial(local/${EXTEN}@from-internal/n)

[lantiq1]
include => ltq1_out

[lantiq2]
include => ltq2_out
Buuttaa loota, kytke Phone 1/2 liittimiin lankapuhelmet. Phone 1:sestä voi soittaa kakkoseen numerolla 102 ja toisinpäin 101.

Lootaan voi kytkeä SIP ja PJSIP kautta SIP puhelimia tai yhteyden eteenpäin normi Asterisk conffeilla.
 
Pieni lisäys vielä tähän, eli ARV4510PW ja chat-lantiq TAPI osaavat yhdessä HW pohjaiset koodekit ja linjan koodaukset. Tukee sekä pulssi että DTFM numeronvalintaa. Voi käyttää vanhoja numerovalintakiekolla olevia puhelimia ja uudempia näppäinpuhelimia. Erityisesti kiekkopuhelimien numerot dekoodataan luotettavasti jota erilaiset äänikorttipohjaiset SW räpellykset ei osaa. Sopivalla gain-tasolla äänenlaatu on hyvä vaikka lootassa on ihan mopo CPU, ääni ei ala pykimään kun pysyy ulaw tai alaw koodekkeissa.
 
Jos joku muu inostuu kaivamaan kaapisto kotibokseja niin tässä on näemmä kaksikin "omainaisuutta". Eka on muistin vähyys, eli tuolta saa pistää kaikki dnsmasq ja wpad myöten pois ajosta että asterix ei kaadu. Toinen on sitten tämän laatikon cpu, eli DanubeLantiq. Dualcore cpu:n toinen core on varattu puhtaasti voip-käyttöön ja kun se on 24/7 ajossa niin cpu vaatiikin jäähdytyksen. Elisa on jättänyt siilin pois joten sellaisen sinne joutuu askartelemaan. Kuumetessaan CPU sotkee flash muistin ja kaatuu siihen.

Mutta muuten tuo 19 sarjan openwrt ja 16 sarjan asterisk on toimiva setti, ollut ajossa nyt muutamanpäivän ja on nyt toimintavarma. Softasip puhelimet kännyköissä ja pari kotiboksia SIP yhteydellä sekä neljä lankapuhelinta. Toimiva puhelinjärjestely jos tuollaiselle on tarvetta.
 
Tulipa askarreltua vanhojen tölkkien kanssa, eli Elisa kotiboksi ARV4510PW. Openwrt löytyy tuohon ja kun ottaa 19.07.10 version niin muisti riittää Asterisk:in ajoon.

Tuosta pitäisi myöntää urhoollisuusmitali.

Säästin vanhempien Elisa kotiboksin samaa tarkoitusta varten, mutta sisu petti ja päädyin Raspberryyn. Vaikka kyseessä on vanhempi RPi, FreePBX 17 ja Asterisk 21 toimivat ongelmitta. Puhelimina on bakeliittinen Suomi-Siemens valintalevyineen ja Ericsson Diavox-näppäinpuhelin. Nämä Grandstream HT-802:n takana. Lisäksi on Cisco 7960G ja 8851 IP-puhelimet.

Kiva kuulla, että Elisa kotiboksi toimii kiekkopuhelimien kanssa. Jos kotiboksi löytyy varastosta, voisin tehdä siitä vaikka puhelinkeskuksen vanhuskäyttöön.

OpenWrt:n ja Asteriskin asensin kerran TP-Link TP-MR3040-mobiilireitittimeen. Extroot-konffiksen se vaati muistitikkuineen, mutta se toimi edelleen myös Wifi-reitittimenä. Puhelimina olivat Nokian sympparikännyt, joissa nätisti integroitu SIP/VoIP-clientti. Demosimme sillä mobiilimainospalvelua, mutta eniten aikaa meni selittelyyn, että miten mobiiliverkko saadaan mahtumaan tupakka-askin kokoiseen laitteeseen.

Jos keksit käyttöä Cisco 7960G:lle, se joutaisi.
 
Onhan tuo puhdas Asterisk melko jyrkällä oppimiskäyrällä oleva kokemus. Lähinnä asiaa innosti se että linjaäänituli luuriin kun haki paketinhallinnalla paketit ja heitti openwrt wikin mukaisen conffin sisään. Seuraava steppi olikin sitten huomattavasti pitempi että sai Asterisk conffiin ensimmäisen toimivan puhelinyhteyden. Nykyinen conffi on liian ruma julkaistavaksi, pitää siistiä syntaksia vielä, nyt tuo on liian cut&paste eri esimerkeistä. Call id välitys myös on tehokkaasti rikki ja ananomous-sip yhteydet sallittuja. Tuo kahden analogisen puhelimen asetus on nyt suurinpiirtein kuten pitääkin olla. PJSIP conffi vaatii yhden illan fiksauskierroksen syntaksin puhtaaksikirjoittamiseen ja sitten tuo Call id vielä päälle. Tämä odottaa seuraavaa puhelin-innostusta joka tapahtunee sitten joskus.
 
Jos keksit käyttöä Cisco 7960G:lle, se joutaisi.
Vähän liian hapokas laite kun tarttee tftp serverin joka käynnistykseen. Pitää katsella jos tulee jostain halpa Groundstreamin SIP puhelin vastaan, nuo kun vaatii vain puhelimen omasta menusta SIP asetukset. Ei passaa kerätä liikaa uutta jonoa harrastussäätöön. Lisäksi tuo nykyinen Kotiboksi softasetti on stabiili, niin siihen en tee muita muutoksia kuin Asteriskin conffeja..
 
Vähän liian hapokas laite kun tarttee tftp serverin joka käynnistykseen. Pitää katsella jos tulee jostain halpa Groundstreamin SIP puhelin vastaan, nuo kun vaatii vain puhelimen omasta menusta SIP asetukset. Ei passaa kerätä liikaa uutta jonoa harrastussäätöön. Lisäksi tuo nykyinen Kotiboksi softasetti on stabiili, niin siihen en tee muita muutoksia kuin Asteriskin conffeja..
TFTP on helppo nakki. Käytin ensiksi OpenWrt-reitittimeni (Ubiquity EdgeRouter X) sisäänrakennettua palvelinta. Raksi ruutuun LUCI:ssa ja homma on hoidettu. Asensin sittemmin TFTP-palvelimen Raspberryyn, sillä ylimääräinen Cisco-tauhka (soittoäänet ym.) vie tilaa, eikä ERX:ssä ole paikkaa USB-muistitikulle.
Oikeiden Cisco-asetusten löytäminen oli hankalampaa, mutta ne löytyivät kyllä. Uudempaan ciscooni saa rahalla webbikäyttöliittymällä varustetun MPP-firmiksen, mutta kun maksoin 14€ laitteesta (avaamattomassa paketissa!), ei viitsi tuhlata ohjelmistoihin yli kolminkertaista summaa hetkellisen käyttömukavuuden takia.
Vaihda ylimääräinen kotiboksisi vanhaan Ciscooni, jos sulla semmoinen on. Tutkin tarkoin varastoni, mutta kotiboksia ei löytynyt. On tainnut mennä Kierrätyskeskukselle.
Grandstreamit ovat OK, mutta eivät yllä Ciscon laatutasolle. Ja nörttinä on kiva kerrankin omistaa Cisco-sälää, vaikka lievää masokismiä se edellyttää.
 
Juu, ei tuo tftp nyt ole sinällään ongelma mutta noissa ajossa olevissa kotibokseissa ei riitä muisti sellaiseen luksukseen ja ylimmäristä laatikkoa en laita kun on nyt täysin standalone. Eikä kyllä ole sitä ylimääräistä kotiboksiakaan kun noita oli kolme joista yhdestä on analogiset puhelinlähdöt hajalla.

Jos tämä Lantiq kiinnostaa niin tuossa on listaa:
[OpenWrt Wiki] Lantiq SoCs

Kun katsoo Lantiq Danube kohtaa niin Vodafonen Easybokseja saa noin ilmaiseksi Saksana ebaysta. Noissa on se maaginen 64M muistiakin niin ei tartte tapella senkään kanssa, mahtuu wlan, luci ja muutkin pyörimään yhtäaikaa. Meinasin itse ostaa pari noita kun muistin kanssa takkusi, mutta kun raapi kaiken totaalisesti pois niin alkoi Asterisk pysymään pystyssä. Kannattaa katsoa että purkin mukana tulee se VähänPoikkeavaPistoke puhelinlähtöön:
1728576911140.jpeg
 
Juu, ei tuo tftp nyt ole sinällään ongelma mutta noissa ajossa olevissa kotibokseissa ei riitä muisti sellaiseen luksukseen ja ylimmäristä laatikkoa en laita kun on nyt täysin standalone. Eikä kyllä ole sitä ylimääräistä kotiboksiakaan kun noita oli kolme joista yhdestä on analogiset puhelinlähdöt hajalla.

Jos tämä Lantiq kiinnostaa niin tuossa on listaa:
[OpenWrt Wiki] Lantiq SoCs

Kun katsoo Lantiq Danube kohtaa niin Vodafonen Easybokseja saa noin ilmaiseksi Saksana ebaysta. Noissa on se maaginen 64M muistiakin niin ei tartte tapella senkään kanssa, mahtuu wlan, luci ja muutkin pyörimään yhtäaikaa. Meinasin itse ostaa pari noita kun muistin kanssa takkusi, mutta kun raapi kaiken totaalisesti pois niin alkoi Asterisk pysymään pystyssä. Kannattaa katsoa että purkin mukana tulee se VähänPoikkeavaPistoke puhelinlähtöön:
TFTP-palvelin voi olla muuallakin, jopa hetkellisesti omalla läppärillä. Cisco 7960 tyytyy aiemmin haettuihin asetuksiin jos TFTP-palvelin ei vastaa.

Fritzbox-Lantiqeja olen katsonut sillä silmällä, mutta sopivaa ei ole tullut vastaan, ei ainakaan sopuhintaan. Ihanteellisessa sellaisessa olisi kaksi FXS-porttia ja LTE, jonka laittaisin mökkisaarelle. OpenWrt-sivusto ei kerro yksiselitteisesti onko kehittyneimmissä malleissa puhelintoiminnot tuettuina. Freetz-firmis ilmeisesti toimii, ja voishan LTE-datat hoitaa USB-piuhan päässä olevalla kännykällä.
 
Itse tutkin tämän vaihtoehdon:
[OpenWrt Wiki] Arcadyan ARV752DPW

Kävin laitteen kuvat läpi ja siitä löytyy 2kpl analogisen puhelinlinjan jännitegeneraattoripiirejä:
1728743103026.png

Ympyröity vasemmassa yläkulmassa. Analogisen puhelimen pistokkeet on noita VähänPoikkeavia. Näitä EasyBox 802 tölkkejä löytyy Ebaystä muutamalla eurolla, Vodafone on noita kaiketi toimittanut aikoinaan valtavasti Saksa-Puola akselilla. Ainoa ongelma on 8M flash mutta usb tikulla saa riittävästi flashia kyllä.
 
Jo on ohjeita sivustolla. FXS/FXO-tuki näyttää olevan 'WiP,' mutta ilmeisesti mahdollinen.

Näyttää olevan melkoiset lähetyskulut saksalaisilla, mutta ne lienevät neuvoteltavissa. Ilmeisesti ilmoitetut kulut ovat eBayn automaagisesti laskemia.

Sain juuri tilattua Torista Fritzbox 7270:n 7 eurolla. Saa nähdä kuinka pitkälle pötkii perusfirmiksellä, jossa näyttää riittävän ominaisuuksia, aivan puhelinvaihteeksi asti. FritzOS -- muttei välttämättä näin vanha versio -- tukee näköjään mokkuloita joissa on ääniominaisuus. Aion kokeilla jos vanhasta Huawei E1552:sta on GSM-yhdyskäytäväksi.
 
Innostuin itsekkin ostoksille, eli kirpputorilta löytyi laatikollinen sip-puhelimia. Mukaan tarttui Grandstream GXP2010 ja Persephone IP phone. Kustantivat vitosen kappale. Kumpikin lähti pelaamaan Asteriskin kanssa kunhan konffi sip asetukset. Näissä näyttää olevan noinkaikissa puhelimen paikallisena salasanana 123 ja web-käyttöliittymässä admin riippumatta valmistajasta. Jos näitä ostelee niin kannattaa tarkastaa että salasana on tiedossa tai vakiot kelpaa muuten puhelin on ser romua. Kiinalaisia kuten tuo Persephone ei kannata resetoida tehdas-asetuksiin, käyttöliittymä vaihtuu kiinaksi:poop:. Joutui guuggelin-linssillä tulkkaamaan lcd-näytön valikkoja.
 
IP-puhelimia saa todella törkeän halvalla, varsinkin käytettynä. Ilmeisesti puhelinmyyjät ja -tukihenkilöt luopuvat niistä, sillä sain puoli-ilmaiseksi kaksi Cisco 7912G:tä, jotka olivat olleet Elisan käytössä.
Eikö ainakin Grandstreamissa ole webbikäyttöliittymä? Olen ollut todella tyytyväinen Grandstream ATA:ani, joka toimii myös ikivanhojen puhelimien kanssa, joissa valintalevyjen ajoitukset saattavat poikketa normista. Sain myös SA-kenttäpuhelimen toimimaan, vaikka siinä on erillinen, ilmeisesti Ruotsista tuotu valintalevy. Numerojärjestys poikkeaa meikäläisestä, mutta Grandstream osaa tulkita sitäkin.
 
Viimeksi muokattu:
Eikö ainakin Grandstreamissa ole webbikäyttöliittymä?
Grandstreameissa on aina web käyttöliittymä. Samoin noissa kiinalaisissa, perustunevat kaiketi kaikki johonkin samaan softaan jota sitten kaikki kiinalaiset kopioi. Kummassakin systeemissä riittää että saa toisen salasanan niin sitäkautta saa resetoitua sekä puhelimen oman LCD:n että web-käyttöliittymän salasanat. Grandstreamit saa myös configuroitua Cisco-tyylisesti tftp/http palvelimen kautta ladattavilla tiedostoilla jos dhcp optiot on sallittuna.

Laitan Asteriskin SIP ja PJSIP conffit tulemaan kunhan ehdin siistiä ne julkaistavaan kuntoon tässä jokupäivä.
 
Käydääs läpi yksi toimiva kokonaisuus Asterisk konffeja, tuntuvat olevan vähän harvassa hyvät esimerkit. Alan foorumeillakin tuntuu olevan lähtökohta perussetupintekijöille että osta palvelu jostain rahalla tai sitten mene maksulliselle kurssille.

Setupissa on kaksi erillistä Asterisk laatikkoa joissa TAPI rajapinnan takana aina kaksi analogista puhelinta. Laatikkona Elisan Bewan iBox kotiboksi. Asterisk versio on 16 ja mitään tietoturvaa tässä ei ole mukana eli asennus suljettuun verkkoon. Softaversiot ovat vanhoja.

Ensimmäinen loota on ip-osoitteessa 192.168.2.51. Analogiset puhelinlinjat numeroissa 101 ja 102. Laatikko tarjoaa PJSIP kautta SIP yhteydet toiselle laatikolle (192.168.2.52) analogisille puhelimille numeroille 103 ja 104. Lisäksi numeroavaruus 600 on varattu SIP puhelimille joista numero 601 on käytössä. SIP puhelimen username on 601, numero 601 ja salasana "salakala". Koska Asterisk konffit on pitkiä, niin ne on jaettu seuraaviin postauksiin. Lantiq ajurin conffi löytyy ylempää samoin loitsu jolla tämän saa asentumaan Openwrt 19-sarjaan. Puhelinasetusten lisäksi voi säätää vaikka Asteriskin äänimaailman Suomalaiseksi indications.conf:ista muuttamalla country=fi.

Teoriassa konffien pitäisi toimi missä tahansa Asterisk setupissa joissa on tarjolla TAPI rajapinta mutta ainakin itse törmäsin conffeissa outouksiin mm. context käsitteessä jos sitä käytti useammin kuin kerran jne. joten näissä on turhaa toistoa kun ei muuten toiminut. Asteriskia pidetään suhteellisen bugisena paskakasana ja syntaksin puolesta voi olla että saman asian erimuotoinen esittäminen johtaa ihan väärään lopputulokseen kun bugeja riittää.
 
Viimeksi muokattu:
Ensimmäiseksi loota 192.168.2.51. PJSIP asetukset pjsip.conf tiedostossa, kopioi alkuperäinen talteen, sieltä voi katsoa mallia kun tekee omaa versiotaan. Sisällöksi fileen tämä:
[transport-udp]
type=transport
protocol=udp
bind=192.168.2.51

[601]
type=endpoint
context=from-internal
disallow=all
allow=ulaw
auth=601
aors=601

[601]
type=auth
auth_type=userpass
password=salakala
username=601

[601]
type=aor
max_contacts=1
minimum_expiration=120

[103]
type=endpoint
context=from-internal
disallow=all
allow=ulaw
allow=gsm
auth=103
aors=103

[103]
type=auth
auth_type=userpass
password=salakala
username=103

[103]
type=aor
max_contacts=1

[104]
type=endpoint
context=from-internal
disallow=all
allow=ulaw
allow=gsm
auth=104
aors=104

[104]
type=auth
auth_type=userpass
password=salakala
username=104

[104]
type=aor
max_contacts=1
PJSIP rajapinta tarjoaa yhteydet SIP puhelimiin, seuraavaksi niille ja analogisille puhelimille numeroiden ohjaukset kuntoon extensions.conf tiedostolla. Alkuperäinen talteen ja tämä siihen päälle:
[from-internal]
;PHONE 2
exten = 102,1,Answer()
same = n,DIAL(TAPI/1,30,t)
same = n,Hangup()

;PHONE 1
exten = 101,1,Answer()
same = n,DIAL(TAPI/2,30,t)
same = n,Hangup()

;SIP Phones 600
exten = _6XZ,1,Answer()
;same = n,Set(CALLERID(num)=101)
same = n,DIAL(PJSIP/${EXTEN},60)
same = n,Hangup()

;SIP Phone 103
exten = 103,1,Answer()
same = n,DIAL(PJSIP/${EXTEN},60)
same = n,Hangup()

;SIP Phone 104
exten = 104,1,Answer()
same = n,DIAL(PJSIP/${EXTEN},60)
same = n,Hangup()
[ltq1_out]
;exten => _[+0-9]!,1,Goto(tel1_out,${EXTEN},1)
exten => _[+1-9]!,1,Set(CALLERID(all)="Nimi2"<102>)
same => n,Dial(local/${EXTEN}@from-internal/n)

[ltq2_out]
;exten => _[+0-9]!,1,Goto(tel2_out,${EXTEN},1)
exten => _[+1-9]!,1,Set(CALLERID(all)="Nimi1"<101>)
same => n,Dial(local/${EXTEN}@from-internal/n)

[lantiq1]
include => ltq1_out

[lantiq2]
include => ltq2_out
Tällä saa toimimaan yhden lootan analogiset puhelimet ja sip-yhteyden yli numerot 103, 104 ja 601.
 
Toinen loota eli 192.168.2.52. Ensin sip.conf:
[general]
context=incoming

allow=ulaw
allow=gsm

; Register and get calls from Foo Provider, to our number 103 and 104
register => 103:salakala@192.168.2.51/103
register => 104:salakala@192.168.2.51/104

[Myprovider3]
type=friend
secret=salakala
username=103
host=192.168.2.51
dtmfmode=rfc2833
canreinvite=no
disallow=all
allow=ulaw
allow=gsm
insecure=port,invite
fromdomain=192.168.2.51
context=incoming

[Myprovider4]
type=friend
secret=salakala
username=104
host=192.168.2.51
dtmfmode=rfc2833
canreinvite=no
disallow=all
allow=ulaw
allow=gsm
insecure=port,invite
fromdomain=192.168.2.51
context=incoming
Seuraavaksi extensions.conf:
from-internal3]

;PHONE 2
exten = 104,1,Answer()
same = n,DIAL(TAPI/1,30,t)
same = n,Hangup()

;PHONE 1
exten = 103,1,Answer()
same = n,DIAL(TAPI/2,30,t)
same = n,Hangup()

;SIP Phones 600
exten = _6XZ,1,Answer()
same = n,DIAL(SIP/Myprovider3/${EXTEN},60)
same = n,Hangup()

;SIP Phone 101
exten = 101,1,Answer()
same = n,DIAL(SIP/Myprovider3/${EXTEN},60)
same = n,Hangup()

;SIP Phone 102
exten = 102,1,Answer()
same = n,DIAL(SIP/Myprovider3/${EXTEN},60)
same = n,Hangup()

[from-internal4]

;PHONE 2
exten = 104,1,Answer()
same = n,DIAL(TAPI/1,30,t)
same = n,Hangup()

;PHONE 1
exten = 103,1,Answer()
same = n,DIAL(TAPI/2,30,t)
same = n,Hangup()

;SIP Phones 600
exten = _6XZ,1,Answer()
same = n,DIAL(SIP/Myprovider4/${EXTEN},60)
same = n,Hangup()

;SIP Phone 101
exten = 101,1,Answer()
same = n,DIAL(SIP/Myprovider4/${EXTEN},60)
same = n,Hangup()

;SIP Phone 102
exten = 102,1,Answer()
same = n,DIAL(SIP/Myprovider4/${EXTEN},60)
same = n,Hangup()

[incoming]

;PHONE 2
exten = 104,1,Answer()
same = n,DIAL(TAPI/1,30,t)
same = n,Hangup()

;PHONE 1
exten = 103,1,Answer()
same = n,DIAL(TAPI/2,30,t)
same = n,Hangup()

[ltq1_out]
;exten => _[+0-9]!,1,Goto(tel1_out,${EXTEN},1)
exten => _[+1-9]!,1,Set(CALLERID(all)="Nimi4"<104>)
same => n,Dial(local/${EXTEN}@from-internal4/n)

[ltq2_out]
;exten => _[+0-9]!,1,Goto(tel2_out,${EXTEN},1)
exten => _[+1-9]!,1,Set(CALLERID(all)="Nimi3"<103>)
same => n,Dial(local/${EXTEN}@from-internal3/n)

[lantiq1]
include => ltq1_out

[lantiq2]
include => ltq2_out
 
Sain myös FRITZ!Box 7270-puhelinvaihteeni skulaamaan. Konffasin sen lähiverkkooni clientiksi ja kytkin siihen sekä näppäin- että valintalevypuhelimeni. Molemmilla voi soittaa keskenään. FreePBX antaa 'ulkolinjan'. Jälkimmäisessä on vielä jotain koodekkihäikkää, mutta Neiti Aika vastaa sujuvasti.
Matkaan tuli pieni mutka kun 'Fritsuboksi' oletusarvoisesti tarjosi ulkolinjaa nostaessa luurin. Sisälinja valitaan **-näppäinsarjalla, mikä ei tietenkään onnistu vanhalla kiekkopuhelimella. Onneksi automaattiset ulkolinjavalinnat saa pois valitsemalla kryptiset numerosarjat #11*0*#91** ja #12*0*#91**. Tämän jälkeen pelkät lyhytnumerot 1 ja 2 laittavat puhelimet pirisemään.
Kaavailtu piirikytkentäinen GSM-yhdyskäytäväni, Huawei E1552, valitettavasti ei lähtenyt toimimaan. Fritsuboksi tunnisti sen kyllä, mutta ko. 'huivei' on ikivanha 2G/3G-mokkula ja jopa Telia on kuopannut 3G-verkkonsa. Pelkkä 2G, vaikka se vielä toimiikin Suomessa 2029 saakka, ei ilmeisesti Fritsuboksille kelpaa. Samainen huivei toimi kyllä aikoinaan Asteriskin chan_donglen kanssa, mutta moduulin ylläpito on näköjään lopetettu. Aion vielä kokeeksi kytkeä Nokia 32 PBX-yhdyskäytäväni ulkolinjaksi Fritsuboksiin. Äänenlaatu kiinnostaa, sillä transkoodausta on ilmeisesti pelissä melkoisesti.
Tämä keskustelu ajautui nyt pois Asteriskistä, mutta tulipahan todistettua, että 7 euron FRITZ!boxista on vielä pienpuhelinvaihteeksi, ihan vielä perusfirmiksellä. Omani lähtee keväällä Päijänteen mökkisaarelle. Vielä kun saisi DECTin kantamaan mantereelle asti...
 
Snomin vehkeillä saa 1000 tukiasemaa samaan verkkoon. Niillä saa jo kohtuukokoisen mökkisaaren ja vähän ympäristöäkin, jos tuollaisilla muutaman sadan metrin kokoisilla soluilla rakentelee. Halpaahan tuo ei kyllä ole :D

Ulossoittoja saattaa rajoittaa se, että operaattorit ottavat vähän nirsosti vastaan epämääräisiä parametrejä. Vähemmän yllättäen tuolla estetään erilaisia huijausmekanismeja. Todennäköisesti auttaa, jos käyttää lähtevänä numerona (ja ehkä nimenä) sitä kännykkäliittymän numeroa. Verkosta sitten kiinni onko +, 00 vai suoraan 358XXX mitä odottaa.
 
Snomin vehkeillä saa 1000 tukiasemaa samaan verkkoon. Niillä saa jo kohtuukokoisen mökkisaaren ja vähän ympäristöäkin, jos tuollaisilla muutaman sadan metrin kokoisilla soluilla rakentelee. Halpaahan tuo ei kyllä ole :D

Ulossoittoja saattaa rajoittaa se, että operaattorit ottavat vähän nirsosti vastaan epämääräisiä parametrejä. Vähemmän yllättäen tuolla estetään erilaisia huijausmekanismeja. Todennäköisesti auttaa, jos käyttää lähtevänä numerona (ja ehkä nimenä) sitä kännykkäliittymän numeroa. Verkosta sitten kiinni onko +, 00 vai suoraan 358XXX mitä odottaa.
Meillä on pitkulainen pikkusaari, johon alunperin saimme netin naapurisaaren Wifin kautta. Sateella yhteys pätki kun mikroaallot tyssäsivät sadepisaroihin, joten toin Hongkongista naapurille laittoman 2,4GHz-vahvistimen (rikos on vanhentunut). Lisämaustin sitä vielä repeaterilla, jolloin koko saari saatiin Wifin piiriin. Ei edes tarkasti suunnatuilla Pringles-purkeillakaan saa mantereen autopaikalle kusoja, sillä välissä on vielä kolmas, isompi kalliosaari.
En oikein ymmärrä, miten numeron saisi feikattua, sillä kyse on piirikytkentäisistä GSM-puheluista. Ulkomaiset VoIP-palveluntarjoajat ovat tietenkin luku sinänsä. Ulkomaiset puhelinmyyjät soittelivat mun numerosta ympäri Suomea, kunnes vaihdoin operaattoria, Telialta Elisalle. Elisalta löytyi lääke.
 
Jatketaas Asterisk asiaa, eli jaksoin säätää BLF asetukset kuntoon. Eli nyt tuossa Grandstream GXP2010:ssa olevat 18 led painonappia pelaa kuten pitääkin. Kertovat suoraan varatut linjat(punainen), hälyttävän linjan(punainen vilkkuva) ja vapaan linjan vihreällä. Nappia painamalla soittaa ko. numeroon. Nuo sai pelaamaan Asteriski hint-tagilla. GXP sitten tilaa statuksen ja seuraa sitä.

1729531422190.png


602 puhuu 601:selle ja 104 soittaa 102:selle. Nyt on blinkenglightiä. Vielä pitää keksiä noille lopuille 9 napille jokin tarkoitus, vaihtoehtoja on BLF eventlist ja presense watcher.
;SIP Phones 600
exten = _6XZ,1,Answer()
same = n,DIAL(PJSIP/${EXTEN},60)
same = hint,PJSIP/${EXTEN}
same = n,Hangup()
Yllä esimerkki millä saadaan 6?? numeroavaruudelle BLF:ät. SIP puhelimesta sitten pitää tilata jokainen numero erikseen omalle lampulleen tyyliin 601, 602. Nämä toimii hyvin pjsip-endpointeille mutta Lantiq TAPI:ista ei saa irti soittavaa tahoa, toimii jos sattuu toimimaan. Eli bugista koodia. Ongelman voi kiertää kun laittaa nämä kotilootat pelkiksi tyhmiksi Asterisk sip-analog adaptereiksi ja tunkkaa varsinaisen Asteriskin jonnekkin toiseen koneeseen. Eli esimerkkisetapissa numerot 101 ja 102 bugaa, kaikki muut pelaa hienosti.
 
Nyt kun Asterisk on ollut käytössä vähänaikaa niin on tullut esille pientä tuunattavaa. Käytännössä analogisten puhelimien ja SIP puhelimien gainit eroaa merkittävästi toisistaan. A to A puhelut toimii ja samoin SIP to SIP puhelut mutta A to SIP aiheuttaa melkoisen kaikuongelman. Erityisen herkkä tälle on LM Ericsson Dialog. Dialog on ollut alunperin tarkoitettu analogiseen puhelinverkkoon jossa ei ole viiveitä ja kaiunpoisto on tehty puhtaasti akustisesti. Luurin muotoiluun on hyvä syy, eli kahva muodostaa pitemmän lenkin äänelle kuin suoraan kaiutin-mikkiväli. Viiveen tarkoitus on kumota suoraan kuuluvaa ääntä. No tämä ei riitä digitaalisessa siirrossa koska viive on puhelinkojeiden välillä iso.

SIP puhelin optimoi äänentason aina digitaalisen siirtotien maksimiin, analogisessa joutuu jättämään runsaasti tilaa ettei säröydy. Asterisk toimii puhtaasti digitaalitilassa ja vain välittää pakatun äänen datan joten Asteriskissa asiaa ei voi korjata. SIP puhelimet taasen hoitaa mikin vahvistuksen automaattisesti ja tähänkään ei voi vaikuttaa. Joten jäljelle jää Lantiq ATA rajapinta. Tältäosin gaini on tosiaan ikuinen kompromissi ja se on ok. Mutta onneksi Lantiq sisältää kaiunpoistolle parametrit. Pienellä kokeilulla kun lisää lanticq.conf:iin rivin:
; Line echo cancller valid types:
;
; off LEC and echo suppressor turned off.
; nlec LEC using fixed window; no echo suppressor.
; wlec LEC using fixed and moving window; no echo suppressor.
; nees LEC using fixed window and echo suppressor.
; nfees LEC using fixed and moving window and echo suppressor.
; es Echo suppressor
;
echocancel = nees
niin kaiku saadaan kuriin isommilla äänenpaineilla. Näin analog to SIP puhelutkin toimii asiallisesti. Konffitiedostosta löytyy myös gain säätö ja RX/TX sellainen keskiverto toimiva on -8db. Tätä joutuu tuunaamaan puhelinmallikohtaisesti jos haluaa äänenpaineet täysin tasapainoon.
 

Statistiikka

Viestiketjuista
258 409
Viestejä
4 490 244
Jäsenet
74 155
Uusin jäsen
Multitronic

Hinta.fi

Back
Ylös Bottom