Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
voip:c7:asterisk14:start [18.01.2017 14:23. ] – [ast.tucny.com] django | voip:c7:asterisk14:start [18.11.2024 06:56. ] (aktuell) – Externe Bearbeitung 127.0.0.1 |
---|
{{voip:asterisk.gif|Asterisk Logo}} | {{voip:asterisk.gif|Asterisk Logo}} |
Asterisk ist eine OpenSource Telekommunkationssystem, entwickelt von Marc Spencer / Digium für Linux Systeme. | Asterisk ist eine OpenSource Telekommunkationssystem, entwickelt von Marc Spencer / Digium für Linux Systeme. |
| |
| ===== Dokumentation ===== |
| Hinweise zum Release **14** finden sich auf der **[[https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+Documentation|Dokumentationsseite]]** von Asterisk. Alle Neuerungen des aktuellen Release finden sich auf der Seite **[[https://wiki.asterisk.org/wiki/display/AST/New+in+14| New in 14]]**. Die Seite **[[https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+Command+Reference|Asterisk 14 Command Reference]]** beinhaltet weitere Unterseiten zu den Kommandos und APIs. |
| |
===== Installation ===== | ===== Installation ===== |
Die Installation von Asterisk unetr CentOS 7 könnte man an Hand der **[[http://downloads.asterisk.org/pub/telephony/asterisk/|Programm-Sourcen]]** vornehmen. Dazu müsste auf dem VoIP-Server aber unter anderem Entwicklungstools wie "//**gcc & Co**//" installiert werden; was natürlich auf einem Produktivsystem mehr als zweifelhaft ist und aus Sicherheitsüberlegungen heraus tunlichst vermieden werden sollte. | Die Installation von Asterisk unetr CentOS 7 könnte man an Hand der **[[https://downloads.asterisk.org/pub/telephony/asterisk/|Programm-Sourcen]]** vornehmen. Dazu müsste auf dem VoIP-Server aber unter anderem Entwicklungstools wie "//**gcc & Co**//" installiert werden; was natürlich auf einem Produktivsystem mehr als zweifelhaft ist und aus Sicherheitsüberlegungen heraus tunlichst vermieden werden sollte. |
| |
==== Repository ast.tucny.com ==== | ==== Repository ast.tucny.com ==== |
**[centosplus]**, **[contrib]** erhält die **priority=2**. | **[centosplus]**, **[contrib]** erhält die **priority=2**. |
| |
Den 3rd party repositories, wie z.B. //**[[https://fedoraproject.org/wiki/EPEL|epel]]**// oder //**[[centos:mailserver.guru#priorities_installieren|mailserver.guru]]**// geben wir nun eine Priorität größer-gleich "10", also z.B. **priority=10**. | Den 3rd party repositories, wie z.B. //**[[https://fedoraproject.org/wiki/EPEL|epel]]**// geben wir nun eine Priorität größer-gleich "10", also z.B. **priority=10**. |
| |
=== ast.tucny.com === | === ast.tucny.com === |
Repo : asterisk-14/7/x86_64 | Repo : asterisk-14/7/x86_64 |
Summary : The Open Source PBX | Summary : The Open Source PBX |
URL : http://www.asterisk.org/ | URL : https://www.asterisk.org/ |
License : GPLv2 | License : GPLv2 |
Description : Asterisk is a complete PBX in software. It runs on Linux and provides | Description : Asterisk is a complete PBX in software. It runs on Linux and provides |
| |
==== RPM-Grundinstallation ==== | ==== RPM-Grundinstallation ==== |
| === asterisk === |
Nachdem unsere Vorbereitungen erst einmal abgeschlossen sind, können wir uns nun daran machen, das Grundpaket **Asterisk** zu installieren. | Nachdem unsere Vorbereitungen erst einmal abgeschlossen sind, können wir uns nun daran machen, das Grundpaket **Asterisk** zu installieren. |
# yum install asterisk -y | # yum install asterisk -y |
| |
| Den recht umfangreichen Inhalt des RPM-Paketes können wir uns mit Hilfe des folgenden Aufrufs bei Interesse anzeigen lassen. |
| # rpm -qil asterisk |
| <code>Name : asterisk |
| Version : 14.2.1 |
| Release : 1.el7.centos |
| Architecture: x86_64 |
| Install Date: Wed 18 Jan 2017 03:08:52 PM CET |
| Group : Applications/Internet |
| Size : 14393335 |
| License : GPLv2 |
| Signature : RSA/SHA1, Thu 08 Dec 2016 11:58:05 PM CET, Key ID ccf40e16b9a46fa9 |
| Source RPM : asterisk-14.2.1-1.el7.centos.src.rpm |
| Build Date : Thu 08 Dec 2016 11:57:54 PM CET |
| Build Host : olive.ph.tucny.com |
| Relocations : (not relocatable) |
| URL : https://www.asterisk.org/ |
| Summary : The Open Source PBX |
| Description : |
| Asterisk is a complete PBX in software. It runs on Linux and provides |
| all of the features you would expect from a PBX and more. Asterisk |
| does voice over IP in three protocols, and can interoperate with |
| almost all standards-based telephony equipment using relatively |
| inexpensive hardware. |
| /etc/asterisk |
| /etc/asterisk/acl.conf |
| /etc/asterisk/adsi.conf |
| /etc/asterisk/agents.conf |
| /etc/asterisk/alarmreceiver.conf |
| /etc/asterisk/amd.conf |
| /etc/asterisk/ari.conf |
| /etc/asterisk/asterisk.adsi |
| /etc/asterisk/asterisk.conf |
| /etc/asterisk/ccss.conf |
| /etc/asterisk/cdr.conf |
| /etc/asterisk/cdr_custom.conf |
| /etc/asterisk/cdr_manager.conf |
| /etc/asterisk/cdr_syslog.conf |
| /etc/asterisk/cel.conf |
| /etc/asterisk/cel_custom.conf |
| /etc/asterisk/cli.conf |
| /etc/asterisk/cli_aliases.conf |
| /etc/asterisk/cli_permissions.conf |
| /etc/asterisk/codecs.conf |
| /etc/asterisk/confbridge.conf |
| /etc/asterisk/dnsmgr.conf |
| /etc/asterisk/dsp.conf |
| /etc/asterisk/dundi.conf |
| /etc/asterisk/enum.conf |
| /etc/asterisk/extconfig.conf |
| /etc/asterisk/extensions.conf |
| /etc/asterisk/features.conf |
| /etc/asterisk/followme.conf |
| /etc/asterisk/http.conf |
| /etc/asterisk/indications.conf |
| /etc/asterisk/logger.conf |
| /etc/asterisk/manager.conf |
| /etc/asterisk/modules.conf |
| /etc/asterisk/musiconhold.conf |
| /etc/asterisk/muted.conf |
| /etc/asterisk/osp.conf |
| /etc/asterisk/phoneprov.conf |
| /etc/asterisk/queuerules.conf |
| /etc/asterisk/queues.conf |
| /etc/asterisk/res_parking.conf |
| /etc/asterisk/res_stun_monitor.conf |
| /etc/asterisk/resolver_unbound.conf |
| /etc/asterisk/rtp.conf |
| /etc/asterisk/say.conf |
| /etc/asterisk/sla.conf |
| /etc/asterisk/smdi.conf |
| /etc/asterisk/sorcery.conf |
| /etc/asterisk/stasis.conf |
| /etc/asterisk/statsd.conf |
| /etc/asterisk/telcordia-1.adsi |
| /etc/asterisk/udptl.conf |
| /etc/asterisk/users.conf |
| /etc/asterisk/vpb.conf |
| /etc/logrotate.d/asterisk |
| /run/asterisk |
| /usr/lib/systemd/system/asterisk.service |
| /usr/lib/tmpfiles.d/asterisk.conf |
| /usr/lib64/asterisk |
| /usr/lib64/asterisk/modules |
| /usr/lib64/asterisk/modules/app_adsiprog.so |
| /usr/lib64/asterisk/modules/app_agent_pool.so |
| /usr/lib64/asterisk/modules/app_alarmreceiver.so |
| /usr/lib64/asterisk/modules/app_amd.so |
| /usr/lib64/asterisk/modules/app_authenticate.so |
| /usr/lib64/asterisk/modules/app_bridgeaddchan.so |
| /usr/lib64/asterisk/modules/app_bridgewait.so |
| /usr/lib64/asterisk/modules/app_cdr.so |
| /usr/lib64/asterisk/modules/app_celgenuserevent.so |
| /usr/lib64/asterisk/modules/app_chanisavail.so |
| /usr/lib64/asterisk/modules/app_channelredirect.so |
| /usr/lib64/asterisk/modules/app_chanspy.so |
| /usr/lib64/asterisk/modules/app_confbridge.so |
| /usr/lib64/asterisk/modules/app_controlplayback.so |
| /usr/lib64/asterisk/modules/app_db.so |
| /usr/lib64/asterisk/modules/app_dial.so |
| /usr/lib64/asterisk/modules/app_dictate.so |
| /usr/lib64/asterisk/modules/app_directed_pickup.so |
| /usr/lib64/asterisk/modules/app_disa.so |
| /usr/lib64/asterisk/modules/app_dumpchan.so |
| /usr/lib64/asterisk/modules/app_echo.so |
| /usr/lib64/asterisk/modules/app_exec.so |
| /usr/lib64/asterisk/modules/app_externalivr.so |
| /usr/lib64/asterisk/modules/app_followme.so |
| /usr/lib64/asterisk/modules/app_forkcdr.so |
| /usr/lib64/asterisk/modules/app_getcpeid.so |
| /usr/lib64/asterisk/modules/app_image.so |
| /usr/lib64/asterisk/modules/app_macro.so |
| /usr/lib64/asterisk/modules/app_milliwatt.so |
| /usr/lib64/asterisk/modules/app_mixmonitor.so |
| /usr/lib64/asterisk/modules/app_morsecode.so |
| /usr/lib64/asterisk/modules/app_nbscat.so |
| /usr/lib64/asterisk/modules/app_originate.so |
| /usr/lib64/asterisk/modules/app_playback.so |
| /usr/lib64/asterisk/modules/app_playtones.so |
| /usr/lib64/asterisk/modules/app_privacy.so |
| /usr/lib64/asterisk/modules/app_queue.so |
| /usr/lib64/asterisk/modules/app_read.so |
| /usr/lib64/asterisk/modules/app_readexten.so |
| /usr/lib64/asterisk/modules/app_record.so |
| /usr/lib64/asterisk/modules/app_saycounted.so |
| /usr/lib64/asterisk/modules/app_sayunixtime.so |
| /usr/lib64/asterisk/modules/app_senddtmf.so |
| /usr/lib64/asterisk/modules/app_sendtext.so |
| /usr/lib64/asterisk/modules/app_setcallerid.so |
| /usr/lib64/asterisk/modules/app_sms.so |
| /usr/lib64/asterisk/modules/app_softhangup.so |
| /usr/lib64/asterisk/modules/app_speech_utils.so |
| /usr/lib64/asterisk/modules/app_stack.so |
| /usr/lib64/asterisk/modules/app_stasis.so |
| /usr/lib64/asterisk/modules/app_statsd.so |
| /usr/lib64/asterisk/modules/app_system.so |
| /usr/lib64/asterisk/modules/app_talkdetect.so |
| /usr/lib64/asterisk/modules/app_test.so |
| /usr/lib64/asterisk/modules/app_transfer.so |
| /usr/lib64/asterisk/modules/app_url.so |
| /usr/lib64/asterisk/modules/app_userevent.so |
| /usr/lib64/asterisk/modules/app_verbose.so |
| /usr/lib64/asterisk/modules/app_waitforring.so |
| /usr/lib64/asterisk/modules/app_waitforsilence.so |
| /usr/lib64/asterisk/modules/app_waituntil.so |
| /usr/lib64/asterisk/modules/app_while.so |
| /usr/lib64/asterisk/modules/app_zapateller.so |
| /usr/lib64/asterisk/modules/bridge_builtin_features.so |
| /usr/lib64/asterisk/modules/bridge_builtin_interval_features.so |
| /usr/lib64/asterisk/modules/bridge_holding.so |
| /usr/lib64/asterisk/modules/bridge_native_rtp.so |
| /usr/lib64/asterisk/modules/bridge_simple.so |
| /usr/lib64/asterisk/modules/bridge_softmix.so |
| /usr/lib64/asterisk/modules/cdr_csv.so |
| /usr/lib64/asterisk/modules/cdr_custom.so |
| /usr/lib64/asterisk/modules/cdr_manager.so |
| /usr/lib64/asterisk/modules/cdr_syslog.so |
| /usr/lib64/asterisk/modules/cel_custom.so |
| /usr/lib64/asterisk/modules/cel_manager.so |
| /usr/lib64/asterisk/modules/chan_bridge_media.so |
| /usr/lib64/asterisk/modules/chan_rtp.so |
| /usr/lib64/asterisk/modules/codec_a_mu.so |
| /usr/lib64/asterisk/modules/codec_adpcm.so |
| /usr/lib64/asterisk/modules/codec_alaw.so |
| /usr/lib64/asterisk/modules/codec_g722.so |
| /usr/lib64/asterisk/modules/codec_g726.so |
| /usr/lib64/asterisk/modules/codec_gsm.so |
| /usr/lib64/asterisk/modules/codec_ilbc.so |
| /usr/lib64/asterisk/modules/codec_lpc10.so |
| /usr/lib64/asterisk/modules/codec_resample.so |
| /usr/lib64/asterisk/modules/codec_speex.so |
| /usr/lib64/asterisk/modules/codec_ulaw.so |
| /usr/lib64/asterisk/modules/format_g719.so |
| /usr/lib64/asterisk/modules/format_g723.so |
| /usr/lib64/asterisk/modules/format_g726.so |
| /usr/lib64/asterisk/modules/format_g729.so |
| /usr/lib64/asterisk/modules/format_gsm.so |
| /usr/lib64/asterisk/modules/format_h263.so |
| /usr/lib64/asterisk/modules/format_h264.so |
| /usr/lib64/asterisk/modules/format_ilbc.so |
| /usr/lib64/asterisk/modules/format_jpeg.so |
| /usr/lib64/asterisk/modules/format_ogg_speex.so |
| /usr/lib64/asterisk/modules/format_ogg_vorbis.so |
| /usr/lib64/asterisk/modules/format_pcm.so |
| /usr/lib64/asterisk/modules/format_siren14.so |
| /usr/lib64/asterisk/modules/format_siren7.so |
| /usr/lib64/asterisk/modules/format_sln.so |
| /usr/lib64/asterisk/modules/format_vox.so |
| /usr/lib64/asterisk/modules/format_wav.so |
| /usr/lib64/asterisk/modules/format_wav_gsm.so |
| /usr/lib64/asterisk/modules/func_aes.so |
| /usr/lib64/asterisk/modules/func_audiohookinherit.so |
| /usr/lib64/asterisk/modules/func_base64.so |
| /usr/lib64/asterisk/modules/func_blacklist.so |
| /usr/lib64/asterisk/modules/func_callcompletion.so |
| /usr/lib64/asterisk/modules/func_callerid.so |
| /usr/lib64/asterisk/modules/func_cdr.so |
| /usr/lib64/asterisk/modules/func_channel.so |
| /usr/lib64/asterisk/modules/func_config.so |
| /usr/lib64/asterisk/modules/func_cut.so |
| /usr/lib64/asterisk/modules/func_db.so |
| /usr/lib64/asterisk/modules/func_devstate.so |
| /usr/lib64/asterisk/modules/func_dialgroup.so |
| /usr/lib64/asterisk/modules/func_dialplan.so |
| /usr/lib64/asterisk/modules/func_enum.so |
| /usr/lib64/asterisk/modules/func_env.so |
| /usr/lib64/asterisk/modules/func_extstate.so |
| /usr/lib64/asterisk/modules/func_frame_trace.so |
| /usr/lib64/asterisk/modules/func_global.so |
| /usr/lib64/asterisk/modules/func_groupcount.so |
| /usr/lib64/asterisk/modules/func_hangupcause.so |
| /usr/lib64/asterisk/modules/func_holdintercept.so |
| /usr/lib64/asterisk/modules/func_iconv.so |
| /usr/lib64/asterisk/modules/func_jitterbuffer.so |
| /usr/lib64/asterisk/modules/func_lock.so |
| /usr/lib64/asterisk/modules/func_logic.so |
| /usr/lib64/asterisk/modules/func_math.so |
| /usr/lib64/asterisk/modules/func_md5.so |
| /usr/lib64/asterisk/modules/func_module.so |
| /usr/lib64/asterisk/modules/func_periodic_hook.so |
| /usr/lib64/asterisk/modules/func_pitchshift.so |
| /usr/lib64/asterisk/modules/func_presencestate.so |
| /usr/lib64/asterisk/modules/func_rand.so |
| /usr/lib64/asterisk/modules/func_realtime.so |
| /usr/lib64/asterisk/modules/func_sha1.so |
| /usr/lib64/asterisk/modules/func_shell.so |
| /usr/lib64/asterisk/modules/func_sorcery.so |
| /usr/lib64/asterisk/modules/func_speex.so |
| /usr/lib64/asterisk/modules/func_sprintf.so |
| /usr/lib64/asterisk/modules/func_srv.so |
| /usr/lib64/asterisk/modules/func_strings.so |
| /usr/lib64/asterisk/modules/func_sysinfo.so |
| /usr/lib64/asterisk/modules/func_talkdetect.so |
| /usr/lib64/asterisk/modules/func_timeout.so |
| /usr/lib64/asterisk/modules/func_uri.so |
| /usr/lib64/asterisk/modules/func_version.so |
| /usr/lib64/asterisk/modules/func_volume.so |
| /usr/lib64/asterisk/modules/pbx_config.so |
| /usr/lib64/asterisk/modules/pbx_dundi.so |
| /usr/lib64/asterisk/modules/pbx_loopback.so |
| /usr/lib64/asterisk/modules/pbx_realtime.so |
| /usr/lib64/asterisk/modules/pbx_spool.so |
| /usr/lib64/asterisk/modules/res_adsi.so |
| /usr/lib64/asterisk/modules/res_agi.so |
| /usr/lib64/asterisk/modules/res_ari.so |
| /usr/lib64/asterisk/modules/res_ari_applications.so |
| /usr/lib64/asterisk/modules/res_ari_asterisk.so |
| /usr/lib64/asterisk/modules/res_ari_bridges.so |
| /usr/lib64/asterisk/modules/res_ari_channels.so |
| /usr/lib64/asterisk/modules/res_ari_device_states.so |
| /usr/lib64/asterisk/modules/res_ari_endpoints.so |
| /usr/lib64/asterisk/modules/res_ari_events.so |
| /usr/lib64/asterisk/modules/res_ari_model.so |
| /usr/lib64/asterisk/modules/res_ari_playbacks.so |
| /usr/lib64/asterisk/modules/res_ari_recordings.so |
| /usr/lib64/asterisk/modules/res_ari_sounds.so |
| /usr/lib64/asterisk/modules/res_chan_stats.so |
| /usr/lib64/asterisk/modules/res_clialiases.so |
| /usr/lib64/asterisk/modules/res_clioriginate.so |
| /usr/lib64/asterisk/modules/res_convert.so |
| /usr/lib64/asterisk/modules/res_crypto.so |
| /usr/lib64/asterisk/modules/res_endpoint_stats.so |
| /usr/lib64/asterisk/modules/res_format_attr_celt.so |
| /usr/lib64/asterisk/modules/res_format_attr_g729.so |
| /usr/lib64/asterisk/modules/res_format_attr_h263.so |
| /usr/lib64/asterisk/modules/res_format_attr_h264.so |
| /usr/lib64/asterisk/modules/res_format_attr_ilbc.so |
| /usr/lib64/asterisk/modules/res_format_attr_opus.so |
| /usr/lib64/asterisk/modules/res_format_attr_silk.so |
| /usr/lib64/asterisk/modules/res_format_attr_siren14.so |
| /usr/lib64/asterisk/modules/res_format_attr_siren7.so |
| /usr/lib64/asterisk/modules/res_format_attr_vp8.so |
| /usr/lib64/asterisk/modules/res_http_media_cache.so |
| /usr/lib64/asterisk/modules/res_http_post.so |
| /usr/lib64/asterisk/modules/res_http_websocket.so |
| /usr/lib64/asterisk/modules/res_limit.so |
| /usr/lib64/asterisk/modules/res_manager_devicestate.so |
| /usr/lib64/asterisk/modules/res_manager_presencestate.so |
| /usr/lib64/asterisk/modules/res_monitor.so |
| /usr/lib64/asterisk/modules/res_musiconhold.so |
| /usr/lib64/asterisk/modules/res_mutestream.so |
| /usr/lib64/asterisk/modules/res_parking.so |
| /usr/lib64/asterisk/modules/res_phoneprov.so |
| /usr/lib64/asterisk/modules/res_realtime.so |
| /usr/lib64/asterisk/modules/res_rtp_asterisk.so |
| /usr/lib64/asterisk/modules/res_rtp_multicast.so |
| /usr/lib64/asterisk/modules/res_security_log.so |
| /usr/lib64/asterisk/modules/res_smdi.so |
| /usr/lib64/asterisk/modules/res_sorcery_astdb.so |
| /usr/lib64/asterisk/modules/res_sorcery_config.so |
| /usr/lib64/asterisk/modules/res_sorcery_memory.so |
| /usr/lib64/asterisk/modules/res_sorcery_memory_cache.so |
| /usr/lib64/asterisk/modules/res_sorcery_realtime.so |
| /usr/lib64/asterisk/modules/res_speech.so |
| /usr/lib64/asterisk/modules/res_srtp.so |
| /usr/lib64/asterisk/modules/res_stasis.so |
| /usr/lib64/asterisk/modules/res_stasis_answer.so |
| /usr/lib64/asterisk/modules/res_stasis_device_state.so |
| /usr/lib64/asterisk/modules/res_stasis_playback.so |
| /usr/lib64/asterisk/modules/res_stasis_recording.so |
| /usr/lib64/asterisk/modules/res_stasis_snoop.so |
| /usr/lib64/asterisk/modules/res_statsd.so |
| /usr/lib64/asterisk/modules/res_stun_monitor.so |
| /usr/lib64/asterisk/modules/res_timing_pthread.so |
| /usr/lib64/asterisk/modules/res_timing_timerfd.so |
| /usr/lib64/libasteriskssl.so |
| /usr/lib64/libasteriskssl.so.1 |
| /usr/sbin/astcanary |
| /usr/sbin/astdb2sqlite3 |
| /usr/sbin/asterisk |
| /usr/sbin/astgenkey |
| /usr/sbin/astman |
| /usr/sbin/astversion |
| /usr/sbin/autosupport |
| /usr/sbin/check_expr |
| /usr/sbin/check_expr2 |
| /usr/sbin/muted |
| /usr/sbin/rasterisk |
| /usr/sbin/smsq |
| /usr/sbin/stereorize |
| /usr/sbin/streamplayer |
| /usr/share/asterisk |
| /usr/share/asterisk/agi-bin |
| /usr/share/asterisk/documentation |
| /usr/share/asterisk/documentation/appdocsxml.dtd |
| /usr/share/asterisk/documentation/appdocsxml.xslt |
| /usr/share/asterisk/documentation/core-en_US.xml |
| /usr/share/asterisk/documentation/thirdparty |
| /usr/share/asterisk/images |
| /usr/share/asterisk/images/asterisk-intro.jpg |
| /usr/share/asterisk/images/kpad2.jpg |
| /usr/share/asterisk/keys |
| /usr/share/asterisk/moh |
| /usr/share/asterisk/phoneprov |
| /usr/share/asterisk/rest-api |
| /usr/share/asterisk/rest-api/applications.json |
| /usr/share/asterisk/rest-api/asterisk.json |
| /usr/share/asterisk/rest-api/bridges.json |
| /usr/share/asterisk/rest-api/channels.json |
| /usr/share/asterisk/rest-api/deviceStates.json |
| /usr/share/asterisk/rest-api/endpoints.json |
| /usr/share/asterisk/rest-api/events.json |
| /usr/share/asterisk/rest-api/mailboxes.json |
| /usr/share/asterisk/rest-api/playbacks.json |
| /usr/share/asterisk/rest-api/recordings.json |
| /usr/share/asterisk/rest-api/resources.json |
| /usr/share/asterisk/rest-api/sounds.json |
| /usr/share/asterisk/sounds |
| /usr/share/asterisk/static-http |
| /usr/share/asterisk/static-http/ajamdemo.html |
| /usr/share/asterisk/static-http/appdocsxml.xslt |
| /usr/share/asterisk/static-http/astman.css |
| /usr/share/asterisk/static-http/astman.js |
| /usr/share/asterisk/static-http/core-en_US.xml |
| /usr/share/asterisk/static-http/mantest.html |
| /usr/share/asterisk/static-http/prototype.js |
| /usr/share/doc/asterisk-14.2.1 |
| /usr/share/doc/asterisk-14.2.1/BUGS |
| /usr/share/doc/asterisk-14.2.1/CREDITS |
| /usr/share/doc/asterisk-14.2.1/ChangeLog |
| /usr/share/doc/asterisk-14.2.1/README |
| /usr/share/doc/asterisk-14.2.1/README-SERIOUSLY.bestpractices.txt |
| /usr/share/doc/asterisk-14.2.1/README-addons.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-1.2.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-1.4.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-1.6.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-1.8.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-10.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-11.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-12.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE-13.txt |
| /usr/share/doc/asterisk-14.2.1/UPGRADE.txt |
| /usr/share/doc/asterisk-14.2.1/Zaptel-to-DAHDI.txt |
| /usr/share/doc/asterisk-14.2.1/asterisk-14.2.1-summary.txt |
| /usr/share/doc/asterisk-14.2.1/asterisk.sgml |
| /usr/share/doc/asterisk-14.2.1/configs |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/README |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/asterisk.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/cdr.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/cdr_custom.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/confbridge.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/extensions.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/indications.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/logger.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/modules.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/musiconhold.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/pjsip.conf |
| /usr/share/doc/asterisk-14.2.1/configs/basic-pbx/voicemail.conf |
| /usr/share/doc/asterisk-14.2.1/configs/samples |
| /usr/share/doc/asterisk-14.2.1/configs/samples/acl.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/adsi.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/agents.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/alarmreceiver.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/alsa.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/amd.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/app_mysql.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/app_skel.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/ari.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/asterisk.adsi |
| /usr/share/doc/asterisk-14.2.1/configs/samples/asterisk.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/calendar.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/ccss.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_adaptive_odbc.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_custom.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_manager.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_mysql.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_odbc.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_pgsql.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_sqlite3_custom.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_syslog.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cdr_tds.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cel.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cel_custom.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cel_odbc.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cel_pgsql.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cel_sqlite3_custom.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cel_tds.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/chan_dahdi.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/chan_mobile.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cli.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cli_aliases.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/cli_permissions.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/codecs.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/confbridge.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/config_test.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/console.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/dbsep.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/dnsmgr.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/dsp.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/dundi.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/enum.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/extconfig.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/extensions.ael.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/extensions.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/extensions.lua.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/extensions_minivm.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/features.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/festival.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/followme.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/func_odbc.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/hep.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/http.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/iax.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/iaxprov.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/indications.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/logger.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/manager.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/meetme.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/mgcp.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/minivm.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/misdn.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/modules.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/motif.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/musiconhold.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/muted.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/ooh323.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/osp.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/oss.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/phone.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/phoneprov.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/pjproject.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/pjsip.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/pjsip_notify.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/pjsip_wizard.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/queuerules.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/queues.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_config_mysql.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_config_sqlite.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_config_sqlite3.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_corosync.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_curl.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_fax.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_ldap.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_odbc.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_parking.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_pgsql.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_pktccops.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_snmp.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/res_stun_monitor.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/resolver_unbound.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/rtp.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/say.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/sip.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/sip_notify.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/skinny.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/sla.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/smdi.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/sorcery.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/ss7.timers.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/stasis.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/statsd.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/telcordia-1.adsi |
| /usr/share/doc/asterisk-14.2.1/configs/samples/test_sorcery.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/udptl.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/unistim.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/users.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/voicemail.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/vpb.conf.sample |
| /usr/share/doc/asterisk-14.2.1/configs/samples/xmpp.conf.sample |
| /usr/share/man/man8/astdb2bdb.8.gz |
| /usr/share/man/man8/astdb2sqlite3.8.gz |
| /usr/share/man/man8/asterisk.8.gz |
| /usr/share/man/man8/astgenkey.8.gz |
| /usr/share/man/man8/autosupport.8.gz |
| /usr/share/man/man8/safe_asterisk.8.gz |
| /var/lib/asterisk |
| /var/log/asterisk |
| /var/log/asterisk/cdr-csv |
| /var/log/asterisk/cdr-custom |
| /var/spool/asterisk |
| /var/spool/asterisk/monitor |
| /var/spool/asterisk/outgoing |
| /var/spool/asterisk/tmp |
| /var/spool/asterisk/uploads |
| /var/spool/asterisk/voicemail</code> |
| |
| === asterisk-iax2 === |
| Da wir später z.B. für die Clients auf das **I**nter**A**sterisk e**X**change Protokoll oder kurz **[[https://de.wikipedia.org/wiki/InterAsterisk_eXchange|IAX2]]** zurückgreifen wollen, installieren wir hierzu das zugehörige **RPM**. |
| # yum install asterisk-iax2 |
| |
| Was genau diese RPM-Paket in unserern Server mitgebracht hat zeigt uns wie immer der Aufruf des Befehls **rpm** mit der Option **-qil**. |
| # rpm -qil asterisk-iax2 |
| |
| <code>Name : asterisk-iax2 |
| Version : 14.2.1 |
| Release : 1.el7.centos |
| Architecture: x86_64 |
| Install Date: Wed 18 Jan 2017 07:08:23 PM CET |
| Group : Applications/Internet |
| Size : 389194 |
| License : GPLv2 |
| Signature : RSA/SHA1, Thu 08 Dec 2016 11:58:07 PM CET, Key ID ccf40e16b9a46fa9 |
| Source RPM : asterisk-14.2.1-1.el7.centos.src.rpm |
| Build Date : Thu 08 Dec 2016 11:57:54 PM CET |
| Build Host : olive.ph.tucny.com |
| Relocations : (not relocatable) |
| URL : https://www.asterisk.org/ |
| Summary : IAX2 channel driver for Asterisk |
| Description : |
| IAX2 channel driver for Asterisk |
| /etc/asterisk/iax.conf |
| /etc/asterisk/iaxprov.conf |
| /usr/lib64/asterisk/modules/chan_iax2.so |
| /usr/share/asterisk/firmware |
| /usr/share/asterisk/firmware/iax</code> |
| |
| === asterisk-pjsip === |
| Für die Anbindung unseres Asterisk-Servers an den Provider nutzen wir das **S**ession **I**nitiation **P**rotocol - **[[https://de.wikipedia.org/wiki/Session_Initiation_Protocol|SIP]]**. Statt dem alten chan_sip Modulen benutzen wir unter //**Asterisk 14**// nunmehr die neuen, auf den **[[https://www.pjsip.org/about.htm|PJSIP-Bibliotheken]]** basierenden, SIP-Stack. die wesentlichen Unterschiede bei der Konfiguration sind auf dieser **[[https://wiki.asterisk.org/wiki/display/AST/Migrating+from+chan_sip+to+res_pjsip|Seite]]** ausführlich beschrieben. |
| |
| Wie installieren also auch hier das passende **RPM**. |
| # yum install asterisk-pjsip |
| |
| Was genau diese RPM-Paket in unseren Server mitgebracht hat zeigt uns wie immer der Aufruf des Befehls **rpm** mit der Option **-qil**. |
| # rpm -qil asterisk-pjsip |
| |
| <code>Name : asterisk-pjsip |
| Version : 14.2.1 |
| Release : 1.el7.centos |
| Architecture: x86_64 |
| Install Date: Thu 19 Jan 2017 02:21:55 PM CET |
| Group : Applications/Internet |
| Size : 1554633 |
| License : GPLv2 |
| Signature : RSA/SHA1, Thu 08 Dec 2016 11:58:06 PM CET, Key ID ccf40e16b9a46fa9 |
| Source RPM : asterisk-14.2.1-1.el7.centos.src.rpm |
| Build Date : Thu 08 Dec 2016 11:57:54 PM CET |
| Build Host : olive.ph.tucny.com |
| Relocations : (not relocatable) |
| URL : https://www.asterisk.org/ |
| Summary : SIP channel based upon the PJSIP library |
| Description : |
| SIP channel based upon the PJSIP library |
| /etc/asterisk/pjproject.conf |
| /etc/asterisk/pjsip.conf |
| /etc/asterisk/pjsip_notify.conf |
| /etc/asterisk/pjsip_wizard.conf |
| /usr/lib64/asterisk/modules/chan_pjsip.so |
| /usr/lib64/asterisk/modules/func_pjsip_aor.so |
| /usr/lib64/asterisk/modules/func_pjsip_contact.so |
| /usr/lib64/asterisk/modules/func_pjsip_endpoint.so |
| /usr/lib64/asterisk/modules/res_pjproject.so |
| /usr/lib64/asterisk/modules/res_pjsip.so |
| /usr/lib64/asterisk/modules/res_pjsip_acl.so |
| /usr/lib64/asterisk/modules/res_pjsip_authenticator_digest.so |
| /usr/lib64/asterisk/modules/res_pjsip_caller_id.so |
| /usr/lib64/asterisk/modules/res_pjsip_config_wizard.so |
| /usr/lib64/asterisk/modules/res_pjsip_dialog_info_body_generator.so |
| /usr/lib64/asterisk/modules/res_pjsip_diversion.so |
| /usr/lib64/asterisk/modules/res_pjsip_dlg_options.so |
| /usr/lib64/asterisk/modules/res_pjsip_dtmf_info.so |
| /usr/lib64/asterisk/modules/res_pjsip_empty_info.so |
| /usr/lib64/asterisk/modules/res_pjsip_endpoint_identifier_anonymous.so |
| /usr/lib64/asterisk/modules/res_pjsip_endpoint_identifier_ip.so |
| /usr/lib64/asterisk/modules/res_pjsip_endpoint_identifier_user.so |
| /usr/lib64/asterisk/modules/res_pjsip_exten_state.so |
| /usr/lib64/asterisk/modules/res_pjsip_header_funcs.so |
| /usr/lib64/asterisk/modules/res_pjsip_history.so |
| /usr/lib64/asterisk/modules/res_pjsip_logger.so |
| /usr/lib64/asterisk/modules/res_pjsip_messaging.so |
| /usr/lib64/asterisk/modules/res_pjsip_mwi.so |
| /usr/lib64/asterisk/modules/res_pjsip_mwi_body_generator.so |
| /usr/lib64/asterisk/modules/res_pjsip_nat.so |
| /usr/lib64/asterisk/modules/res_pjsip_notify.so |
| /usr/lib64/asterisk/modules/res_pjsip_one_touch_record_info.so |
| /usr/lib64/asterisk/modules/res_pjsip_outbound_authenticator_digest.so |
| /usr/lib64/asterisk/modules/res_pjsip_outbound_publish.so |
| /usr/lib64/asterisk/modules/res_pjsip_outbound_registration.so |
| /usr/lib64/asterisk/modules/res_pjsip_path.so |
| /usr/lib64/asterisk/modules/res_pjsip_phoneprov_provider.so |
| /usr/lib64/asterisk/modules/res_pjsip_pidf_body_generator.so |
| /usr/lib64/asterisk/modules/res_pjsip_pidf_digium_body_supplement.so |
| /usr/lib64/asterisk/modules/res_pjsip_pidf_eyebeam_body_supplement.so |
| /usr/lib64/asterisk/modules/res_pjsip_publish_asterisk.so |
| /usr/lib64/asterisk/modules/res_pjsip_pubsub.so |
| /usr/lib64/asterisk/modules/res_pjsip_refer.so |
| /usr/lib64/asterisk/modules/res_pjsip_registrar.so |
| /usr/lib64/asterisk/modules/res_pjsip_registrar_expire.so |
| /usr/lib64/asterisk/modules/res_pjsip_rfc3326.so |
| /usr/lib64/asterisk/modules/res_pjsip_sdp_rtp.so |
| /usr/lib64/asterisk/modules/res_pjsip_send_to_voicemail.so |
| /usr/lib64/asterisk/modules/res_pjsip_session.so |
| /usr/lib64/asterisk/modules/res_pjsip_sips_contact.so |
| /usr/lib64/asterisk/modules/res_pjsip_t38.so |
| /usr/lib64/asterisk/modules/res_pjsip_transport_management.so |
| /usr/lib64/asterisk/modules/res_pjsip_transport_websocket.so |
| /usr/lib64/asterisk/modules/res_pjsip_xpidf_body_generator.so</code> |
| |
| ===== Programmstart ===== |
| ==== erster manueller Start ==== |
| Abwohl wie noch keine individuellen Konfigurationsänderungen vorgenommen haben, können wir den Asterisk-Daemon schon starten. Hierzu nutzen wir das **systemd** Startscript. |
| # systemctl start asterisk.service |
| |
| Den erfolgreichen Start des Daemon können wir nun abfragen. |
| # systemctl status asterisk.service -l |
| |
| <html><pre class="code"> |
| <font style="color: rgb(0, 255, 0)"><b>● </b></font><font style="color: rgb(0, 0, 0)">asterisk.service - Asterisk PBX and telephony daemon. |
| Loaded: loaded (/usr/lib/systemd/system/asterisk.service; disabled; vendor preset: disabled) |
| Active: <font style="color: rgb(0, 255, 0)"><b>active (running) </b></font><font style="color: rgb(0, 0, 0)"> since Wed 2017-01-18 19:27:13 CET; 29s ago |
| Main PID: 12988 (asterisk) |
| CGroup: /system.slice/asterisk.service |
| └─12988 /usr/sbin/asterisk -f -C /etc/asterisk/asterisk.conf |
| |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: [Jan 18 19:27:14] WARNING[12988]: res_phoneprov.c:1231 get_defaults: Unable to find a valid server address or name. |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: [Jan 18 19:27:14] ERROR[12988]: ari/config.c:314 process_config: No configured users for ARI |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: 19:27:14.532 os_core_unix.c !pjlib 2.3 for POSIX initialized |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: [Jan 18 19:27:14] WARNING[12988]: res_musiconhold.c:1767 load_moh_classes: A directory must be specified for class 'general'! |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: [Jan 18 19:27:14] WARNING[12988]: res_musiconhold.c:1945 load_module: No music on hold classes configured, disabling music on hold. |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: 19:27:14.539 pjlib !select() I/O Queue created (0x7f33ac000948) |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: SIP channel loading... |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: [Jan 18 19:27:14] NOTICE[12988]: confbridge/conf_config_parser.c:2126 verify_default_profiles: Adding default_menu menu to app_confbridge |
| Jan 18 19:27:14 vml000177.dmz.nausch.org asterisk[12988]: [Jan 18 19:27:14] NOTICE[12988]: cel_custom.c:97 load_config: No mappings found in cel_custom.conf. Not logging CEL to custom CSVs. |
| Jan 18 19:27:15 vml000177.dmz.nausch.org asterisk[12988]: Asterisk Ready.</font> |
| </pre></html> |
| |
| Im Verzeichnis //**/var/log/asterisk**// beschreibt der Daemon auch ein eigene Logdatei |
| # less /var/log/asterisk/messages |
| |
| <code>[Jan 18 19:27:13] Asterisk 14.2.1 built by mockbuild @ olive.ph.tucny.com on a x86_64 running Linux on 2016-12-08 22:53:51 UTC |
| [Jan 18 19:27:14] NOTICE[12988] cdr.c: CDR simple logging enabled. |
| [Jan 18 19:27:14] NOTICE[12988] loader.c: 223 modules will be loaded. |
| [Jan 18 19:27:14] WARNING[12988] res_phoneprov.c: Unable to find a valid server address or name. |
| [Jan 18 19:27:14] ERROR[12988] ari/config.c: No configured users for ARI |
| [Jan 18 19:27:14] WARNING[12988] res_musiconhold.c: A directory must be specified for class 'general'! |
| [Jan 18 19:27:14] WARNING[12988] res_musiconhold.c: No music on hold classes configured, disabling music on hold. |
| [Jan 18 19:27:14] NOTICE[12988] confbridge/conf_config_parser.c: Adding default_menu menu to app_confbridge |
| [Jan 18 19:27:14] NOTICE[12988] cel_custom.c: No mappings found in cel_custom.conf. Not logging CEL to custom CSVs.</code> |
| |
| ==== automatischer Start ==== |
| Damit der Daemon später beim Hochfahren des Asterisk-Servers automatisch gestartet wird, aktivieren wir den Autostart des Daemon. |
| # systemctl enable asterisk.service |
| |
| Created symlink from /etc/systemd/system/multi-user.target.wants/asterisk.service to /usr/lib/systemd/system/asterisk.service. |
| |
| Wollen wir prüfen ob der Autostart des Daemon richtig gesetzt wurde, fragen wir den Status entsprechend wie folgt ab. |
| # systemctl is-enabled asterisk.service |
| |
| enabled |
| |
| ===== Asterisk-Konsole ===== |
| Der laufende Asterisk-Server stellt zur Interaktion eine eigene Konsole zur Verfügung. Mit der Option ''-r'' können wir uns beim Aufruf des Befehls **asterisk** mit dieser Konsole verbinden. |
| # asterisk -r |
| <code>Asterisk 14.2.1, Copyright (C) 1999 - 2016, Digium, Inc. and others. |
| Created by Mark Spencer <markster@digium.com> |
| Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. |
| This is free software, with components licensed under the GNU General Public |
| License version 2 and other licenses; you are welcome to redistribute it under |
| certain conditions. Type 'core show license' for details. |
| ========================================================================= |
| Connected to Asterisk 14.2.1 currently running on vml000177 (pid = 12988) |
| vml000177*CLI></code> |
| |
| Eine Übersicht über den Befehlsumfang den uns die Asterisk-Konsole zur Verfügung stellt, können wir uns mit dem Befehl **help** anzeigen lassen. |
| vml000177*CLI> help |
| <code>! -- Execute a shell command |
| acl show -- Show a named ACL or list all named ACLs |
| agent logoff -- Sets an agent offline |
| agent show all -- Show status of all agents |
| agent show online -- Show status of online agents |
| agent show -- Show information about an agent |
| agi dump html -- Dumps a list of AGI commands in HTML format |
| agi exec -- Add AGI command to a channel in Async AGI |
| agi set debug [on|off] -- Enable/Disable AGI debugging |
| agi show commands [topic] -- List AGI commands or specific help |
| aoc set debug -- enable cli debugging of AOC messages |
| ari mkpasswd -- Encrypts a password |
| ari set debug -- Enable/disable debugging of an ARI application |
| ari show apps -- List registered ARI applications |
| ari show app -- Display details of a registered ARI application |
| ari show status -- Show ARI settings |
| ari show users -- List ARI users |
| ari show user -- List single ARI user |
| bridge kick -- Kick a channel from a bridge |
| bridge show all -- List all bridges |
| bridge show -- Show information about a bridge |
| bridge technology show -- List registered bridge technologies |
| bridge technology {suspend|unsuspend} -- Suspend/unsuspend a bridge technology |
| cc cancel -- Kill a CC transaction |
| cc report status -- Reports CC stats |
| cdr set debug [on|off] -- Enable debugging in the CDR engine |
| cdr show active -- Display active CDRs for channels |
| cdr show status -- Display the CDR status |
| cdr submit -- Posts all pending batched CDR data |
| cel show status -- Display the CEL status |
| channel originate -- Originate a call |
| channel redirect -- Redirect a call |
| channel request hangup -- Request a hangup on a given channel |
| cli check permissions -- Try a permissions config for a user |
| cli reload permissions -- Reload CLI permissions config |
| cli show aliases -- Show CLI command aliases |
| cli show permissions -- Show CLI permissions |
| confbridge kick -- Kick participants out of conference bridges. |
| confbridge list -- List conference bridges and participants. |
| confbridge lock -- Lock a conference. |
| confbridge mute -- Mute participants. |
| confbridge record start -- Start recording a conference |
| confbridge record stop -- Stop recording a conference. |
| confbridge show menu -- Show a conference menu |
| confbridge show menus -- Show a list of conference menus |
| confbridge show profile bridge -- Show a conference bridge profile. |
| confbridge show profile bridges -- Show a list of conference bridge profiles. |
| confbridge show profile user -- Show a conference user profile. |
| confbridge show profile users -- Show a list of conference user profiles. |
| confbridge unlock -- Unlock a conference. |
| confbridge unmute -- Unmute participants. |
| config list -- Show all files that have loaded a configuration file |
| config reload -- Force a reload on modules using a particular configuration file |
| config show help -- Show configuration help for a module |
| core abort shutdown -- Cancel a running shutdown |
| core clear profile -- Clear profiling info |
| core ping taskprocessor -- Ping a named task processor |
| core reload -- Global reload |
| core restart gracefully -- Restart Asterisk gracefully |
| core restart now -- Restart Asterisk immediately |
| core restart when convenient -- Restart Asterisk at empty call volume |
| core set debug channel -- Enable/disable debugging on a channel |
| core set debug -- Set level of debug chattiness |
| core set verbose -- Set level of verbose chattiness |
| core show applications [like|describing] -- Shows registered dialplan applications |
| core show application -- Describe a specific dialplan application |
| core show calls [uptime] -- Display information on calls |
| core show channels [concise|verbose|count] -- Display information on channels |
| core show channel -- Display information on a specific channel |
| core show channeltypes -- List available channel types |
| core show channeltype -- Give more details on that channel type |
| core show codecs [audio|video|image|text] -- Displays a list of registered codecs |
| core show codec -- Shows a specific codec |
| core show config mappings -- Display config mappings (file names to config engines) |
| core show file formats -- Displays file formats |
| core show functions [like] -- Shows registered dialplan functions |
| core show function -- Describe a specific dialplan function |
| core show hanguphandlers all -- Show hangup handlers of all channels |
| core show hanguphandlers -- Show hangup handlers of a specified channel |
| core show help -- Display help list, or specific help on a command |
| core show hints -- Show dialplan hints |
| core show hint -- Show dialplan hint |
| core show image formats -- Displays image formats |
| core show license -- Show the license(s) for this copy of Asterisk |
| core show profile -- Display profiling info |
| core show settings -- Show some core settings |
| core show sounds -- Shows available sounds |
| core show sound -- Shows details about a specific sound |
| core show switches -- Show alternative switches |
| core show sysinfo -- Show System Information |
| core show taskprocessors -- List instantiated task processors and statistics |
| core show threads -- Show running threads |
| core show translation -- Display translation matrix |
| core show uptime [seconds] -- Show uptime information |
| core show version -- Display version info |
| core show warranty -- Show the warranty (if any) for this copy of Asterisk |
| core stop gracefully -- Gracefully shut down Asterisk |
| core stop now -- Shut down Asterisk immediately |
| core stop when convenient -- Shut down Asterisk at empty call volume |
| core waitfullybooted -- Wait for Asterisk to be fully booted |
| data get -- Data API get |
| data show providers -- Show data providers |
| database del -- Removes database key/value |
| database deltree -- Removes database keytree/values |
| database get -- Gets database value |
| database put -- Adds/updates database value |
| database query -- Run a user-specified query on the astdb |
| database show -- Shows database contents |
| database showkey -- Shows database contents |
| devstate change -- Change a custom device state |
| devstate list -- List currently known custom device states |
| dialplan add extension -- Add new extension into context |
| dialplan add ignorepat -- Add new ignore pattern |
| dialplan add include -- Include context in other context |
| dialplan debug -- Show fast extension pattern matching data structures |
| dialplan reload -- Reload extensions and *only* extensions |
| dialplan remove context -- Remove a specified context |
| dialplan remove extension -- Remove a specified extension |
| dialplan remove ignorepat -- Remove ignore pattern from context |
| dialplan remove include -- Remove a specified include from context |
| dialplan save -- Save current dialplan into a file |
| dialplan set chanvar -- Set a channel variable |
| dialplan set extenpatternmatchnew false -- Use the Old extension pattern matching algorithm. |
| dialplan set extenpatternmatchnew true -- Use the New extension pattern matching algorithm. |
| dialplan set global -- Set global dialplan variable |
| dialplan show -- Show dialplan |
| dialplan show chanvar -- Show channel variables |
| dialplan show globals -- Show global dialplan variables |
| dnsmgr refresh -- Performs an immediate refresh |
| dnsmgr reload -- Reloads the DNS manager configuration |
| dnsmgr status -- Display the DNS manager status |
| dundi flush [stats] -- Flush DUNDi cache |
| dundi lookup -- Lookup a number in DUNDi |
| dundi precache -- Precache a number in DUNDi |
| dundi query -- Query a DUNDi EID |
| dundi set debug {on|off} -- Enable/Disable DUNDi debugging |
| dundi show cache -- Show DUNDi cache |
| dundi show entityid -- Display Global Entity ID |
| dundi show hints -- Show DUNDi hints in the cache |
| dundi show mappings -- Show DUNDi mappings |
| dundi show peers [registered|include|exclude|begin] -- Show defined DUNDi peers |
| dundi show peer -- Show info on a specific DUNDi peer |
| dundi show precache -- Show DUNDi precache |
| dundi show requests -- Show DUNDi requests |
| dundi show trans -- Show active DUNDi transactions |
| dundi store history {on|off} -- Enable/Disable DUNDi historic records |
| features show -- Lists configured features |
| file convert -- Convert audio file |
| group show channels -- Display active channels with group(s) |
| hangup request -- <no description available> |
| help -- <no description available> |
| http show status -- Display HTTP server status |
| iax2 provision -- Provision an IAX device |
| iax2 prune realtime -- Prune a cached realtime lookup |
| iax2 reload -- Reload IAX configuration |
| iax2 set debug {on|off|peer} -- Enable/Disable IAX debugging |
| iax2 set debug jb {on|off} -- Enable/Disable IAX jitterbuffer debugging |
| iax2 set debug trunk {on|off} -- Enable/Disable IAX trunk debugging |
| iax2 set mtu -- Set the IAX systemwide trunking MTU |
| iax2 show cache -- Display IAX cached dialplan |
| iax2 show callnumber usage -- Show current entries in IP call number limit table |
| iax2 show channels -- List active IAX channels |
| iax2 show firmware -- List available IAX firmware |
| iax2 show netstats -- List active IAX channel netstats |
| iax2 show peer -- Show details on specific IAX peer |
| iax2 show peers -- List defined IAX peers |
| iax2 show provisioning -- Display iax provisioning |
| iax2 show registry -- Display IAX registration status |
| iax2 show stats -- Display IAX statistics |
| iax2 show threads -- Display IAX helper thread info |
| iax2 show users [like] -- List defined IAX users |
| iax2 test losspct -- Set IAX2 incoming frame loss percentage |
| iax2 unregister -- Unregister (force expiration) an IAX2 peer from the registry |
| indication add -- Add the given indication to the country |
| indication remove -- Remove the given indication from the country |
| indication show -- Display a list of all countries/indications |
| keys init -- Initialize RSA key passcodes |
| keys show -- Displays RSA key information |
| local show channels -- List status of local channels |
| logger add channel -- Adds a new logging channel |
| logger mute -- Toggle logging output to a console |
| logger reload -- Reopens the log files |
| logger remove channel -- Removes a logging channel |
| logger rotate -- Rotates and reopens the log files |
| logger set level {DEBUG|NOTICE|WARNING|ERROR|VERBOSE|DTMF} {on|off} -- Enables/Disables a specific logging level for this console |
| logger show channels -- List configured log channels |
| manager reload -- Reload manager configurations |
| manager set debug [on|off] -- Show, enable, disable debugging of the manager code |
| manager show command -- Show a manager interface command |
| manager show commands -- List manager interface commands |
| manager show connected -- List connected manager interface users |
| manager show eventq -- List manager interface queued events |
| manager show events -- List manager interface events |
| manager show event -- Show a manager interface event |
| manager show settings -- Show manager global settings |
| manager show users -- List configured manager users |
| manager show user -- Display information on a specific manager user |
| media cache create -- Create an item in the media cache |
| media cache delete -- Remove an item from the media cache |
| media cache refresh -- Refresh an item in the media cache |
| media cache show all -- Show all items in the media cache |
| media cache show -- Show a single item in the media cache |
| mixmonitor {start|stop|list} -- Execute a MixMonitor command |
| module load -- Load a module by name |
| module reload -- Reload configuration for a module |
| module show [like] -- List modules and info |
| module unload -- Unload a module by name |
| moh reload -- Reload MusicOnHold |
| moh show classes -- List MusicOnHold classes |
| moh show files -- List MusicOnHold file-based classes |
| no debug channel -- Disable debugging on channel(s) |
| originate -- <no description available> |
| parking show -- Show a parking lot or a list of all parking lots. |
| phoneprov show routes -- Show registered phoneprov http routes |
| pjsip reload -- <no description available> |
| presencestate change -- Change a custom presence state |
| presencestate list -- List currently know custom presence states |
| pri intense debug span -- <no description available> |
| queue add member -- Add a channel to a specified queue |
| queue reload {parameters|members|rules|all} -- Reload queues, members, queue rules, or parameters |
| queue remove member -- Removes a channel from a specified queue |
| queue reset stats -- Reset statistics for a queue |
| queue set penalty -- Set penalty for a channel of a specified queue |
| queue set ringinuse -- Set ringinuse for a channel of a specified queue |
| queue show -- Show status of a specified queue |
| queue show rules -- Show the rules defined in queuerules.conf |
| queue {pause|unpause} member -- Pause or unpause a queue member |
| realtime destroy -- Delete a row from a RealTime database |
| realtime load -- Used to print out RealTime variables. |
| realtime store -- Store a new row into a RealTime database |
| realtime update -- Used to update RealTime variables. |
| realtime update2 -- Used to test the RealTime update2 method |
| reload -- <no description available> |
| rtcp set debug {on|off|ip} -- Enable/Disable RTCP debugging |
| rtcp set stats {on|off} -- Enable/Disable RTCP stats |
| rtp set debug {on|off|ip} -- Enable/Disable RTP debugging |
| say load [new|old] -- Set or show the say mode |
| sip notify -- Send a notify packet to a SIP peer |
| sip prune realtime [peer|all] -- Prune cached Realtime users/peers |
| sip qualify peer -- Send an OPTIONS packet to a peer |
| sip reload -- Reload SIP configuration |
| sip set debug {on|off|ip|peer} -- Enable/Disable SIP debugging |
| sip set history {on|off} -- Enable/Disable SIP history |
| sip show {channels|subscriptions} -- List active SIP channels or subscriptions |
| sip show channelstats -- List statistics for active SIP channels |
| sip show channel -- Show detailed SIP channel info |
| sip show domains -- List our local SIP domains |
| sip show history -- Show SIP dialog history |
| sip show inuse -- List all inuse/limits |
| sip show mwi -- Show MWI subscriptions |
| sip show objects -- List all SIP object allocations |
| sip show peers -- List defined SIP peers |
| sip show peer -- Show details on specific SIP peer |
| sip show registry -- List SIP registration status |
| sip show sched -- Present a report on the status of the scheduler queue |
| sip show settings -- Show SIP global settings |
| sip show tcp -- List TCP Connections |
| sip show users -- List defined SIP users |
| sip show user -- Show details on specific SIP user |
| sip unregister -- Unregister (force expiration) a SIP peer from the registry |
| sorcery memory cache dump -- Dump all objects within a sorcery memory cache |
| sorcery memory cache expire -- Expire a specific object or ALL objects within a sorcery memory cache |
| sorcery memory cache populate -- Clear and populate the sorcery memory cache with objects from the backend |
| sorcery memory cache show -- Show sorcery memory cache information |
| sorcery memory cache stale -- Mark a specific object or ALL objects as stale within a sorcery memory cache |
| stun set debug {on|off} -- Enable/Disable STUN debugging |
| stun show status -- Show STUN servers and statuses |
| timing test -- Run a timing test |
| udptl set debug {on|off|ip} -- Enable/Disable UDPTL debugging |
| udptl show config -- Show UDPTL config options |
| ulimit -- Set or show process resource limits |
| xmldoc dump -- Dump the XML docs to the specified file</code> |
| |
| Eine Übersicht der wesentlichen Einstellungsoptionen können wir uns z.B. mit dem Befehl ''core show settings'' anzeigen lassen. |
| vml000177*CLI> core show settings |
| <code> |
| PBX Core settings |
| ----------------- |
| Version: 14.2.1 |
| Build Options: LOADABLE_MODULES |
| Maximum calls: Not set |
| Maximum open file handles: 1024 |
| Root console verbosity: 0 |
| Current console verbosity: 0 |
| Debug level: 0 |
| Maximum load average: 0.000000 |
| Minimum free memory: 0 MB |
| Startup time: 19:27:13 |
| Last reload time: 19:27:13 |
| System: Linux/3.10.0-327.18.2.el7.x86_64 built by mockbuild on x86_64 2016-12-08 22:53:51 UTC |
| System name: |
| Entity ID: 52:54:00:9a:ac:d3 |
| PBX UUID: a4a776d9-2284-4ef4-a65a-19e838658ef0 |
| Default language: en |
| Language prefix: Enabled |
| User name and group: / |
| Executable includes: Disabled |
| Transcode via SLIN: Enabled |
| Transmit silence during rec: Disabled |
| Generic PLC: Enabled |
| Min DTMF duration:: 80 |
| RTP dynamic payload types: 96-127 |
| |
| * Subsystems |
| ------------- |
| Manager (AMI): Disabled |
| Web Manager (AMI/HTTP): Disabled |
| Call data records: Enabled |
| Realtime Architecture (ARA): Disabled |
| |
| * Directories |
| ------------- |
| Configuration file: /etc/asterisk/asterisk.conf |
| Configuration directory: /etc/asterisk |
| Module directory: /usr/lib64/asterisk/modules |
| Spool directory: /var/spool/asterisk |
| Log directory: /var/log/asterisk |
| Run/Sockets directory: /run/asterisk |
| PID file: /run/asterisk/asterisk.pid |
| VarLib directory: /usr/share/asterisk |
| Data directory: /usr/share/asterisk |
| ASTDB: /var/spool/asterisk/astdb |
| IAX2 Keys directory: /usr/share/asterisk/keys |
| AGI Scripts directory: /usr/share/asterisk/agi-bin |
| |
| </code> |
| |
| Mit der Tastetnkombination **STRG** und **C** verlassen wir die Asterisk Konsole wieder. |
| vml000177*CLI> |
| |
| Disconnected from Asterisk server |
| Asterisk cleanly ending (0). |
| Executing last minute cleanups |
| |
| |
| ===== Paketfilter ===== |
| |
| # firewall-cmd --get-active-zones |
| <code>public |
| interfaces: eth0 eth2 eth1</code> |
| |
| # firewall-cmd --permanent --zone=internal --change-interface=eth1 |
| |
| The interface is under control of NetworkManager, setting zone to 'internal'. |
| success |
| |
| # firewall-cmd --get-active-zones |
| <code>internal |
| interfaces: eth1 |
| public |
| interfaces: eth0 eth2</code> |
| |
| # firewall-cmd --permanent --zone=internal --add-rich-rule="rule family="ipv4" port protocol="udp" port="4569" accept" |
| |
| success |
| |
| |
| # firewall-cmd --reload |
| |
| success |
| |
| # firewall-cmd --zone=internal --list-all |
| <code>internal (active) |
| target: default |
| icmp-block-inversion: no |
| interfaces: eth1 |
| sources: |
| services: dhcpv6-client ssh |
| ports: |
| protocols: |
| masquerade: no |
| forward-ports: |
| sourceports: |
| icmp-blocks: |
| rich rules: |
| rule family="ipv4" port port="4569" protocol="udp" accept |
| </code> |
| |
| |
| # firewall-cmd --get-active-zones |
| <code>internal |
| interfaces: eth1 |
| public |
| interfaces: eth0 eth2</code> |
| |
| |
| # firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" port protocol="udp" port="4569" accept" |
| |
| success |
| |
| # firewall-cmd --reload |
| |
| success |
| |
| |
| |
| # firewall-cmd --zone=public --list-all |
| <code>external |
| target: default |
| icmp-block-inversion: no |
| interfaces: |
| sources: |
| services: ssh |
| ports: |
| protocols: |
| masquerade: yes |
| forward-ports: |
| sourceports: |
| icmp-blocks: |
| rich rules: |
| rule family="ipv4" port port="4569" protocol="udp" accept</code> |
| |
| |
| ===== iax2 ===== |
| |
| |
| # asterisk -r |
| <code>Asterisk 14.2.1, Copyright (C) 1999 - 2016, Digium, Inc. and others. |
| Created by Mark Spencer <markster@digium.com> |
| Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. |
| This is free software, with components licensed under the GNU General Public |
| License version 2 and other licenses; you are welcome to redistribute it under |
| certain conditions. Type 'core show license' for details. |
| ========================================================================= |
| Connected to Asterisk 14.2.1 currently running on vml000177 (pid = 13261) |
| vml000177*CLI></code> |
| vml000177*CLI> iax2 show peers |
| <code>Name/Username Host Mask Port Status Description |
| 33/33 10.0.10.122 (D) (null) 50548 Unmonitored |
| demo/asterisk 216.207.245.47 (S) 255.255.255.255 4569 Unmonitored Demo System At Digium |
| 2 iax2 peers [0 online, 0 offline, 2 unmonitored]</code> |
| |
| ===== dialplan ===== |
| |
| # asterisk -r |
| <code>Asterisk 14.2.1, Copyright (C) 1999 - 2016, Digium, Inc. and others. |
| Created by Mark Spencer <markster@digium.com> |
| Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. |
| This is free software, with components licensed under the GNU General Public |
| License version 2 and other licenses; you are welcome to redistribute it under |
| certain conditions. Type 'core show license' for details. |
| ========================================================================= |
| Connected to Asterisk 14.2.1 currently running on vml000177 (pid = 13261) |
| vml000177*CLI></code> |
| |
| vml000177*CLI> dialplan show |
| <code>[ Context '__func_periodic_hook_context__' created by 'func_periodic_hook' ] |
| 'beep' (CID match '') => 1. Answer() [func_periodic_hook] |
| 2. Playback(beep) [func_periodic_hook] |
| 'hook' (CID match '') => 1. Set(EncodedChannel=${CUT(HOOK_CHANNEL,-,1-2)}) [func_periodic_hook] |
| 2. Set(GROUP_NAME=${EncodedChannel}${HOOK_ID}) [func_periodic_hook] |
| 3. Set(GROUP(periodic-hook)=${GROUP_NAME}) [func_periodic_hook] |
| 4. ExecIf($[${GROUP_COUNT(${GROUP_NAME}@periodic-hook)} > 1]?Hangup()) [func_periodic_hook] |
| 5. Set(ChannelToSpy=${URIDECODE(${EncodedChannel})}) [func_periodic_hook] |
| 6. ChanSpy(${ChannelToSpy},qEB) [func_periodic_hook] |
| |
| [ Context 'parkedcalls' created by 'res_parking/default' ] |
| '700' => 1. Park() [res_parking] |
| '701' => 1. ParkedCall(default,701) [res_parking/default] |
| '702' => 1. ParkedCall(default,702) [res_parking/default] |
| '703' => 1. ParkedCall(default,703) [res_parking/default] |
| '704' => 1. ParkedCall(default,704) [res_parking/default] |
| '705' => 1. ParkedCall(default,705) [res_parking/default] |
| '706' => 1. ParkedCall(default,706) [res_parking/default] |
| '707' => 1. ParkedCall(default,707) [res_parking/default] |
| '708' => 1. ParkedCall(default,708) [res_parking/default] |
| '709' => 1. ParkedCall(default,709) [res_parking/default] |
| '710' => 1. ParkedCall(default,710) [res_parking/default] |
| '711' => 1. ParkedCall(default,711) [res_parking/default] |
| '712' => 1. ParkedCall(default,712) [res_parking/default] |
| '713' => 1. ParkedCall(default,713) [res_parking/default] |
| '714' => 1. ParkedCall(default,714) [res_parking/default] |
| '715' => 1. ParkedCall(default,715) [res_parking/default] |
| '716' => 1. ParkedCall(default,716) [res_parking/default] |
| '717' => 1. ParkedCall(default,717) [res_parking/default] |
| '718' => 1. ParkedCall(default,718) [res_parking/default] |
| '719' => 1. ParkedCall(default,719) [res_parking/default] |
| '720' => 1. ParkedCall(default,720) [res_parking/default] |
| |
| [ Context 'ani' created by 'pbx_config' ] |
| '_X.' => 40000. NoOp(ANI: ${EXTEN}) [pbx_config] |
| 40001. Wait(0.25) [pbx_config] |
| 40002. Answer() [pbx_config] |
| 40003. Playback(vm-from) [pbx_config] |
| 40004. SayDigits(${CALLERID(ani)}) [pbx_config] |
| 40005. Wait(1.25) [pbx_config] |
| 40006. SayDigits(${CALLERID(ani)}) [pbx_config] |
| 40007. Return() [pbx_config] |
| |
| [ Context 'time' created by 'pbx_config' ] |
| '_X.' => 30000. NoOp(Time: ${EXTEN} ${timezone}) [pbx_config] |
| 30001. Wait(0.25) [pbx_config] |
| 30002. Answer() [pbx_config] |
| 30003. Set(FUTURETIME=$[${EPOCH} + 12]) [pbx_config] |
| 30004. SayUnixTime(${FUTURETIME},Zulu,HNS) [pbx_config] |
| 30005. SayPhonetic(z) [pbx_config] |
| 30006. SayUnixTime(${FUTURETIME},${timezone},HNS) [pbx_config] |
| 30007. Playback(spy-local) [pbx_config] |
| 30008. WaitUntil(${FUTURETIME}) [pbx_config] |
| 30009. Playback(beep) [pbx_config] |
| 30010. Return() [pbx_config] |
| |
| [ Context 'default' created by 'pbx_config' ] |
| Include => 'demo' [pbx_config] |
| |
| [ Context 'public' created by 'pbx_config' ] |
| Include => 'demo' [pbx_config] |
| |
| [ Context 'page' created by 'pbx_config' ] |
| '_X.' => 1. Macro(page,SIP/${EXTEN}) [pbx_config] |
| |
| [ Context 'demo' created by 'pbx_config' ] |
| '#' => 1. Playback(demo-thanks) [pbx_config] |
| 2. Hangup() [pbx_config] |
| '1000' => 1. Goto(default,s,1) [pbx_config] |
| '1234' => 1. Playback(transfer,skip) [pbx_config] |
| 2. Gosub(${EXTEN},stdexten(${GLOBAL(CONSOLE)})) [pbx_config] |
| 3. Goto(default,s,1) [pbx_config] |
| '1235' => 1. Voicemail(1234,u) [pbx_config] |
| '1236' => 1. Dial(Console/dsp) [pbx_config] |
| 2. Voicemail(1234,b) [pbx_config] |
| '2' => 1. BackGround(demo-moreinfo) [pbx_config] |
| 2. Goto(s,instruct) [pbx_config] |
| '3' => 1. Set(CHANNEL(language)=fr) [pbx_config] |
| 2. Goto(s,restart) [pbx_config] |
| '500' => 1. Playback(demo-abouttotry) [pbx_config] |
| 2. Dial(IAX2/guest@pbx.digium.com/s@default) [pbx_config] |
| 3. Playback(demo-nogo) [pbx_config] |
| 4. Goto(s,6) [pbx_config] |
| '600' => 1. Playback(demo-echotest) [pbx_config] |
| 2. Echo() [pbx_config] |
| 3. Playback(demo-echodone) [pbx_config] |
| 4. Goto(s,6) [pbx_config] |
| '76245' => 1. Macro(page,SIP/Grandstream1) [pbx_config] |
| '7999' => 1. Set(TIMEOUT(absolute)=60) [pbx_config] |
| 2. Page(Local/Grandstream1@page&Local/Xlite1@page&Local/1234@page/n,d) [pbx_config] |
| '8500' => 1. VoicemailMain() [pbx_config] |
| 2. Goto(s,6) [pbx_config] |
| 'i' => 1. Playback(invalid) [pbx_config] |
| 's' => 1. Wait(1) [pbx_config] |
| 2. Answer() [pbx_config] |
| 3. Set(TIMEOUT(digit)=5) [pbx_config] |
| 4. Set(TIMEOUT(response)=10) [pbx_config] |
| [restart] 5. BackGround(demo-congrats) [pbx_config] |
| [instruct] 6. BackGround(demo-instruct) [pbx_config] |
| 7. WaitExten() [pbx_config] |
| 't' => 1. Goto(#,1) [pbx_config] |
| '_7XXX' => 1. Macro(page,SIP/${EXTEN}) [pbx_config] |
| Include => 'stdexten' [pbx_config] |
| |
| [ Context 'macro-page' created by 'pbx_config' ] |
| 's' => 1. ChanIsAvail(${ARG1},s) [pbx_config] |
| 2. GoToIf($[${AVAILSTATUS} = "1"]?autoanswer:fail) [pbx_config] |
| [autoanswer] 3. Set(_ALERT_INFO="RA") [pbx_config] |
| 4. SIPAddHeader(Call-Info: Answer-After=0) [pbx_config] |
| 5. NoOp() [pbx_config] |
| 6. Dial(${ARG1}) [pbx_config] |
| [fail] 7. Hangup() [pbx_config] |
| |
| [ Context 'stdPrivacyexten' created by 'pbx_config' ] |
| 'a' => 1. VoicemailMain(${mbx}) [pbx_config] |
| 2. Return() [pbx_config] |
| 'stdexten-BUSY' => 1. Voicemail(${mbx},b) [pbx_config] |
| 2. NoOp(Finish stdPrivacyexten BUSY) [pbx_config] |
| 3. Return() [pbx_config] |
| 'stdexten-DONTCALL' => 1. Goto(${dontcntx},s,1) [pbx_config] |
| 'stdexten-NOANSWER' => 1. Voicemail(${mbx},u) [pbx_config] |
| 2. NoOp(Finish stdPrivacyexten NOANSWER) [pbx_config] |
| 3. Return() [pbx_config] |
| 'stdexten-TORTURE' => 1. Goto(${tortcntx},s,1) [pbx_config] |
| '_stde[x]te[n]-.' => 1. Goto(stdexten-NOANSWER,1) [pbx_config] |
| '_X.' => 60000. NoOp(Start stdPrivacyexten) [pbx_config] |
| 60001. Set(LOCAL(ext)=${ARG1}) [pbx_config] |
| 60002. Set(LOCAL(dev)=${ARG2}) [pbx_config] |
| 60003. Set(LOCAL(dontcntx)=${ARG3}) [pbx_config] |
| 60004. Set(LOCAL(tortcntx)=${ARG4}) [pbx_config] |
| 60005. Set(LOCAL(cntx)=${ARG5}) [pbx_config] |
| 60006. Set(LOCAL(mbx)="${ext}"$["${cntx}" ? "@${cntx}" :: ""]) [pbx_config] |
| 60007. Dial(${dev},20,p) [pbx_config] |
| 60008. Goto(stdexten-${DIALSTATUS},1) [pbx_config] |
| |
| [ Context 'stdexten' created by 'pbx_config' ] |
| 'a' => 1. VoicemailMain(${mbx}) [pbx_config] |
| 2. Return() [pbx_config] |
| 'stdexten-BUSY' => 1. Voicemail(${mbx},b) [pbx_config] |
| 2. Return() [pbx_config] |
| 'stdexten-NOANSWER' => 1. Voicemail(${mbx},u) [pbx_config] |
| 2. Return() [pbx_config] |
| '_stde[x]te[n]-.' => 1. Goto(stdexten-NOANSWER,1) [pbx_config] |
| '_X.' => 50000. NoOp(Start stdexten) [pbx_config] |
| 50001. Set(LOCAL(ext)=${EXTEN}) [pbx_config] |
| 50002. Set(LOCAL(dev)=${ARG1}) [pbx_config] |
| 50003. Set(LOCAL(cntx)=${ARG2}) [pbx_config] |
| 50004. Set(LOCAL(mbx)=${ext}${IF($[!${ISNULL(${cntx})}]?@${cntx})}) [pbx_config] |
| 50005. Dial(${dev},20) [pbx_config] |
| 50006. Goto(stdexten-${DIALSTATUS},1) [pbx_config] |
| |
| [ Context 'macro-trunkdial' created by 'pbx_config' ] |
| 's' => 1. Dial(${ARG1}) [pbx_config] |
| 2. Goto(s-${DIALSTATUS},1) [pbx_config] |
| 's-BUSY' => 1. Hangup() [pbx_config] |
| 's-NOANSWER' => 1. Hangup() [pbx_config] |
| '_s-.' => 1. NoOp() [pbx_config] |
| |
| [ Context 'outbound-freenum2' created by 'pbx_config' ] |
| 'fn-BUSY' => 1. Busy() [pbx_config] |
| '_f[n]-.' => 1. NoOp(ISN: ${DIALSTATUS}) [pbx_config] |
| 2. Congestion() [pbx_config] |
| '_X!' => 1. Verbose(2,Performing ISN lookup for ${EXTEN}) [pbx_config] |
| 2. Set(SUFFIX=${CUT(EXTEN,*,2-)}) [pbx_config] |
| 3. GotoIf($["${FILTER(0-9,${SUFFIX})}" != "${SUFFIX}"]?fn-CONGESTION,1) [pbx_config] |
| 4. Set(TIMEOUT(absolute)=10800) [pbx_config] |
| 5. Set(isnresult=${ENUMLOOKUP(${EXTEN},sip,,1,freenum.org)}) [pbx_config] |
| 6. GotoIf($["${isnresult}" != ""]?from) [pbx_config] |
| 7. Set(DIALSTATUS=CONGESTION) [pbx_config] |
| 8. Goto(fn-CONGESTION,1) [pbx_config] |
| [from] 9. Set(__SIPFROMUSER=${CALLERID(num)}) [pbx_config] |
| 10. GotoIf($["${GLOBAL(FREENUMDOMAIN)}" = ""]?dial) [pbx_config] |
| 11. Set(__SIPFROMDOMAIN=${GLOBAL(FREENUMDOMAIN)}) [pbx_config] |
| [dial] 12. Dial(SIP/${isnresult},40) [pbx_config] |
| 13. Goto(fn-${DIALSTATUS},1) [pbx_config] |
| |
| [ Context 'outbound-freenum' created by 'pbx_config' ] |
| '_X*X!' => 1. Goto(outbound-freenum2,${EXTEN},1) [pbx_config] |
| '_XX*X!' => 1. Goto(outbound-freenum2,${EXTEN},1) [pbx_config] |
| '_XXX*X!' => 1. Goto(outbound-freenum2,${EXTEN},1) [pbx_config] |
| '_XXXX*X!' => 1. Goto(outbound-freenum2,${EXTEN},1) [pbx_config] |
| '_XXXXX*X!' => 1. Goto(outbound-freenum2,${EXTEN},1) [pbx_config] |
| '_XXXXXX*X!' => 1. Goto(outbound-freenum2,${EXTEN},1) [pbx_config] |
| |
| [ Context 'local' created by 'pbx_config' ] |
| Include => 'default' [pbx_config] |
| Include => 'trunklocal' [pbx_config] |
| Include => 'iaxtel700' [pbx_config] |
| Include => 'trunktollfree' [pbx_config] |
| Include => 'iaxprovider' [pbx_config] |
| Include => 'parkedcalls' [pbx_config] |
| Ignore pattern => '9' [pbx_config] |
| |
| [ Context 'longdistance' created by 'pbx_config' ] |
| Include => 'local' [pbx_config] |
| Include => 'trunkld' [pbx_config] |
| Ignore pattern => '9' [pbx_config] |
| |
| [ Context 'international' created by 'pbx_config' ] |
| Include => 'longdistance' [pbx_config] |
| Include => 'trunkint' [pbx_config] |
| Ignore pattern => '9' [pbx_config] |
| |
| [ Context 'trunktollfree' created by 'pbx_config' ] |
| '_91800NXXXXXX' => 1. Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}}) [pbx_config] |
| '_91866NXXXXXX' => 1. Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}}) [pbx_config] |
| '_91877NXXXXXX' => 1. Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}}) [pbx_config] |
| '_91888NXXXXXX' => 1. Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}}) [pbx_config] |
| |
| [ Context 'trunklocal' created by 'pbx_config' ] |
| '_9NXXXXXX' => 1. Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}}) [pbx_config] |
| |
| [ Context 'trunkld' created by 'pbx_config' ] |
| '_91NXXNXXXXXX' => 1. Macro(dundi-e164,${EXTEN:1}) [pbx_config] |
| 2. Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}}) [pbx_config] |
| |
| [ Context 'trunkint' created by 'pbx_config' ] |
| '_9011.' => 1. Macro(dundi-e164,${EXTEN:4}) [pbx_config] |
| 2. Dial(${GLOBAL(TRUNK)}/${FILTER(0-9,${EXTEN:${GLOBAL(TRUNKMSD)}})}) [pbx_config] |
| |
| [ Context 'iaxprovider' created by 'pbx_config' ] |
| |
| [ Context 'iaxtel700' created by 'pbx_config' ] |
| '_91700XXXXXXX' => 1. Dial(IAX2/${GLOBAL(IAXINFO)}@iaxtel.com/${EXTEN:1}@iaxtel) [pbx_config] |
| |
| [ Context 'macro-dundi-e164' created by 'pbx_config' ] |
| 's' => 1. Goto(${ARG1},1) [pbx_config] |
| Include => 'dundi-e164-lookup' [pbx_config] |
| |
| [ Context 'dundi-e164-lookup' created by 'pbx_config' ] |
| Include => 'dundi-e164-local' [pbx_config] |
| Include => 'dundi-e164-switch' [pbx_config] |
| |
| [ Context 'dundi-e164-switch' created by 'pbx_config' ] |
| Alt. Switch => 'DUNDi/e164' [pbx_config] |
| |
| [ Context 'dundi-e164-local' created by 'pbx_config' ] |
| Include => 'dundi-e164-canonical' [pbx_config] |
| Include => 'dundi-e164-customers' [pbx_config] |
| Include => 'dundi-e164-via-pstn' [pbx_config] |
| |
| [ Context 'dundi-e164-via-pstn' created by 'pbx_config' ] |
| |
| [ Context 'dundi-e164-customers' created by 'pbx_config' ] |
| |
| [ Context 'dundi-e164-canonical' created by 'pbx_config' ] |
| |
| -= 77 extensions (164 priorities) in 30 contexts. =-</code> |
| |
| ==== konsole verbose output ==== |
| |
| vml000177*CLI> core set verbose 5 |
| |
| Console verbose was OFF and is now 5. |
| |
| |
| ==== echotest ==== |
| |
| <code>vml000177*CLI> |
| -- Accepting AUTHENTICATED call from 10.0.10.122:50548: |
| -- > requested format = gsm, |
| -- > requested prefs = (), |
| -- > actual format = gsm, |
| -- > host prefs = (gsm|ilbc|speex|g729|g723), |
| -- > priority = mine |
| -- Executing [600@default:1] Playback("IAX2/33-15362", "demo-echotest") in new stack |
| -- <IAX2/33-15362> Playing 'demo-echotest.gsm' (language 'de') |
| -- Executing [600@default:2] Echo("IAX2/33-15362", "") in new stack |
| -- Executing [600@default:3] Playback("IAX2/33-15362", "demo-echodone") in new stack |
| -- <IAX2/33-15362> Playing 'demo-echodone.gsm' (language 'de') |
| -- Executing [600@default:4] Goto("IAX2/33-15362", "s,6") in new stack |
| -- Goto (default,s,6) |
| -- Executing [s@default:6] BackGround("IAX2/33-15362", "demo-instruct") in new stack |
| -- <IAX2/33-15362> Playing 'demo-instruct.gsm' (language 'de') |
| -- Executing [2@default:1] BackGround("IAX2/33-15362", "demo-moreinfo") in new stack |
| -- <IAX2/33-15362> Playing 'demo-moreinfo.gsm' (language 'de') |
| == Spawn extension (default, 2, 1) exited non-zero on 'IAX2/33-15362' |
| -- Hungup 'IAX2/33-15362'</code> |
| |
| ==== demo ==== |
| |
| <code>vml000177*CLI> |
| -- Accepting AUTHENTICATED call from 10.0.10.122:50548: |
| -- > requested format = gsm, |
| -- > requested prefs = (), |
| -- > actual format = gsm, |
| -- > host prefs = (gsm|ilbc|speex|g729|g723), |
| -- > priority = mine |
| -- Executing [500@default:1] Playback("IAX2/33-9804", "demo-abouttotry") in new stack |
| -- <IAX2/33-9804> Playing 'demo-abouttotry.gsm' (language 'de') |
| -- Executing [500@default:2] Dial("IAX2/33-9804", "IAX2/guest@pbx.digium.com/s@default") in new stack |
| -- Called IAX2/guest@pbx.digium.com/s@default |
| [Jan 18 22:17:14] NOTICE[13560]: chan_iax2.c:4735 __auto_congest: Auto-congesting call due to slow response |
| -- IAX2/216.207.245.8:4569-4356 is circuit-busy |
| -- Hungup 'IAX2/216.207.245.8:4569-4356' |
| == Everyone is busy/congested at this time (1:0/1/0) |
| -- Executing [500@default:3] Playback("IAX2/33-9804", "demo-nogo") in new stack |
| -- <IAX2/33-9804> Playing 'demo-nogo.gsm' (language 'de') |
| -- Hungup 'IAX2/33-9804'</code> |
| |
| ==== Beispiele ==== |
| === dial === |
| https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+Application_Dial |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; interne Erreichbarkeit der Nebenstellen 11-99 untereinander herstellen |
| exten => _XX,1,NoOp(interner Teilnehmer mit der Rufnummer ${CALLERID(num)} ruft internen (PJ)SIP-Tln. ${EXTEN}) |
| exten => _XX,n,Dial(PJSIP/${EXTEN},55,TtrWw) |
| </code> |
| |
| # asterisk -vvvvr |
| <code> -- Accepting AUTHENTICATED call from 88.217.123.90:33439: |
| -- > requested format = gsm, |
| -- > requested prefs = (), |
| -- > actual format = gsm, |
| -- > host prefs = (gsm|ilbc|speex|g729|g723), |
| -- > priority = mine |
| -- Executing [36@default:1] NoOp("IAX2/33-9632", "interner Teilnehmer mit der Rufnummer 33 ruft internen (PJ)SIP-Tln. 36") in new stack |
| -- Executing [36@default:2] Dial("IAX2/33-9632", "PJSIP/36,55,TtrWw") in new stack |
| -- Called PJSIP/36 |
| -- PJSIP/36-0000001b is ringing |
| == Spawn extension (default, 36, 2) exited non-zero on 'IAX2/33-9632' |
| -- Hungup 'IAX2/33-9632' |
| </code> |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; Anwendungspeispiele bei ankommenden Amtsgesprächen |
| |
| ; BEISPIEL 1: |
| ; ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 auf der internen Nst. 36 signalisieren |
| ; |
| exten => 08121883175,1,Verbose(### Anruf von ${CALLERID(num)} im Kontext "telekom_in" ###) |
| exten => 08121883175,n,Dial(PJSIP/36,60) |
| exten => 08121883175,n,Hangup |
| </code> |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-0000001c", "### Anruf von +4917645534406 im Kontext "telekom_in" ###") in new stack |
| ### Anruf von +4917645534406 im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-0000001c", "PJSIP/36,60") in new stack |
| -- Called PJSIP/36 |
| -- PJSIP/36-0000001d is ringing |
| == Spawn extension (telekom_in, 08121883175, 2) exited non-zero on 'PJSIP/883172_in-0000001c' |
| </code> |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; BEISPIEL 2: |
| ; ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 auf der internen Nst. 36 signalisieren und |
| ; bei nicht erreichen der Nebenstelle bzw. bei unbeantwortetem Anruf Weiterleitung zur Voicemail |
| ; |
| exten => 08121883175,1,Verbose(### Anruf von ${CALLERID(num)} im Kontext "telekom_in" ###) |
| exten => 08121883175,n,Dial(PJSIP/36,60) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup</code> |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-0000001e", "### Anruf von +4917645534406 im Kontext "telekom_in" ###") in new stack |
| ### Anruf von +4917645534406 im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-0000001e", "PJSIP/36,60") in new stack |
| -- Called PJSIP/36 |
| -- PJSIP/36-0000001f is ringing |
| -- Nobody picked up in 60000 ms |
| -- Executing [08121883175@telekom_in:3] Wait("PJSIP/883172_in-0000001e", "1") in new stack |
| -- Executing [08121883175@telekom_in:4] VoiceMail("PJSIP/883172_in-0000001e", "36,u") in new stack |
| -- <PJSIP/883172_in-0000001e> Playing 'vm-theperson.alaw' (language 'de') |
| > 0x7f647c01e910 -- Probation passed - setting RTP source address to 217.0.7.6:58666 |
| -- <PJSIP/883172_in-0000001e> Playing 'digits/3.alaw' (language 'de') |
| -- <PJSIP/883172_in-0000001e> Playing 'digits/6.alaw' (language 'de') |
| -- <PJSIP/883172_in-0000001e> Playing 'vm-isunavail.alaw' (language 'de') |
| -- <PJSIP/883172_in-0000001e> Playing 'vm-intro.alaw' (language 'de') |
| -- <PJSIP/883172_in-0000001e> Playing 'beep.alaw' (language 'de') |
| -- Recording the message |
| -- x=0, open writing: /var/spool/asterisk/voicemail/default/36/tmp/QkCtOM format: wav, 0x7f648c00c0d8 |
| -- User ended message by pressing # |
| -- <PJSIP/883172_in-0000001e> Playing 'auth-thankyou.alaw' (language 'de') |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| -- Executing [08121883175@telekom_in:5] Hangup("PJSIP/883172_in-0000001e", "") in new stack |
| == Spawn extension (telekom_in, 08121883175, 5) exited non-zero on 'PJSIP/883172_in-0000001e'</code> |
| |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; ----------------------------------------------------------------------------------------------------------------------- |
| ; BEISPIEL 3: |
| ; ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 auf der internen Nst. 36 signalisieren und |
| ; bei nicht erreichen der Nebenstelle bzw. bei unbeantwortetem Anruf Weiterleitung zum Mobiltelefon |
| ; |
| exten => 08121883175,1,Verbose(### Anruf von ${CALLERID(num)} im Kontext "telekom_in" ###) |
| exten => 08121883175,n,Dial(PJSIP/36,10) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,Dial(PJSIP/883176_out/sip:017645534406@tel.t-online.de,20,rWw) |
| exten => 08121883175,n,Hangup |
| ; ---------------------------------------------------------------------------------------------------------------------</code> |
| |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-00000000", "### Anruf von anonymous im Kontext "telekom_in" ###") in new stack |
| ### Anruf von anonymous im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-00000000", "PJSIP/36,10") in new stack |
| -- Called PJSIP/36 |
| == Spawn extension (telekom_in, 08121883175, 2) exited non-zero on 'PJSIP/883172_in-00000000' |
| -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-00000002", "### Anruf von anonymous im Kontext "telekom_in" ###") in new stack |
| ### Anruf von anonymous im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-00000002", "PJSIP/36,10") in new stack |
| -- Called PJSIP/36 |
| -- PJSIP/36-00000003 is ringing |
| -- Nobody picked up in 10000 ms |
| -- Executing [08121883175@telekom_in:3] Wait("PJSIP/883172_in-00000002", "1") in new stack |
| -- Executing [08121883175@telekom_in:4] Dial("PJSIP/883172_in-00000002", "PJSIP/883176_out/sip:017645534406@tel.t-online.de,20,rWw") in new stack |
| -- Called PJSIP/883176_out/sip:017645534406@tel.t-online.de |
| -- PJSIP/883176_out-00000004 is making progress passing it to PJSIP/883172_in-00000002 |
| -- PJSIP/883176_out-00000004 is ringing |
| -- PJSIP/883176_out-00000004 answered PJSIP/883172_in-00000002 |
| -- Channel PJSIP/883176_out-00000004 joined 'simple_bridge' basic-bridge <19dd0b6d-7cc4-4e8b-850a-e932484bfd20> |
| -- Channel PJSIP/883172_in-00000002 joined 'simple_bridge' basic-bridge <19dd0b6d-7cc4-4e8b-850a-e932484bfd20> |
| > Bridge 19dd0b6d-7cc4-4e8b-850a-e932484bfd20: switching from simple_bridge technology to native_rtp |
| > Remotely bridged 'PJSIP/883172_in-00000002' and 'PJSIP/883176_out-00000004' - media will flow directly between them |
| > Remotely bridged 'PJSIP/883172_in-00000002' and 'PJSIP/883176_out-00000004' - media will flow directly between them |
| -- Channel PJSIP/883176_out-00000004 left 'native_rtp' basic-bridge <19dd0b6d-7cc4-4e8b-850a-e932484bfd20> |
| -- Channel PJSIP/883172_in-00000002 left 'native_rtp' basic-bridge <19dd0b6d-7cc4-4e8b-850a-e932484bfd20> |
| == Spawn extension (telekom_in, 08121883175, 4) exited non-zero on 'PJSIP/883172_in-00000002' |
| </code> |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; ----------------------------------------------------------------------------------------------------------------------- |
| ; BEISPIEL 4: |
| ; ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 auf der internen Nst. 36 und zeitgleich |
| ; auf dem Mobiltelefon signalisieren. Anschließend bei nicht erreichen der Nebenstelle bzw. bei |
| ; unbeantwortetem Anruf Weiterleitung zur Voicemailbox. Leistungsmerkmal "twinning" |
| ; |
| exten => 08121883175,1,Verbose(### Anruf von ${CALLERID(num)} im Kontext "telekom_in" ###) |
| exten => 08121883175,n,Dial(PJSIP/36&PJSIP/883176_out/sip:017645534406@tel.t-online.de,10,rWw) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup |
| ; ----------------------------------------------------------------------------------------------------------------------- |
| </code> |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-00000000", "### Anruf von anonymous im Kontext "telekom_in" ###") in new stack |
| ### Anruf von anonymous im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-00000000", "PJSIP/36&PJSIP/883176_out/sip:017645534406@tel.t-online.de,10,rWw") in new stack |
| -- Called PJSIP/36 |
| -- Called PJSIP/883176_out/sip:017645534406@tel.t-online.de |
| -- PJSIP/36-00000001 connected line has changed. Saving it until answer for PJSIP/883172_in-00000000 |
| -- PJSIP/883176_out-00000002 connected line has changed. Saving it until answer for PJSIP/883172_in-00000000 |
| -- PJSIP/36-00000001 is ringing |
| -- PJSIP/883176_out-00000002 is making progress passing it to PJSIP/883172_in-00000000 |
| -- PJSIP/883176_out-00000002 is ringing |
| -- Nobody picked up in 10000 ms |
| -- Executing [08121883175@telekom_in:3] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:4] VoiceMail("PJSIP/883172_in-00000000", "36,u") in new stack |
| -- <PJSIP/883172_in-00000000> Playing 'vm-theperson.alaw' (language 'de') |
| > 0x7f47f0023ce0 -- Probation passed - setting RTP source address to 217.0.4.196:12838 |
| -- <PJSIP/883172_in-00000000> Playing 'digits/3.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'digits/6.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'vm-isunavail.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'vm-intro.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'beep.alaw' (language 'de') |
| -- Recording the message |
| -- x=0, open writing: /var/spool/asterisk/voicemail/default/36/tmp/ObhJK5 format: wav, 0x7f47f4008488 |
| -- User hung up |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Spawn extension (telekom_in, 08121883175, 4) exited non-zero on 'PJSIP/883172_in-00000000'</code> |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; ----------------------------------------------------------------------------------------------------------------------- |
| ; BEISPIEL 5: |
| ; ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 nur dann auf der internen Nst. 36 |
| ; signalisieren, wenn der Anruf _NICHT_ vom Anschluss +49892165... kommt. Anrufer dieses dieser Anschlusses |
| ; werden zur Abwimmelansage "... dieser Anschluss ist vorübergehend nicht erreichbar ..." weitergeleitet. |
| ; Alle anderen Anrufer werden zur Nst. 36 durchgestellt; bzw. an ie Voicemail weitergeleitet |
| exten => 08121883175/_+49892165.,1,NoOp(Externanrufer-Gruppe ${CALLERID(num)} ist geblacklistet und wird daher auf die Voicemail geleitet!) |
| exten => 08121883175/_+49892165.,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175/_+49892165.,n,wait(1) |
| exten => 08121883175/_+49892165.,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175/_+49892165.,n,wait(1) |
| exten => 08121883175/_+49892165.,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175/_+49892165.,n,wait(1) |
| exten => 08121883175/_+49892165.,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175/_+49892165.,n,wait(1) |
| exten => 08121883175/_+49892165.,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175/_+49892165.,n,Hangup |
| exten => 08121883175,1,NoOp(Externanrufer ${CALLERID(num)} hat _keinen_ Sperreintrag und wird an den Nst. 36 (snom 360)) |
| exten => 08121883175,n,Dial(PJSIP/36,20,rWw) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup |
| ; ----------------------------------------------------------------------------------------------------------------------- |
| </code> |
| |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] NoOp("PJSIP/883172_in-00000000", "Externanrufer-Gruppe +49892162407 ist geblacklistet und wird daher auf die Voicemail geleitet!") in new stack |
| -- Executing [08121883175@telekom_in:2] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| > 0x7f9e7803f350 -- Probation passed - setting RTP source address to 217.0.4.230:13512 |
| -- Executing [08121883175@telekom_in:3] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:4] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:5] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:6] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:7] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:8] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:9] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:10] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:11] Hangup("PJSIP/883172_in-00000000", "") in new stack |
| == Spawn extension (telekom_in, 08121883175, 11) exited non-zero on 'PJSIP/883172_in-00000000' |
| </code> |
| <code> -- Executing [08121883175@telekom_in:1] NoOp("PJSIP/883172_in-00000001", "Externanrufer anonymous hat _keinen_ Sperreintrag und wird an den Nst. 36 (snom 360)") in new stack |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-00000001", "PJSIP/36,20,rWw") in new stack |
| -- Called PJSIP/36 |
| -- PJSIP/36-00000002 is ringing |
| -- Nobody picked up in 20000 ms |
| -- Executing [08121883175@telekom_in:3] Wait("PJSIP/883172_in-00000001", "1") in new stack |
| -- Executing [08121883175@telekom_in:4] VoiceMail("PJSIP/883172_in-00000001", "36,u") in new stack |
| -- <PJSIP/883172_in-00000001> Playing 'vm-theperson.alaw' (language 'de') |
| > 0x7f9e5800abb0 -- Probation passed - setting RTP source address to 217.0.7.70:28670 |
| -- <PJSIP/883172_in-00000001> Playing 'digits/3.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000001> Playing 'digits/6.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000001> Playing 'vm-isunavail.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000001> Playing 'vm-intro.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000001> Playing 'beep.alaw' (language 'de') |
| -- Recording the message |
| -- x=0, open writing: /var/spool/asterisk/voicemail/default/36/tmp/7SpfZs format: wav, 0x7f9e6c3f6508 |
| -- User hung up |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Spawn extension (telekom_in, 08121883175, 4) exited non-zero on 'PJSIP/883172_in-00000001'</code> |
| |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; ----------------------------------------------------------------------------------------------------------------------- |
| ; BEISPIEL 6: |
| ; ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 nur dann auf der internen Nst. 36 |
| ; signalisieren, wenn der Anruf _NICHT_ die Rufnummer +498921652407 überträgt. Dieser Anrufer wird sofort |
| ; an die Voicemail weitergeleitet. Alle anderen Anrufer werden zur Nst. 36 durchgestellt und bei nicht |
| ; erreichen der Nebenstelle bzw. bei unbeantwortetem Anruf rfolgt eine Weiterleitung zur Voicemailbox. |
| ; |
| exten => 08121883175,1,Verbose(### Anruf von ${CALLERID(num)} im Kontext "telekom_in" ###) |
| exten => 08121883175,n,GotoIf($["${CALLERID(num)}" = "+498921652407"]?10:20) |
| exten => 08121883175,10,NoOp(Externanrufer ${CALLERID(num)} ist geblacklistet und wird daher auf die Voicemail geleitet!) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup |
| exten => 08121883175,20,NoOp(Externanrufer ${CALLERID(num)} hat keinen Sperreintrag und wird an Nst. 36 signalisiert!) |
| exten => 08121883175,n,Dial(PJSIP/36,20,rWw) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup |
| ; ----------------------------------------------------------------------------------------------------------------------- |
| </code> |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-00000000", "### Anruf von +498921652407 im Kontext "telekom_in" ###") in new stack |
| ### Anruf von +498921652407 im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] GotoIf("PJSIP/883172_in-00000000", "1?10:20") in new stack |
| -- Goto (telekom_in,08121883175,10) |
| -- Executing [08121883175@telekom_in:10] NoOp("PJSIP/883172_in-00000000", "Externanrufer +498921652407 ist geblacklistet und wird daher auf die Voicemail geleitet!") in new stack |
| -- Executing [08121883175@telekom_in:11] VoiceMail("PJSIP/883172_in-00000000", "36,u") in new stack |
| -- <PJSIP/883172_in-00000000> Playing 'vm-theperson.alaw' (language 'de') |
| > 0x7fd2d0042a80 -- Probation passed - setting RTP source address to 217.0.7.4:10530 |
| -- <PJSIP/883172_in-00000000> Playing 'digits/3.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'digits/6.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'vm-isunavail.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'vm-intro.alaw' (language 'de') |
| -- <PJSIP/883172_in-00000000> Playing 'beep.alaw' (language 'de') |
| -- Recording the message |
| -- x=0, open writing: /var/spool/asterisk/voicemail/default/36/tmp/jAEk5n format: wav, 0x7fd2e0008058 |
| -- User hung up |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Parsing '/var/spool/asterisk/voicemail/default/36/INBOX/msg0000.txt': Found |
| == Spawn extension (telekom_in, 08121883175, 11) exited non-zero on 'PJSIP/883172_in-00000000'</code> |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-00000001", "### Anruf von anonymous im Kontext "telekom_in" ###") in new stack |
| ### Anruf von anonymous im Kontext telekom_in ### |
| -- Executing [08121883175@telekom_in:2] GotoIf("PJSIP/883172_in-00000001", "0?10:20") in new stack |
| -- Goto (telekom_in,08121883175,20) |
| -- Executing [08121883175@telekom_in:20] NoOp("PJSIP/883172_in-00000001", "Externanrufer anonymous hat keinen Sperreintrag und wird an Nst. 36 signalisiert!") in new stack |
| -- Executing [08121883175@telekom_in:21] Dial("PJSIP/883172_in-00000001", "PJSIP/36,20,rWw") in new stack |
| -- Called PJSIP/36 |
| -- PJSIP/36-00000002 is ringing |
| == Spawn extension (telekom_in, 08121883175, 21) exited non-zero on 'PJSIP/883172_in-00000001'</code> |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; ----------------------------------------------------------------------------------------------------------------------- |
| ; BEISPIEL 7: |
| ; alle ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 werden in der 1st-level Supportgruppe, |
| ; d.h. an den Nebenstellen 33 und 36 signalisiert. Ruf hingegen unser VIP-Kunde mit der Rufnummer 08931408448 |
| ; wird dieser Anrufer sofort zum 2nd-level Support (Nst. 31) durchgestellt bzw. bei nicht erreichen zum |
| ; Mobiltelefon durchgestellt. |
| ; |
| exten => 08121883175/_+498931408448,1,Verbose(### Anruf von VIP-Kunden mit der Rufnummer ${CALLERID(num)} im Kontext "telekom_in". VIP-Behandlung veranlassen! ###) |
| exten => 08121883175/_+498931408448,n,Dial(PJSIP/31&PJSIP/883176_out/sip:017645534406@tel.t-online.de,10,rWw) |
| exten => 08121883175/_+498931408448,n,Hangup |
| exten => 08121883175,1,NoOp(Externanrufer mit der Rufnummer ${CALLERID(num)} ist 08/15-Kunde und wird im 1st-level Support abgeworfen.) |
| exten => 08121883175,n,Dial(PJSIP/36&IAX2/33,15) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup |
| ; -----------------------------------------------------------------------------------------------------------------------</code> |
| |
| <code> -- Executing [08121883175@telekom_in:1] Verbose("PJSIP/883172_in-00000003", "### Anruf von VIP-Kunden mit der Rufnummer +4989216750916 im Kontext "telekom_in". VIP-Behandlung veranlassen! ###") in new stack |
| ### Anruf von VIP-Kunden mit der Rufnummer +4989216750916 im Kontext telekom_in. VIP-Behandlung veranlassen! ### |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-00000003", "PJSIP/31&PJSIP/883176_out/sip:017645534406@tel.t-online.de,10,rWw") in new stack |
| -- Called PJSIP/31 |
| -- Called PJSIP/883176_out/sip:017645534406@tel.t-online.de |
| -- PJSIP/31-00000004 connected line has changed. Saving it until answer for PJSIP/883172_in-00000003 |
| -- PJSIP/883176_out-00000005 connected line has changed. Saving it until answer for PJSIP/883172_in-00000003 |
| -- PJSIP/31-00000004 is ringing |
| -- PJSIP/883176_out-00000005 is making progress passing it to PJSIP/883172_in-00000003 |
| -- PJSIP/883176_out-00000005 is ringing |
| == Spawn extension (telekom_in, 08121883175, 2) exited non-zero on 'PJSIP/883172_in-00000003' |
| </code> |
| <code> -- Executing [08121883175@telekom_in:1] NoOp("PJSIP/883172_in-00000000", "Externanrufer mit der Rufnummer anonymous ist 08/15-Kunde und wird im 1st-level Support abgeworfen.") in new stack |
| -- Executing [08121883175@telekom_in:2] Dial("PJSIP/883172_in-00000000", "PJSIP/36&IAX2/33,15") in new stack |
| [Jan 30 15:31:12] WARNING[17010][C-00000001]: app_dial.c:2530 dial_exec_full: Unable to create channel of type 'IAX2' (cause 20 - Subscriber absent) |
| -- Called PJSIP/36 |
| -- PJSIP/36-00000001 is ringing |
| == Spawn extension (telekom_in, 08121883175, 2) exited non-zero on 'PJSIP/883172_in-00000000'</code> |
| |
| |
| |
| # vim /etc/asterisk/extensions.conf |
| <code>; ----------------------------------------------------------------------------------------------------------------------- |
| ; BEISPIEL 8: |
| ; alle ankommende Anrufe vom Provider Telekom für Rufnummer 08121883175 werden gegen die black- und white- |
| ; listing Datenbank geprüft und gesondert behandelt: |
| ; - Anrufer die keine Nummer übertragen werden "nur" an der int. Nst 36 signalisiert, ohne Weiterleitung |
| ; zum Händie und/oder Voicemail |
| ; - Anrufer mit einem Whitelisting-Eintrag in der AstDB (Asterisk-Datenbank) werden sowohl an der internen |
| ; Nebenstelle 36 wie auch am Händie mit der Rufnummer 0176/45534406 signalisiert. Wird der Anrufer nicht |
| ; binnen 20 Sekunden beantwortet, erhält der Anrufer die Möglichkeit zum Hinterlassen einer Nachricht |
| ; auf der Voicemailbox von der Nst. 36 |
| ; - Anrufer, die einen blacklisting Eintrag haben, werden direkt zur Abwimmelansage der Nst. 36 geleitet |
| ; und anschließend die Verbindung gekappt, ohne dass der Anrufer eine Nachricht hinterlassen kann. |
| ; |
| exten => 08121883175,1,NoOp(Anrufer übertrug die Rufnummer ${CALLERID(num)}) |
| exten => 08121883175,n,Set(access=${DB(36/${CALLERID(num)})}) |
| |
| exten => 08121883175,n,GotoIf($[ "${access}" = "" ]?ohne:testing) |
| exten => 08121883175,n(testing),GotoIf($[ "${access}" = "wl" ]?whitelisted:blacklisted) |
| exten => 08121883175,n(whitelisted),NoOp(der Anrufer ist gewhitelisted, der Anrufer wird zur Nebenstelle 36 und zum Mobiltelefon durchgestellt) |
| exten => 08121883175,n,Dial(PJSIP/36&PJSIP/883176_out/sip:017645534406@tel.t-online.de,10,rWw) |
| exten => 08121883175,n,Wait(1) |
| exten => 08121883175,n,VoiceMail(36,u) |
| exten => 08121883175,n,Hangup |
| exten => 08121883175,n(blacklisted),NoOp(der Anrufer ist geblacklisted und wird daher zur "Abwimmel"-Voicemailbox abgeworfen) |
| exten => 08121883175,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175,n,wait(1) |
| exten => 08121883175,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175,n,wait(1) |
| exten => 08121883175,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175,n,wait(1) |
| exten => 08121883175,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175,n,wait(1) |
| exten => 08121883175,n,Playback(/var/spool/asterisk/voicemail/default/31/unerreichbar) |
| exten => 08121883175,n,Hangup |
| exten => 08121883175,n(ohne),NoOp(der Anrufer überträgt keine Nummer, und ist weder geblack- noch gewhitelisted) |
| exten => 08121883175,n,Dial(PJSIP/31,60) |
| exten => 08121883175,n,Hangup |
| ; ----------------------------------------------------------------------------------------------------------------------- |
| </code> |
| |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] NoOp("PJSIP/883172_in-0000000b", "Anrufer übertrug die Rufnummer +4917645534406") in new stack |
| -- Executing [08121883175@telekom_in:2] Set("PJSIP/883172_in-0000000b", "access=wl") in new stack |
| -- Executing [08121883175@telekom_in:3] GotoIf("PJSIP/883172_in-0000000b", "0?ohne:testing") in new stack |
| -- Goto (telekom_in,08121883175,4) |
| -- Executing [08121883175@telekom_in:4] GotoIf("PJSIP/883172_in-0000000b", "1?whitelisted:blacklisted") in new stack |
| -- Goto (telekom_in,08121883175,5) |
| -- Executing [08121883175@telekom_in:5] NoOp("PJSIP/883172_in-0000000b", "der Anrufer ist gewhitelisted, der Anrufer wird zur Nebenstelle 36 und zum Mobiltelefon durchgestellt") in new stack |
| -- Executing [08121883175@telekom_in:6] Dial("PJSIP/883172_in-0000000b", "PJSIP/36&PJSIP/883176_out/sip:017645534406@tel.t-online.de,10,rWw") in new stack |
| -- Called PJSIP/36 |
| -- Called PJSIP/883176_out/sip:017645534406@tel.t-online.de |
| -- PJSIP/36-0000000c connected line has changed. Saving it until answer for PJSIP/883172_in-0000000b |
| -- PJSIP/883176_out-0000000d connected line has changed. Saving it until answer for PJSIP/883172_in-0000000b |
| -- PJSIP/36-0000000c is ringing |
| -- PJSIP/883176_out-0000000d is making progress passing it to PJSIP/883172_in-0000000b |
| -- PJSIP/883176_out-0000000d is ringing |
| -- PJSIP/883176_out-0000000d answered PJSIP/883172_in-0000000b |
| -- Channel PJSIP/883176_out-0000000d joined 'simple_bridge' basic-bridge <868dad5d-a999-4b8e-babf-88fe30fbf9af> |
| -- Channel PJSIP/883172_in-0000000b joined 'simple_bridge' basic-bridge <868dad5d-a999-4b8e-babf-88fe30fbf9af> |
| > Bridge 868dad5d-a999-4b8e-babf-88fe30fbf9af: switching from simple_bridge technology to native_rtp |
| > Remotely bridged 'PJSIP/883172_in-0000000b' and 'PJSIP/883176_out-0000000d' - media will flow directly between them |
| > Remotely bridged 'PJSIP/883172_in-0000000b' and 'PJSIP/883176_out-0000000d' - media will flow directly between them |
| -- Channel PJSIP/883172_in-0000000b left 'native_rtp' basic-bridge <868dad5d-a999-4b8e-babf-88fe30fbf9af> |
| == Spawn extension (telekom_in, 08121883175, 6) exited non-zero on 'PJSIP/883172_in-0000000b' |
| -- Channel PJSIP/883176_out-0000000d left 'native_rtp' basic-bridge <868dad5d-a999-4b8e-babf-88fe30fbf9af></code> |
| |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] NoOp("PJSIP/883172_in-00000000", "Anrufer übertrug die Rufnummer +4917645502006") in new stack |
| -- Executing [08121883175@telekom_in:2] Set("PJSIP/883172_in-00000000", "access=bl") in new stack |
| -- Executing [08121883175@telekom_in:3] GotoIf("PJSIP/883172_in-00000000", "0?ohne:testing") in new stack |
| -- Goto (telekom_in,08121883175,4) |
| -- Executing [08121883175@telekom_in:4] GotoIf("PJSIP/883172_in-00000000", "0?whitelisted:blacklisted") in new stack |
| -- Goto (telekom_in,08121883175,10) |
| -- Executing [08121883175@telekom_in:10] NoOp("PJSIP/883172_in-00000000", "der Anrufer ist geblacklisted und wird daher zur "Abwimmel"-Voicemailbox abgeworfen") in new stack |
| -- Executing [08121883175@telekom_in:11] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| > 0x7f2f3402ac30 -- Probation passed - setting RTP source address to 217.0.4.68:48282 |
| -- Executing [08121883175@telekom_in:12] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:13] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:14] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:15] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:16] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:17] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:18] Wait("PJSIP/883172_in-00000000", "1") in new stack |
| -- Executing [08121883175@telekom_in:19] Playback("PJSIP/883172_in-00000000", "/var/spool/asterisk/voicemail/default/31/unerreichbar") in new stack |
| -- <PJSIP/883172_in-00000000> Playing '/var/spool/asterisk/voicemail/default/31/unerreichbar.slin' (language 'de') |
| -- Executing [08121883175@telekom_in:20] Hangup("PJSIP/883172_in-00000000", "") in new stack |
| == Spawn extension (telekom_in, 08121883175, 20) exited non-zero on 'PJSIP/883172_in-00000000' |
| </code> |
| |
| |
| # asterisk -vvvvr |
| <code> -- Executing [08121883175@telekom_in:1] NoOp("PJSIP/883172_in-00000009", "Anrufer übertrug die Rufnummer anonymous") in new stack |
| -- Executing [08121883175@telekom_in:2] Set("PJSIP/883172_in-00000009", "access=") in new stack |
| -- Executing [08121883175@telekom_in:3] GotoIf("PJSIP/883172_in-00000009", "1?ohne:testing") in new stack |
| -- Goto (telekom_in,08121883175,21) |
| -- Executing [08121883175@telekom_in:21] NoOp("PJSIP/883172_in-00000009", "der Anrufer überträgt keine Nummer, und ist weder geblack- noch gewhitelisted") in new stack |
| -- Executing [08121883175@telekom_in:22] Dial("PJSIP/883172_in-00000009", "PJSIP/31,60") in new stack |
| -- Called PJSIP/31 |
| -- PJSIP/31-0000000a is ringing |
| == Spawn extension (telekom_in, 08121883175, 22) exited non-zero on 'PJSIP/883172_in-00000009'</code> |
| ===== deutsche Sprachprompts ===== |
| |
| https://www.asterisksounds.org/de/download |
| |
| # mkdir /usr/share/asterisk/sounds/de |
| |
| # de /usr/local/src |
| |
| # wget https://www.asterisksounds.org/de/download/asterisk-sounds-core-de-sln16.zip |
| # wget https://www.asterisksounds.org/de/download/asterisk-sounds-extra-de-sln16.zip |
| |
| # unzip /usr/local/src/asterisk-sounds-core-de-sln16.zip -d /usr/share/asterisk/sounds/de/ |
| # unzip /usr/local/src/asterisk-sounds-extra-de-sln16.zip -d /usr/share/asterisk/sounds/de/ |
| |
| # chmod 644 /usr/share/asterisk/sounds/de/* -R |
| |
| # find /usr/share/asterisk/sounds/de -type d -exec chmod 0755 {} \; |
| |
| # yum install sox |
| |
| # vi /usr/local/bin/asterisk-sound-convert |
| <file bash /usr/local/bin/asterisk-sound-convert>#!/bin/bash |
| cd /usr/share/asterisk/sounds/de |
| for a in $(find . -name '*.sln16'); do |
| sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\ |
| sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\ |
| sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\ |
| done |
| </file> |
| |
| # chmod +x /usr/local/bin/asterisk-sound-convert |
| |
| # asterisk-sound-convert |
| |
| |
| ===== Music on hold ===== |
| |
| # yum install madplay -y |
| |
| |
| |
| https://www.asteriskguru.com/tools/audio_conversion.php |
| |
| |
| ===== Anbindung an das VoIP-Netz der Telekom mit PJSIP ===== |
| ==== Grundkonfiguration ==== |
| |
| ==== individuelle Rufnummer bei der abgehenden Wahl setzen ==== |
| Haben wir von unserem VoIP-Anbieter mehrere Rufnummern bekommen, so werden wir diese in aller regel einzelnen Endgeräten oder Diensten zuordnen wollen. Bei ankommenden Gesprächen haben wir diese Zuordnung über den Abschnitt **[telekom_in]** vorgenommen. Nun wollen wir aber auch je nach verwendeter internen Nebenstelle unseres Asterisk eine bestimmte Rufnummr **CLID**((**C**alling **L**ine **ID**entification)) als Absender nach extern verwenden und auch übertragen. |
| Das was sich bei dem ein oder anderen höchstprofesssionellen Systemintegrator als unlösbare Herausforderunge bei einer VoIP-Anlage mit 3.000 Nebenstellen darstellen kann, gestaltet sich bei unserem Asterisk-Server als triviale Herausforderung. LOL |
| |
| Für die Zuordnung der internen Rufnummern zu den jeweiligen externen Absenderrufnummern bzw. PJSIP-Kanälen bedienen wir uns der Asterisk-eigenen Datenbank. Diese Datenbank erreichen wir über die Funktion **database**. Wir können damit z.B. unsere Registrierten Geräte abfragen. |
| |
| # asterisk -r |
| |
| vml000177*CLI> database put 33 CLID 9959277_out |
| |
| Updated database successfully |
| |
| vml000177*CLI> database put 36 CLID 9959278_out |
| |
| Updated database successfully |
| |
| vml000177*CLI> database show |
| |
| /33/CLID : 9959277_out |
| /36/CLID : 9959278_out |
| |
| |
| ===== Voicemail ===== |
| |
| # yum install asterisk-voicemail -y |
| |
| # chown asterisk:asterisk /var/spool/asterisk/voicemail/ -R |
| |
| # wget https://forensics.cert.org/cert-forensics-tools-release-el7.rpm |
| # rpm -Uvh cert-forensics-tools-release*rpm |
| |
| # vim /etc/yum.repos.d/cert-forensics-tools.repo |
| <file bash /etc/yum.repos.d/cert-forensics-tools.repo>[forensics] |
| name=CERT Forensics Tools Repository |
| baseurl=http://www.cert.org/forensics/repository/centos/cert/$releasever/$basearch |
| enabled=1 |
| gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cert-forensics-2018-04-07 |
| gpgcheck=1 |
| priority=10 |
| |
| [forensics-test] |
| name=CERT Forensics Tools Test Repository |
| baseurl=http://www.cert.org/forensics/repository/centos/cert-test/$releasever/$basearch |
| enabled=0 |
| gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cert-forensics-2018-04-07 |
| gpgcheck=1 |
| |
| [forensics-splunk] |
| name=CERT Forensics Tools Repository - Splunk |
| baseurl=http://www.cert.org/forensics/repository/centos/splunk/$releasever/$basearch/ |
| gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-splunk |
| enabled=0 |
| gpgcheck=1 |
| |
| [forensics-sip] |
| name=CERT Forensics Tools Repository - SiLK, IPA, and Postgresql |
| baseurl=http://www.cert.org/forensics/repository/centos/sip/$releasever/$basearch |
| enabled=0 |
| gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cert-forensics-2018-04-07 |
| gpgcheck=1 |
| </file> |
| |
| # yum install lame -y |
| |
| ===== Fax ===== |
| |
| # yum install asterisk-fax |
| |
| # rpm -qil asterisk-fax |
| <code>Name : asterisk-fax |
| Version : 14.2.1 |
| Release : 1.el7.centos |
| Architecture: x86_64 |
| Install Date: Sun 29 Jan 2017 09:51:54 PM CET |
| Group : Applications/Internet |
| Size : 155968 |
| License : GPLv2 |
| Signature : RSA/SHA1, Thu 08 Dec 2016 11:58:07 PM CET, Key ID ccf40e16b9a46fa9 |
| Source RPM : asterisk-14.2.1-1.el7.centos.src.rpm |
| Build Date : Thu 08 Dec 2016 11:57:54 PM CET |
| Build Host : olive.ph.tucny.com |
| Relocations : (not relocatable) |
| URL : http://www.asterisk.org/ |
| Summary : FAX applications for Asterisk |
| Description : |
| FAX applications for Asterisk |
| /etc/asterisk/res_fax.conf |
| /usr/lib64/asterisk/modules/res_fax.so |
| /usr/lib64/asterisk/modules/res_fax_spandsp.so</code> |
| |