Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.76 KB | None | 0 0
  1. $ cat /etc/asterisk/extensions.conf
  2.  
  3. [macro-main];
  4. exten => s,1,Dial(${ARG1},${ARG5},${ARG4}Fg)
  5. exten => s,n,NoOp(DIALSTATUS: ${DIALSTATUS})
  6. exten => s,n,Goto(s-${DIALSTATUS},1)
  7.  
  8. ;exten => s-ANSWER
  9. ;exten => s-CANCEL
  10. ;exten => s-CHANUNAVAIL
  11. ;exten => s-CONGESTION
  12. ;exten => s-DONTCALL
  13. ;exten => s-TORTURE
  14. ;exten => s-INVALIDARGS
  15. exten => s-BUSY,1,Goto(busy,1)
  16. exten => s-NOANSWER,1,Goto(noanswer,1)
  17. exten => _s-.,1,Goto(noanswer,1)
  18.  
  19. ; busy
  20. exten => busy,1,GotoIf($["${HASVOICEMAIL}" != ""]?vm-busy,1)
  21. exten => busy,n,Set(MISSEDCAUSE=busy)
  22. exten => busy,n,GosubIf($["${SENDNOTIFICATIONS}" != ""]?mailnotification,1)
  23. exten => busy,n,Busy(10)
  24. exten => vm-busy,1,Wait(1)
  25. exten => vm-busy,n,Set(MISSEDCAUSE=busy)
  26. exten => vm-busy,n,GosubIf($["${SENDNOTIFICATIONS}" != ""]?mailnotification,1)
  27. exten => vm-busy,n,ExecIf($["${NOVOICEMAILWHENBUSY}" != ""]?Busy(10))
  28. exten => vm-busy,n,VoiceMail(${ARG2},b,${ARG3})
  29. exten => vm-busy,n,Playback(vm-goodbye)
  30. exten => vm-busy,n,GotoIf($["${VMSTATUS}" = "SUCCESS"]?vm-message-exit,1:vm-nomessage-noexit,1)
  31.  
  32. ; no answer
  33. exten => noanswer,1,GotoIf($["${HASVOICEMAIL}" != ""]?vm-noanswer,1)
  34. exten => noanswer,n,Set(MISSEDCAUSE=no-answer)
  35. exten => noanswer,n,GosubIf($["${SENDNOTIFICATIONS}" != ""]?mailnotification,1)
  36. exten => noanswer,n,Hangup()
  37. exten => vm-noanswer,1,Wait(1)
  38. exten => vm-noanswer,n,Set(MISSEDCAUSE=no-answer)
  39. exten => vm-noanswer,n,VoiceMail(${ARG2},u,${ARG3})
  40. exten => vm-noanswer,n,Playback(vm-goodbye)
  41. exten => vm-noanswer,n,GotoIf($["${VMSTATUS}" = "SUCCESS"]?vm-message-exit,1:vm-nomessage-noexit,1)
  42.  
  43. ; voicemail exit
  44. exten => vm-message-exit,1,Set(MISSEDCAUSE=didntmiss)
  45. exten => vm-message-exit,n,Hangup()
  46. exten => vm-nomessage-exit,1,GosubIf($["${SENDNOTIFICATIONS}" != ""]?mailnotification,1)
  47. exten => vm-nomessage-exit,n,Hangup()
  48.  
  49. ; hangup
  50. exten => h,1,NoOp(Entering the h hangup extension)
  51. exten => h,n,GotoIf($["${HASVOICEMAIL}" != ""]?vm-h,1)
  52. exten => h,n,Hangup()
  53. exten => vm-h,1,ExecIf($["${DIALSTATUS}" = "ANSWER"]?Hangup())
  54. exten => vm-h,n,ExecIf($["${MISSEDCAUSE}" = ""]?Set(MISSEDCAUSE=hungup))
  55. exten => vm-h,n,GosubIf($[("${SENDNOTIFICATIONS}" != "") & ("${MISSEDCAUSE}" != "didntmiss")]?mailnotification,1)
  56. exten => vm-h,n,Hangup()
  57.  
  58. ; mail missed call notification
  59. exten => mailnotification,1,Set(TMPMAILFILE=/var/asterisk/spool/tmp/email-${MD5(${UNIQUEID})})
  60. exten => mailnotification,n,System(touch ${TMPMAILFILE})
  61. exten => mailnotification,n,System(echo "date: `date`" > ${TMPMAILFILE})
  62. exten => mailnotification,n,System(echo "to: ${SENDNOTIFICATIONS}" >> ${TMPMAILFILE})
  63. exten => mailnotification,n,System(echo "subject: Missed Call (${MISSEDCAUSE})" >> ${TMPMAILFILE})
  64. exten => mailnotification,n,System(echo "from: AskoziaPBX Notifications <askozia-vm@itison-ikt.de>" >> ${TMPMAILFILE})
  65. exten => mailnotification,n,System(echo >> ${TMPMAILFILE})
  66. exten => mailnotification,n,System(echo "${STRFTIME(${EPOCH},,%Y-%m-%d - %H:%M)} from ${CALLERID(all)}" >> ${TMPMAILFILE})
  67. exten => mailnotification,n,System(/usr/bin/msmtp -C /etc/msmtp.conf -t < ${TMPMAILFILE})
  68. exten => mailnotification,n,System(rm ${TMPMAILFILE})
  69. exten => mailnotification,n,Return()
  70.  
  71. ;i - Invalid
  72. ;s - Start
  73. ;h - Hangup
  74. ;t - Timeout
  75. ;T - AbsoluteTimeout
  76. ;a - Asterisk extension
  77. ;o - Operator
  78.  
  79. ; Read IP
  80. [APPLICATION-MAPPING-933337097386d45555d920]
  81. exten => _[0-9a-zA-Z*#]!,1,Answer()
  82. exten => _[0-9a-zA-Z*#]!,2,Set(CHANNEL(language)=en-us)
  83. exten => _[0-9a-zA-Z*#]!,3,Set(IPOUTPUT=${SHELL(/etc/scripts/parseip.sh)})
  84. exten => _[0-9a-zA-Z*#]!,4,NoOp(IPOUTPUT: ${IPOUTPUT})
  85. exten => _[0-9a-zA-Z*#]!,5,Playback(beep)
  86. exten => _[0-9a-zA-Z*#]!,n,SayDigits(${CUT(IPOUTPUT,\.,1)})
  87. exten => _[0-9a-zA-Z*#]!,n,Playback(silence/1)
  88. exten => _[0-9a-zA-Z*#]!,n,SayDigits(${CUT(IPOUTPUT,\.,2)})
  89. exten => _[0-9a-zA-Z*#]!,n,Playback(silence/1)
  90. exten => _[0-9a-zA-Z*#]!,n,SayDigits(${CUT(IPOUTPUT,\.,3)})
  91. exten => _[0-9a-zA-Z*#]!,n,Playback(silence/1)
  92. exten => _[0-9a-zA-Z*#]!,n,SayDigits(${CUT(IPOUTPUT,\.,4)})
  93. exten => _[0-9a-zA-Z*#]!,n,Playback(silence/1)
  94. exten => _[0-9a-zA-Z*#]!,n,Playback(silence/1)
  95. exten => _[0-9a-zA-Z*#]!,n,Goto(5)
  96. exten => s,1,Answer()
  97. exten => s,2,Set(CHANNEL(language)=en-us)
  98. exten => s,3,Set(IPOUTPUT=${SHELL(/etc/scripts/parseip.sh)})
  99. exten => s,4,NoOp(IPOUTPUT: ${IPOUTPUT})
  100. exten => s,5,Playback(beep)
  101. exten => s,n,SayDigits(${CUT(IPOUTPUT,\.,1)})
  102. exten => s,n,Playback(silence/1)
  103. exten => s,n,SayDigits(${CUT(IPOUTPUT,\.,2)})
  104. exten => s,n,Playback(silence/1)
  105. exten => s,n,SayDigits(${CUT(IPOUTPUT,\.,3)})
  106. exten => s,n,Playback(silence/1)
  107. exten => s,n,SayDigits(${CUT(IPOUTPUT,\.,4)})
  108. exten => s,n,Playback(silence/1)
  109. exten => s,n,Playback(silence/1)
  110. exten => s,n,Goto(5)
  111.  
  112. ; Echo
  113. [APPLICATION-MAPPING-83606076846f835d8828a4]
  114. exten => _[0-9a-zA-Z*#]!,1,Answer()
  115. exten => _[0-9a-zA-Z*#]!,2,Echo()
  116. exten => _[0-9a-zA-Z*#]!,3,Hangup()
  117. exten => s,1,Answer()
  118. exten => s,2,Echo()
  119. exten => s,3,Hangup()
  120.  
  121. ; WakeMe
  122. [APPLICATION-MAPPING-202074715246f8385a7a820]
  123. exten => _[0-9a-zA-Z*#]!,1,Answer()
  124. exten => _[0-9a-zA-Z*#]!,2,Set(CHANNEL(language)=en-us)
  125. exten => _[0-9a-zA-Z*#]!,3,WakeMe()
  126. exten => _[0-9a-zA-Z*#]!,4,Hangup()
  127. exten => s,1,Answer()
  128. exten => s,2,Set(CHANNEL(language)=en-us)
  129. exten => s,3,WakeMe()
  130. exten => s,4,Hangup()
  131.  
  132. ; Milliwatt
  133. [APPLICATION-MAPPING-48856682646f8381701993]
  134. exten => _[0-9a-zA-Z*#]!,1,Answer()
  135. exten => _[0-9a-zA-Z*#]!,2,Milliwatt()
  136. exten => _[0-9a-zA-Z*#]!,3,Hangup()
  137. exten => s,1,Answer()
  138. exten => s,2,Milliwatt()
  139. exten => s,3,Hangup()
  140.  
  141.  
  142.  
  143. [public-direct-dial]
  144.  
  145. [internal]
  146. ; internal phone : Default Extension - <102>
  147. exten => 102,1,NoOp(internal calling internal phone: Default Extension - <102>)
  148. exten => 102,n,Set(SENDNOTIFICATIONS="michael@askozia.com")
  149. exten => 102,n,Set(NOVOICEMAILWHENBUSY="yes")
  150. exten => 102,n,Macro(main,SIP/102,102,102,tTo,)
  151. ; internal phone : Default Extension - <101>
  152. exten => 101,1,NoOp(internal calling internal phone: Default Extension - <101>)
  153. exten => 101,n,Set(NOVOICEMAILWHENBUSY="yes")
  154. exten => 101,n,Macro(main,SIP/101,101,101,tTo,)
  155. ; application : Read IP
  156. exten => 000047,1,NoOp(internal calling application: Read IP)
  157. exten => 000047,n,Dial(Local/${EXTEN}@APPLICATION-MAPPING-933337097386d45555d920/n)
  158. ; application : Echo
  159. exten => 00003246,1,NoOp(internal calling application: Echo)
  160. exten => 00003246,n,Dial(Local/${EXTEN}@APPLICATION-MAPPING-83606076846f835d8828a4/n)
  161. ; application : WakeMe
  162. exten => 00009253,1,NoOp(internal calling application: WakeMe)
  163. exten => 00009253,n,Dial(Local/${EXTEN}@APPLICATION-MAPPING-202074715246f8385a7a820/n)
  164. ; application : Milliwatt
  165. exten => 000064554,1,NoOp(internal calling application: Milliwatt)
  166. exten => 000064554,n,Dial(Local/${EXTEN}@APPLICATION-MAPPING-48856682646f8381701993/n)
  167. ; conference room : Default Conference - <2663>
  168. exten => 2663,1,NoOp(internal calling conference: Default Conference - <2663>)
  169. exten => 2663,n,Answer()
  170. exten => 2663,n,MeetMe(2663,M)
  171. exten => 2663,n,Hangup()
  172. ; parking lot
  173. include => parkedcalls
  174. exten => 701,1,ParkedCall(701)
  175. exten => 701,hint,park:701@parkedcalls
  176. exten => 702,1,ParkedCall(702)
  177. exten => 702,hint,park:702@parkedcalls
  178. exten => 703,1,ParkedCall(703)
  179. exten => 703,hint,park:703@parkedcalls
  180. exten => 704,1,ParkedCall(704)
  181. exten => 704,hint,park:704@parkedcalls
  182. exten => 705,1,ParkedCall(705)
  183. exten => 705,hint,park:705@parkedcalls
  184. exten => 706,1,ParkedCall(706)
  185. exten => 706,hint,park:706@parkedcalls
  186. exten => 707,1,ParkedCall(707)
  187. exten => 707,hint,park:707@parkedcalls
  188. exten => 708,1,ParkedCall(708)
  189. exten => 708,hint,park:708@parkedcalls
  190. exten => 709,1,ParkedCall(709)
  191. exten => 709,hint,park:709@parkedcalls
  192. exten => 710,1,ParkedCall(710)
  193. exten => 710,hint,park:710@parkedcalls
  194. exten => 711,1,ParkedCall(711)
  195. exten => 711,hint,park:711@parkedcalls
  196. exten => 712,1,ParkedCall(712)
  197. exten => 712,hint,park:712@parkedcalls
  198. exten => 713,1,ParkedCall(713)
  199. exten => 713,hint,park:713@parkedcalls
  200. exten => 714,1,ParkedCall(714)
  201. exten => 714,hint,park:714@parkedcalls
  202. exten => 715,1,ParkedCall(715)
  203. exten => 715,hint,park:715@parkedcalls
  204. exten => 716,1,ParkedCall(716)
  205. exten => 716,hint,park:716@parkedcalls
  206. exten => 717,1,ParkedCall(717)
  207. exten => 717,hint,park:717@parkedcalls
  208. exten => 718,1,ParkedCall(718)
  209. exten => 718,hint,park:718@parkedcalls
  210. exten => 719,1,ParkedCall(719)
  211. exten => 719,hint,park:719@parkedcalls
  212. exten => 720,1,ParkedCall(720)
  213. exten => 720,hint,park:720@parkedcalls
  214. ; sip device hints
  215. exten => 101,hint,SIP/101
  216. exten => 102,hint,SIP/102
  217.  
  218.  
  219. ; Default Extension - <102>
  220. [SIP-PHONE-17386693824ce3d03744466]
  221. include => internal
  222. include => outgoing-uri
  223.  
  224. ; Default Extension - <101>
  225. [SIP-PHONE-5971090374ce3d007c6bf5]
  226. include => internal
  227. include => outgoing-uri
  228.  
  229. [outgoing-uri]
  230. exten => _[0-9a-zA-Z*#].,1,NoOp(Direct dialing via SIP uri : ${EXTEN}@${SIPDOMAIN})
  231. exten => _[0-9a-zA-Z*#].,n,Dial(SIP/${EXTEN}@${SIPDOMAIN},,To)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement