• Guest
HabraHabr
  • Main
  • Users

  • Development
    • Programming
    • Information Security
    • Website development
    • JavaScript
    • Game development
    • Open source
    • Developed for Android
    • Machine learning
    • Abnormal programming
    • Java
    • Python
    • Development of mobile applications
    • Analysis and design of systems
    • .NET
    • Mathematics
    • Algorithms
    • C#
    • System Programming
    • C++
    • C
    • Go
    • PHP
    • Reverse engineering
    • Assembler
    • Development under Linux
    • Big Data
    • Rust
    • Cryptography
    • Entertaining problems
    • Testing of IT systems
    • Testing Web Services
    • HTML
    • Programming microcontrollers
    • API
    • High performance
    • Developed for iOS
    • CSS
    • Industrial Programming
    • Development under Windows
    • Image processing
    • Compilers
    • FPGA
    • Professional literature
    • OpenStreetMap
    • Google Chrome
    • Data Mining
    • PostgreSQL
    • Development of robotics
    • Visualization of data
    • Angular
    • ReactJS
    • Search technologies
    • Debugging
    • Test mobile applications
    • Browsers
    • Designing and refactoring
    • IT Standards
    • Solidity
    • Node.JS
    • Git
    • LaTeX
    • SQL
    • Haskell
    • Unreal Engine
    • Unity3D
    • Development for the Internet of things
    • Functional Programming
    • Amazon Web Services
    • Google Cloud Platform
    • Development under AR and VR
    • Assembly systems
    • Version control systems
    • Kotlin
    • R
    • CAD/CAM
    • Customer Optimization
    • Development of communication systems
    • Microsoft Azure
    • Perfect code
    • Atlassian
    • Visual Studio
    • NoSQL
    • Yii
    • Mono и Moonlight
    • Parallel Programming
    • Asterisk
    • Yandex API
    • WordPress
    • Sports programming
    • Lua
    • Microsoft SQL Server
    • Payment systems
    • TypeScript
    • Scala
    • Google API
    • Development of data transmission systems
    • XML
    • Regular expressions
    • Development under Tizen
    • Swift
    • MySQL
    • Geoinformation services
    • Global Positioning Systems
    • Qt
    • Dart
    • Django
    • Development for Office 365
    • Erlang/OTP
    • GPGPU
    • Eclipse
    • Maps API
    • Testing games
    • Browser Extensions
    • 1C-Bitrix
    • Development under e-commerce
    • Xamarin
    • Xcode
    • Development under Windows Phone
    • Semantics
    • CMS
    • VueJS
    • GitHub
    • Open data
    • Sphinx
    • Ruby on Rails
    • Ruby
    • Symfony
    • Drupal
    • Messaging Systems
    • CTF
    • SaaS / S+S
    • SharePoint
    • jQuery
    • Puppet
    • Firefox
    • Elm
    • MODX
    • Billing systems
    • Graphical shells
    • Kodobred
    • MongoDB
    • SCADA
    • Hadoop
    • Gradle
    • Clojure
    • F#
    • CoffeeScript
    • Matlab
    • Phalcon
    • Development under Sailfish OS
    • Magento
    • Elixir/Phoenix
    • Microsoft Edge
    • Layout of letters
    • Development for OS X
    • Forth
    • Smalltalk
    • Julia
    • Laravel
    • WebGL
    • Meteor.JS
    • Firebird/Interbase
    • SQLite
    • D
    • Mesh-networks
    • I2P
    • Derby.js
    • Emacs
    • Development under Bada
    • Mercurial
    • UML Design
    • Objective C
    • Fortran
    • Cocoa
    • Cobol
    • Apache Flex
    • Action Script
    • Joomla
    • IIS
    • Twitter API
    • Vkontakte API
    • Facebook API
    • Microsoft Access
    • PDF
    • Prolog
    • GTK+
    • LabVIEW
    • Brainfuck
    • Cubrid
    • Canvas
    • Doctrine ORM
    • Google App Engine
    • Twisted
    • XSLT
    • TDD
    • Small Basic
    • Kohana
    • Development for Java ME
    • LiveStreet
    • MooTools
    • Adobe Flash
    • GreaseMonkey
    • INFOLUST
    • Groovy & Grails
    • Lisp
    • Delphi
    • Zend Framework
    • ExtJS / Sencha Library
    • Internet Explorer
    • CodeIgniter
    • Silverlight
    • Google Web Toolkit
    • CakePHP
    • Safari
    • Opera
    • Microformats
    • Ajax
    • VIM
  • Administration
    • System administration
    • IT Infrastructure
    • *nix
    • Network technologies
    • DevOps
    • Server Administration
    • Cloud computing
    • Configuring Linux
    • Wireless technologies
    • Virtualization
    • Hosting
    • Data storage
    • Decentralized networks
    • Database Administration
    • Data Warehousing
    • Communication standards
    • PowerShell
    • Backup
    • Cisco
    • Nginx
    • Antivirus protection
    • DNS
    • Server Optimization
    • Data recovery
    • Apache
    • Spam and antispam
    • Data Compression
    • SAN
    • IPv6
    • Fidonet
    • IPTV
    • Shells
    • Administering domain names
  • Design
    • Interfaces
    • Web design
    • Working with sound
    • Usability
    • Graphic design
    • Design Games
    • Mobile App Design
    • Working with 3D-graphics
    • Typography
    • Working with video
    • Work with vector graphics
    • Accessibility
    • Prototyping
    • CGI (graphics)
    • Computer Animation
    • Working with icons
  • Control
    • Careers in the IT industry
    • Project management
    • Development Management
    • Personnel Management
    • Product Management
    • Start-up development
    • Managing the community
    • Service Desk
    • GTD
    • IT Terminology
    • Agile
    • Business Models
    • Legislation and IT-business
    • Sales management
    • CRM-systems
    • Product localization
    • ECM / EDS
    • Freelance
    • Venture investments
    • ERP-systems
    • Help Desk Software
    • Media management
    • Patenting
    • E-commerce management
    • Creative Commons
  • Marketing
    • Conferences
    • Promotion of games
    • Internet Marketing
    • Search Engine Optimization
    • Web Analytics
    • Monetize Web services
    • Content marketing
    • Monetization of IT systems
    • Monetize mobile apps
    • Mobile App Analytics
    • Growth Hacking
    • Branding
    • Monetize Games
    • Display ads
    • Contextual advertising
    • Increase Conversion Rate
  • Sundry
    • Reading room
    • Educational process in IT
    • Research and forecasts in IT
    • Finance in IT
    • Hakatonas
    • IT emigration
    • Education abroad
    • Lumber room
    • I'm on my way

