घर के लिए तारांकन चिह्न

Asterisk क्या है और घर पर इसकी आवश्यकता क्यों है



तारांकन चिह्न एक खुला आभासी PBX (टेलीफोन स्विच) है। आप Asterisk के बारे में Asterisk IP-PBX ब्लॉग पर अधिक पढ़ सकते हैं। यह सब इस तथ्य के साथ शुरू हुआ कि मुझे मध्ययुगीन वार्ताओं के लिए एक स्थानीय टेलीफोन कंपनी से एक बड़ा बिल प्राप्त हुआ। कम भुगतान करने के दो विकल्प थे: या तो आईपी-टेलीफोनी कार्ड खरीदें और अपने होम फोन से एक कार्ड पर कॉल करें, या एक पीसी से एसआईपी प्रदाताओं के माध्यम से कॉल करें। पहला विकल्प यह असुविधाजनक है कि आपको वांछित आईपी टेलीफोनी प्रदाता के कार्ड खोजने और खरीदने की आवश्यकता है, और दूसरा क्योंकि यह कंप्यूटर से जुड़ा हुआ है। समाधान तब आया जब मुझे एस्टरिस्क के बारे में पता चला। इसे शहर की टेलीफोन लाइन और एसआईपी प्रदाता और होम लैंडलाइन टेलीफोन दोनों से जोड़ा जा सकता है। घर पर, मेरे पास पहले से ही एक सर्वर था जिस पर सब कुछ स्थापित किया जा सकता था।

स्थापना और सेटअप



तो, पहली चीज जिसे आपको एस्टरिस्क स्थापित करने की आवश्यकता है। डेबियन में यह अत्यंत सरलता से किया जाता है। आपको बस तारांकन पैकेज स्थापित करने की आवश्यकता है। मैं निचोड़ से संस्करण 1.6 स्थापित करने की सलाह देता हूं (फिलहाल परीक्षण, बाद में यह डेबियन वितरण का संस्करण 6.0 होगा), क्योंकि इसके लिए addon chan_mobile है, लेकिन बाद में उस पर और अधिक।

एसआईपी कनेक्शन और डायलपैन स्थापित करने के बारे में कई रूसी-भाषा के लेख हैं, इसलिए मैं वहां नहीं रुकता।

दूसरे, आपको एस्टेरिस्क को लैंडलाइन और होम टेलीफोन से कनेक्ट करना होगा। इसके लिए, डिगियम विशेष पीसीआई और पीसीआई-ई कार्ड का उत्पादन करता है। वे काफी महंगे हैं, लेकिन ईबे पर आप चीनी कंपनी ओपनवॉक्स द्वारा जारी किए गए अपने समकक्ष पा सकते हैं, जो बहुत सस्ते हैं। मैंने एक OpenVox A400E दोहरे पोर्ट PCI-e कार्ड को एक FXO पोर्ट और एक FXS पोर्ट के साथ खरीदा है।

अगला, कटरा की स्थापना:
chan_dahdi.conf:
[trunkgroups]

[channels]
switchtype=national
usecallerid=yes
hidecallerid=no
callwaiting=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
echocancel=yes
busydetect=yes
;callprogress=yes
adsi=yes

;cidsignalling=bell
;cidstart=ring

callerid=asreceived

immediate=yes

context=phones
signalling=fxo_ks
faxdetect=both
channel => 1

context=incoming-city
signalling=fxs_ks
faxdetect=both
channel => 2


SIP सेटअप:
sip.conf:
[general]

register => login:password@provider
[authentication]
[user_login]
type=friend
context=phones
host=dynamic
secret=user_password
callerid="User" <1001>

[sip]
type=friend
username=sip_login
secret=sip_password
callerid=SIP
host=provider
nat=no
fromuser=
fromdomain=provider
dtmfmode=rfc2833
insecure=very
context=incoming-sip
disallow=all
allow=alaw

sip_login, sip_password, प्रदाता - यह क्रमशः आपका लॉगिन पासवर्ड और प्रदाता है।
user_login, user_password - Asterisk में SIP फ़ोन कनेक्ट करने के लिए लॉगिन और पासवर्ड।

सरल एक्सटेंशन .conf:
[globals]

[general]

[default]
exten => s,n,Answer()
exten => s,n,Playback(tt-weasels)
exten => s,n,Hangup()

[phones]
exten => s,n,Answer()
exten => s,n,WaitExten(30)
exten => _0.,1,NoOp()
exten => _0.,n,Goto(outbound-city,${EXTEN},1)
exten => _NXXXXXX,1,NoOp()
exten => _NXXXXXX,n,Goto(outbound-city,${EXTEN},1)
exten => _NXXNXXXXXX,1,NoOp()
exten => _NXXNXXXXXX,n,Goto(outbound-sip,${EXTEN},1)

exten => t,1,Playback(vm-goodbye)
exten => t,n,Hangup()
exten => i,1,Playback(invalid)
exten => i,n,Hangup()

[incoming-sip]
exten => s,n,Answer()
exten => s,n,Dial(SIP/user_login)
exten => s,n,Hangup()

[incoming-city]
exten => s,n,Answer()
exten => s,n,Dial(DAHDI/1)
exten => s,n,Hangup()

[outbound-sip]
exten => _XXXXXXXXXX,1,Dial(SIP/$[7${EXTEN}]@provider)
exten => _XXXXXXXXXX,n,Hangup()

[outbound-city]
exten => _0.,1,Dial(DAHDI/2/${EXTEN})
exten => _0.,n,Hangup()
exten => _NXXXXXX,1,Dial(DAHDI/2/${EXTEN})
exten => _NXXXXXX,n,Hangup()


इस तरह की extension.conf आपको स्थानीय टेलीफोन नेटवर्क के माध्यम से अपने घर के फोन से सात-अंकीय संख्याओं और नंबरों पर कॉल करने की अनुमति देता है, और SIP प्रदाता के माध्यम से लंबी दूरी की संख्याओं के लिए।

अतिरिक्त विशेषताएं



1. सभी टेलीफोन वार्तालापों को रिकॉर्ड करें

ऐसा करने के लिए, डायलपैन (Extension.conf) में मिक्समॉनिटर एप्लिकेशन पर कॉल डालें।
[phones]
exten => s,n,Answer()
exten => s,n,MixMonitor(phone-${UNIQUEID}.wav)
exten => s,n,WaitExten(30)

वार्तालाप के रिकॉर्ड फ़ोल्डर / var / स्पूल / तारांकन / मॉनिटर में जोड़े जाएंगे

2. फैक्स का रिसेप्शन और ट्रांसमिशन

फैक्स भेजने के लिए, आपको SendFax एप्लिकेशन को कॉल करना होगा और TIFF फ़ाइल का नाम एक तर्क के रूप में पास करना होगा। कमांड का उपयोग करके TIFF को PDF से प्राप्त किया जा सकता है
$ /usr/bin/gs -q -sDEVICE=tiffg3 -sPAPERSIZE=a4 -r204x196 -dNOPAUSE -sOutputFile=/var/spool/asterisk/outgoing/mydocument.tif -- /var/spool/asterisk/outgoing/mydocument.pdf
कृपया ध्यान दें कि प्रत्येक TIFF फ़ाइल को फ़ैक्स के रूप में नहीं भेजा जा सकता है, लेकिन केवल TIFF / F प्रारूप (tiffg3) में।
फ़ैक्स को मैन्युअल रूप से भेजने के लिए, तारांकन कंसोल चलाएँ और कमांड चलाएँ:
# asterisk -r
server*CLI> originate originate DAHDI/1 application SendFax /tmp/test.tif

फैक्स रिसेप्शन को कॉन्फ़िगर करने के लिए, निम्नलिखित को डायलपैन में जोड़ें:
extensions.conf:
[incoming-city]
exten => s,n,Answer()
exten => s,n,Wait(5)
exten => s,n,Dial(DAHDI/1)
exten => s,n,Hangup()

exten => fax,1,ReceiveFax(/var/spool/asterisk/fax/${CALLERID(num)}-${UNIQUEID}.tif)
exten => fax,n,Hangup()

आने वाले फैक्स सिग्नल को पहचानने और विस्तार फैक्स पर स्विच करने के लिए तारांकन के लिए उत्तर () के बाद 5 सेकंड की देरी आवश्यक है।
फ़ैक्सडेट निर्दिष्ट करने के लिए याद रखें = दोनों chan_dahdi.conf में।

आने वाले फ़ैक्स को TIFF प्रारूप में / var / spool / asterisk / फ़ैक्स फ़ोल्डर में जोड़ा जाएगा
ऐसी स्क्रिप्ट हैं जो आपको पीडीएफ और इसके विपरीत रूपांतरण के साथ फैक्स प्राप्त करने / प्रेषित करने की प्रक्रिया को स्वचालित करने की अनुमति देती हैं, साथ ही प्राप्त फैक्स को ई-मेल पर भेजती हैं।

3. कॉल फ़िल्टर द्वारा कॉल


CALLERID को काम करने के लिए, मुझे टेलीफोन ऑपरेटर से संबंधित सेवा को अलग से ऑर्डर करना पड़ा। सौभाग्य से, यह मुफ़्त है, लेकिन उन्होंने इसे मुझे कुछ दिनों के लिए जोड़ा। यदि CALLERID काम करता है, तो आप उस नंबर के आधार पर डायलप्लान के निष्पादन को नियंत्रित कर सकते हैं जहां से कॉल आती है।
[incoming-city]
exten => s,1,Wait(2)
exten => s,n,GotoIf($["${CALLERID(num):-10}" = "5555555555"]?1000)
exten => s,n,Dial(DAHDI/1)
exten => s,n,Hangup()

exten => s,1000,Wait(600)
exten => s,n,Answer()
exten => s,n,Congestion()
exten => s,n,Hangup()