Installing FreeSWITCH 1.8 on Debian 9 (Raspbian Stretch, the basic image of the SmartDomain system MajorDoMo on Rasbperri Pi)

 3r33434. 3r3-31. I continue a small series of articles devoted to the creation of a “smart home” and step-by-step instructions for self-installation /configuration. 3r33411.  3r33434. But now it will be mainly about Freeswitch and IP telephony. 3r33411.  3r33434. In August, the developer of the open VoIP IP telephony platform FreeSWITCH, ClueCon, published a public release of the new software version - 1.8. (??? has already been released). 3r33411.  3r33434. In connection with the release of this version of the Freesfitch 1.8 IP telephony platform, there was a decision to install it on Raspberry 3 with the MajorDoMo smart home system installed in a basic way, under the Raspbian (Debian 9 Stretch) operating system with some home automation elements. 3r33411.  3r33434. Installing FreeSWITCH 1.8 on Debian 9 (Raspbian Stretch, the basic image of the SmartDomain system MajorDoMo on Rasbperri Pi) 3r33414. 3r33411.  3r33434. Three months after the release and announcement of the public release of the 1.8 version in the installation manual for Debian 9 on the official website, FreeSWITCH currently has an installation manual. 3r33411.  3r33434. → Install FreeSWITCH ???r3r3414. 3r33411.  3r33434. However, I was not able to install any of the options given in the instructions on my Rasberry. Not so long ago there was a warning about incompatibility and had to be installed from source codes. Also in the official documentation you can find the installation on the Raspberry Pi, but it is already outdated. Therefore, I will describe my version of the installation on the Raspberry P, making a small step by step instructions. In previous articles I tried to describe how and how to start working with the terminal and the command line, so, if a little incomprehensible, I recommend reading the previous articles (links will be given at the end of the article). The principle is the same, it did it - it worked, rechecked, prepared the instruction so that the eldest son could repeat and sort out a little what he was doing. 3r33411.  3r33434. 3r33383. Install FreeSWITCH ??? from source code
3r33411.  3r33434. Connect to Raspberry via Putty. 3r33411.  3r33434. To avoid typing sudo before each command, execute the command sudo –i. After that, we work with the rights of the system administrator, automatically moved to the root directory. To find out what directory you are in, you can execute the Pwd command. 3r33411.  3r33434. We update the system:
 3r33434.
3r33333. apt-get update
apt-get upgrade 3r33375. 3r33411.  3r33434. Go to the home directory, then download the version of freeswitch ???:
 3r33434.
3r33333. cd /home /pi
git clone
https://freeswitch.org/stash/scm/fs/freeswitch.git -bv??? freeswitch
3r33375. 3r33411.  3r33434. After the download is complete, the Freswitch source folder appears in the home directory. Go to it (full path: /home /pi /freeswitch) and install the necessary programs to build from source and go to the freeswitch directory:
 3r33434.
3r33333. cd freeswitch
apt-get install autoconf libtool libtool-bin 3r33375. 3r33411.  3r33434. Before you build a program from source, you must first build a configurator, run: 3r-3411.  3r33434.
3r33333. ./bootstrap.sh –j
3r33375. 3r33411.  3r33434. The Freeswitch platform has a modular structure, so before installing, we edit the list of required modules:
 3r33434.
3r33333. nano /freeswitch/modules.conf
3r33375. 3r33411.  3r33434. For the most part, the list remains as the default, my video codecs are disabled (only G723 and G729 are included), the Russian language module is connected, mod curl endpoints, mod_portaudio. 3r33411.  3r33434. Install dependencies for server configuration and build. Use the –y flag to let the team automatically answer Yes to all questions of the system:
 3r33434.
3r33333. apt-get install -y g ++ zlib1g-dev libjpeg9 pkg-config sqlite3 libsqlite3-dev libcurl4-openssl-dev libpcre3 libpcre3-dev libspeexdsp-dev libldns-dev 3 libredit-dev
apt-get install -y yasm lua5.2 lua5.2-dev libsndfile-dev portaudio19-dev
3r33375. 3r33411.  3r33434. Installable packages depend on plugins. If a package is missing, then an error may occur in the next two steps. 3r33411.  3r33434. 3r395. Configuration and installation of the server FreeSWITCH
3r33411.  3r33434. After that, you need to run the configurator to check for all dependencies, as well as install additional assembly options. The configurator will build a Makefile based on the knowledge gained and the makefile.am file. 3r33411.  3r33434. Run the command:
 3r33434.
3r33333. ./configure --enable-system-lua
3r33375. 3r33411.  3r33434. If everything went well, then we get the following message:
 3r33434. 3r33112. 3r33411.  3r33434. Let's proceed to the installation itself:
 3r33434.
3r33333. Make
Make install
3r33375. 3r33411.  3r33434. If the result is positive, Freeswitch is installed by default in the directory /usr /local /freeswitch , at the end of the configuration we can view the list and location of the FS directories 3r33411.  3r33434. If during installation or configuration you get an error like mod_lua.cpp: 37: 17: fatal error: lua.h: No such file or directory #include "lua.h", then you need to install the necessary libraries using the search command. I was unable to install freeswitch with liblua5.3-0 liblua5.3-dev packages, I had to install version 5.2. [/i] 3r33411.  3r33434.

  3r33333. Apt search lua
3r33375. 3r33411.  3r33434. 3r3143. 3r33411.  3r33434. Install sound files with Russian support:
 3r33434.
  3r33333. make cd-sounds-install