इस उदाहरण में, 5555555555 से कॉल की अनदेखी की जाती है।
महत्वपूर्ण नोट: हैंडसेट को उठाए जाने से पहले कॉलरीड को प्रेषित किया जाता है, और हैंडसेट को उठाया जाने के बाद फैक्स सिग्नल प्रसारित होते हैं। इसलिए, फैक्स सिग्नल के स्थिर स्वागत के लिए, आपको उत्तर के बाद देरी करने की आवश्यकता है, CALLERID के स्थिर स्वागत के लिए कभी-कभी मुझे उत्तर से पहले विलंब जोड़ना होगा।

4. जीएसएम नेटवर्क से कनेक्शन


जीएसएम नेटवर्क के माध्यम से कॉल करने के लिए $ 1000 से अधिक के विशेष पीसीआई-ई कार्ड हैं, जो घर पर स्वीकार्य नहीं है। लेकिन, सौभाग्य से, एस्टरिस्क के लिए एक ऐडऑन है, जो आपको जीएसएम नेटवर्क के प्रवेश द्वार के रूप में एक नियमित सेल फोन का उपयोग करने की अनुमति देता है। ऐसा करने के लिए, तारांकन-मोबाइल पैकेज स्थापित करें। वह हाल ही में डेबियन वितरण पर दिखाई दिया। इसके अलावा, आपको USB ब्लूटूथ एडाप्टर की आवश्यकता होगी। लिनक्स के तहत काम करने वाला कोई भी व्यक्ति (एस्टरिस्क ब्लूज़ के माध्यम से काम कर सकता है) उपयुक्त है, ठीक है, वास्तव में एक फोन जो ब्लूटूथ का समर्थन करता है।
स्थापना:
मोबाइल में। हम लिखते हैं:
[general]

[adapter]
id=blue
address=00:11:22:33:44:55

जहां 00: 11: 22: 33: 44: 55 के बजाय आपके ब्लूटूथ एडाप्टर का पता है।
Asterisk कंसोल लॉन्च करें और फ़ोन देखें:
server*CLI> mobile search
Address Name Usable Type Port
66:77:88:99:AA:BB Nokia Yes Phone 13


मोबाइल के लिए अनुभाग जोड़ें mobile.conf:
[GSM]
address=66:77:88:99:AA:BB
port=13
type=phone
adapter=blue
context=incoming-gsm

जहां 66: 77: 88: 99: AA: BB के बजाय आपके फोन का पता है, और पोर्ट = 13 के बजाय आपको उस पोर्ट में प्रवेश करना होगा जिस पर आपका फोन काम करता है। उसके बाद, आप chan_mobile मॉड्यूल को फिर से लोड कर सकते हैं और सत्यापित कर सकते हैं कि सब कुछ काम करता है।
server*CLI> module unload chan_mobile
server*CLI> module load chan_mobile
server*CLI> mobile show devices
ID Address Group Adapter Connected State SMS
GSM 66:77:88:99:AA:BB 0 blue Yes Free Yes


डायलप्लान में, आपको इनबाउंड और आउटबाउंड संदर्भों को जोड़ना होगा:
[phones]
exten => _913NXXXXXX,1,NoOp()
exten => _913NXXXXXX,n,Goto(outbound-gsm,${EXTEN},1)

[incoming-gsm]
exten => s,n,Answer()
exten => s,n,Dial(DAHDI/1)
exten => s,n,Hangup()

[outbound-gsm]
exten => _NXXNXXXXXX,1,Dial(Mobile/GSM/${EXTEN})
exten => _NXXNXXXXXX,n,Hangup()


साइबेरियन क्षेत्र में मोबाइल नंबरों पर कॉल जीएसएम के माध्यम से कराई जाएगी।

महत्वपूर्ण नोट: सर्वर को अपने फोन के साथ पेयर करना न भूलें। यह कमांड / usr / बिन / ब्लूटूथ-एजेंट का उपयोग करके किया जाता है

यदि आपका फोन एसएमएस भेजने का समर्थन करता है, तो आप डायलपैन से एसएमएस भेजने को कॉन्फ़िगर कर सकते हैं। उदाहरण के लिए, फैक्स प्राप्त करते समय:
[incoming-city]
exten => fax,1,ReceiveFax(/var/spool/asterisk/fax/${CALLERID(num)}-${UNIQUEID}.tif)
exten => fax,n,MobileSendSMS(GSM,+75555555555,incoming fax #${UNIQUEID} from ${CALLERID(num)})
exten => fax,n,Hangup()


निष्कर्ष



तारांकन में कई अतिरिक्त विशेषताएं हैं जिनका इस विषय में उल्लेख नहीं किया गया है। उदाहरण के लिए, आप उद्धृत कर सकते हैं: फेस्टिवल वॉयस सिंथेसिस सिस्टम, वॉयस मेलबॉक्स, कतारबद्ध कॉल आदि के साथ वॉयस मेन्यू और इंटीग्रेशन। लेकिन इन सुविधाओं को रोजमर्रा के उपयोग के लिए आना मुश्किल है, इसलिए हम उन्हें छोड़ देते हैं। शायद पाठकों को यह पता चलेगा कि घर Asterisk PBX का उपयोग कैसे करें।

Source: https://habr.com/ru/post/In103218/


All Articles