make cd-sounds-ru-install cd-moh-install 3r33375. 3r33411.  3r33434. At this point, the installation process can be said to be complete. 3r33411.  3r33434. To prevent small database files from being written to flash memory and increase its lifespan, add the following line in /etc /fstab: 3r3114.  3r33434. 3r33333. tmpfs /usr /local /freeswitch /db tmpfs defaults ???r3r3411.  3r33434. 3r33411.  3r33434. After restarting, temporary files created by FS will be written to RAM. 3r33411.  3r33434. 3r33411.  3r33434. 3r33383. System setup after installing FreeSWITCH. 3r33411.  3r33434. There is a warning in the FreeSWITCH documentation, so I do not recommend trying to run FS immediately after installation. 3r33411.  3r33434. **Attention! If you installed FreeSWITCH from source code, you need to set permissions on directories and files. If you start FreeSWITCH after installation, it will launch as 'root' by default. It is necessary to change the rights to directories before the initial launch. ** 3r33411.  3r33434. Create a new user and set the rights and change the owners to the files FreeSwitch
 3r33434.
  3r33333. cd /usr /local
groupadd freeswitch
adduser --quiet --system --home /usr /local /freeswitch --gecos "FreeSWITCH open source softswitch" --ingroup freeswitch freeswitch --disabled-password
chown -R freeswitch: freeswitch /usr /local /freeswitch /
chmod -R ug = rwX, o = /usr /local /freeswitch /
chmod -R u = rwx, g = rx /usr /local /freeswitch /bin /*
3r33375. 3r33411.  3r33434. Next, copy the auto start file to systemd, rename it, change the access rights. 3r33411.  3r33434. FreeSWITCH comes with a systemd file, which, when properly configured during startup, controls FreeSWITCH and starts it as a daemon, restarts it if FS does not work. 3r33411.  3r33434.
  3r33333. cp /home/pi/freeswitch/debian/freeswitch-systemd.freeswitch.service /etc/systemd/system/freeswitch.service
chmod + x /etc/systemd/system/freeswitch.service
3r33375. 3r33411.  3r33434. Make a link to the startup file and create a link to the startup file of the console FS:
 3r33434.
  3r33333. ln -s /usr /local /freeswitch /bin /freeswitch /usr /bin /freeswitch
ln -s /usr /local /freeswitch /bin /fs_cli /usr /bin /fs_cli
3r33375. 3r33411.  3r33434. Add freeswitch service to autoload:
 3r33434.
  3r33333. systemctl enable freeswitch
systemctl daemon-reload
systemctl start freeswitch
3r33375. 3r33411.  3r33434. After that, I still didn’t start the FS, gave an error with the * .pid file, I just edited the startup file nano /etc/systemd/system/freeswitch.service 3r33411.  3r33434. comment out the following line in the file: # PIDFile = /run /freeswitch /freeswitch.pid. 3r33411.  3r33434. reboot 3r33411.  3r33434. After the restart, we give the command again, enter through sudo -i, run htop and see the running FreeSWITCH processes. 3r33411.  3r33434. 3r33411.  3r33434. A little about the initial settings:
 3r33434. After installing FreeSWITCH is ready to work, it has 20 subscribers with the numbers 1000-1019 by default. The default password for VoIP subscribers is specified in the file 3r3251. /usr/local/freeswitch/conf/vars.xml [/i] and is equal to 1234. In the directory /usr /local /freeswitch /conf /derectory /default There are 20 xml files, each of which is responsible for the subscriber with the corresponding number. We can set a password for each subscriber. By changing the file name and the data in its contents, we can change the subscriber numbering and capacity. 3r33411.  3r33434. If you need to do this, then after editing the files, you need to start the FreeSwitch console: fs_cli and in the console window give the command reloadxml . With this command, FS rereads the XML files and accepts the changes. 3r33411.  3r33434. ctrl + D or by typing commands /exit or /quit 3r33411.  3r33434. 3r33411.  3r33434. Now let's try to connect IP subscribers. To check the connection, I used on a PC under Windows: MicroSIP and PhonerLite softphones and on a mobile phone running Android CSipSimle, the settings are as follows (account name is a phone number, SIP server is our Raspberry address:
 3r33434. A green icon in the bottom status bar of these programs means that the subscriber is authorized on our VoIP server and is ready for communication. 3r33411.  3r33434.  3r33434. modules.conf.xml
 3r33434. Edit it, I disabled the video codecs and connected the Russian language module as well as mod_xml_rpc. 3r33411.  3r33434.
  3r33333. nano /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml  >  3r33434. You can enable the module by deleting the characters    3r33375. in the line before and after the module name. Disable - by placing these symbols on the contrary, a small example, the first module is enabled, the second is disabled:
 3r33434.
  3r33333. 3r3303. 3r33434. 3r3305. ->
3r33375. 3r33411.  3r33434. After that we edit, if you want to change, simple settings (port, user, password) of the module itself in the file xml_rpc.conf.xml, which is located in the same directory. 3r33411.  3r33434. 3r33333. nano /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml 3r33411.  3r33434. By default: the user is freeswitch, the password works, port 8080.
 3r33434. Reboot or friswitch or the server itself. You can do this in several ways: by rebooting the entire system (reboot) using the service control commands: systemctl stop freeswitch then systemctl start freeswitch or systemctl restart freeswitch . 3r33411.  3r33434. After that typing in the browser http: //IP_RASPBERRY: 8080 /portal /index.html # and logging in as a user freeswitch with a password works, we get into the small administrative panel FreesWITCH. We can see the status, registered users, etc. 3r33411.  3r33434. 3r33333. 3r33411.  3r33434. Let's try a little further to go:
 3r33434. Having typed in the browser request we get the display of the status FS:
 3r33434.
  3r33333. http: //freeswitch: works @ IP_RASPBERRY: 8080 /webapi /sofia? status% 20profile% 20internal    3r33375. 3r33411.  3r33434. 3r33333. 3r33411.  3r33434. The syntax is pretty simple; if a command contains more than one word, then the first and second word are separated by a question mark, and the rest by spaces. 3r33411.  3r33434. Let's try to execute this command from MajorDoMo: from the main page of the “Smart Home” we go to    Control Panel - Console    3r33411.  3r33434. In her recruit the team:
 3r33434.
  3r33333. GetURL ("http: //freeswitch: works @ IP_RASPBERRY: 8080 /webapi /sofia? Status% 20profile% 20internal“)    

 3r33434. In response, we get the status of our VoIP server. 3r33411.  3r33434. 3r33333. 3r33411.  3r33434. Now let's try the following experiment: 3r3r114.  3r33434. The idea is to initiate a call (using the originate function) from the “Smart Home” side to the subscriber with the number 1001 (MicroSip), and then transfer the call to the dialing plan for outgoing calls to the 1002 (PhonerLite) subscriber. The API command looks like this: originate user /??? XML default initiating a call to the console number 100? after raising (auto-lifting) the tube, the number is called and 1002 from the default dial plan. 3r33411.  3r33434. We translate it into a clear view for MajorDoMo and browser:
 3r33434.
  3r33333. GetURL ("http: //freeswitch: [email protected]???.60: 8080 /webapi /originate? User /1001% 201002% 20XML% 20default")    3r33375. 3r33411.  3r33434. Initially, one softphone is ringing, after a few seconds, the second is ringing. 3r33411.  3r33434. 3r33380. 3r33411.  3r33434. 3r33383. As a conclusion, or a small practical implementation.
3r33411.  3r33434. Not so long ago, I had a need to organize communication with a person who could not physically call (dial a number) on a cell phone. At the moment, the need for this has disappeared, but still decided to check the possibility of implementation. Using a VoIP gateway (a more budgetary solution on FXS terminals or a more expensive GSM gateway), the wireless button of the “smart home” can be realized if you wish. 3r33411.  3r33434. The second option: MajorDoMo smart home system has voice assistant Alice. Now you can try to connect the "Smart Home" with the owner and his mobile phone through public networks. 3r33411.  3r33434. Few references
 3r33434. →
The site of the company ClueCon Developer FreeSWITCH 3r33411.  3r33434. → English documentation FreeSWITCH 3r33411.  3r33434. → Website developer MajorDoMo 3r33411.  3r33434. → Part One: A small step-by-step instruction on how to install the Smart Home operating system based on the Raspberry single-board computer, Z-Way RaZberry module, and MajorDoMo software. 3r33411.  3r33434. → Part Two: continued: Z-Way RaZberry module and MajorDoMo software. 3r33411.  3r33434. → Part Three: Continuing to create a wireless “smart home” 3r33421. 3r33434. 3r33434. 3r33418. ! function (e) {function t (t, n) {if (! (n in e)) {for (var r, a = e.document, i = a.scripts, o = i.length; o-- ;) if (-1! == i[o].src.indexOf (t)) {r = i[o]; break} if (! r) {r = a.createElement ("script"), r.type = "text /jаvascript", r.async =! ? r.defer =! ? r.src = t, r.charset = "UTF-8"; var d = function () {var e = a.getElementsByTagName ("script")[0]; e.parentNode.insertBefore (r, e)}; "[object Opera]" == e.opera? a.addEventListener? a.addEventListener ("DOMContentLoaded", d,! 1): e.attachEvent ("onload", d ): d ()}}} t ("//mediator.mail.ru/script/2820404/"""_mediator") () (); 3r33434. 3r33434. 3r33421. 3r33434. 3r33434. 3r33434. 3r33434.

It may be interesting

  • Comments
  • About article
  • Similar news
This publication has no comments.

weber

Author

18-10-2018, 22:23

Publication Date

Development of communication systems / Open source

Category
  • Comments: 0
  • Views: 671
Background: Yandex. Phone
You can buy electronic components in
Sort "Tower of Hanoi"
History and experience of using machine
How to connect Java, Js and graphs with
Just about complicated. Part ? the
Write a comment
Name:*
E-Mail:


Comments
Born and raised in Sarawak, Malaysia. ICE CREAM is now one of the very few DJs who are active in the International scene. He had trained his way into playing at the top clubs all over Borneo since 2010. Check Out: DJ Ice cream
Yesterday, 22:19

noorseo

Thanks for the information your article brings. I see the novelty of your writing, I will share it for everyone to read together. I look forward to reading many articles from you.
<a href="https://sites.google.com/view/escortmumbaishub/"> Mumbai Escorts Service </a> 
<a href="https://vipmumbaiescortshub.blogspot.com/"> Escorts Service in Mumbai </a> 
<a href="https://vipmumbaiescortshub.wordpress.com/"> Independent Mumbai Escorts Service </a> 
<a href="https://vipmumbaiescortshub.weebly.com/"> Independent Mumbai Escorts Girls </a> 
<a href="https://mumbaiescortshub.webgarden.com/"> Call Girls Service in Mumbai </a> 


It's been operating for a long time in this publish for a great concept on it. I truly very experience analyzing your true and beneficial post thanks and you guys doing the sort of a great job keep it up
Premium Call Girls in Mumbai 
Escorts Service in Mumbai 
Escorts Agency in Mumbai 
Mumbai Call Girl Service 
Escorts Agency in Mumbai 


This is a good post. This post gives truly quality information. I’m definitely going to look into it. Really very useful tips are provided here. Thank you so much. Keep up the good works.
Late-night Slim Call Girls in Mumbai 
Slim Call Girls in Mumbai 
New Girl Available in Mumbai Escort 
Collage Escort Girl from Mumbai 
New Girl Available in Mumbai Escort 


Yesterday, 11:12

karishma Agarwal

If you go to file1.php and use an include, then the path is looked at from file1.php to file2.php to include it. But DIR allows us to give file1.php the correct path to file2.php when file1.php is not the file being executed. The interpreter is looking at being inside the project folder. Then if file1 calls to file2 via include, the interpreter will first look for require('file2.php') inside the project folder, NOT the inc geometry dash folder.
Yesterday, 05:25

ferrymalika

The Daily Reports is the reliable and authentic news and blog publisher. Visit The Daily Reports for up-to-date US news, international news and policy analysis. Check out: International Politics News


At Lopez Dario, we strive to serve customers with our online business consultancy services, project management, bookkeeping, & accounting for small businesses. Check Out: Business Consultancy England
21 January 2021 22:30

saifwordpress

nice post, keep up with this interesting work. It really is good to know that this topic is being covered also on this web site so cheers for taking time to discuss this!  https://l23movies.club/
21 January 2021 15:35

Legend SEO

Adv
Website for web developers. New scripts, best ideas, programming tips. How to write a script for you here, we have a lot of information about various programming languages. You are a webmaster or a beginner programmer, it does not matter, useful articles will help to make your favorite business faster.

Login

Registration Forgot password