<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.linuxmce.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Johnnylinux</id>
	<title>LinuxMCE - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.linuxmce.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Johnnylinux"/>
	<link rel="alternate" type="text/html" href="http://wiki.linuxmce.org/index.php/Special:Contributions/Johnnylinux"/>
	<updated>2026-07-22T02:36:59Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>http://wiki.linuxmce.org/index.php?title=How_LinuxMCE_telecom_works&amp;diff=7321</id>
		<title>How LinuxMCE telecom works</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxmce.org/index.php?title=How_LinuxMCE_telecom_works&amp;diff=7321"/>
		<updated>2007-11-23T19:15:10Z</updated>

		<summary type="html">&lt;p&gt;Johnnylinux: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; {| align=&amp;quot;right&amp;quot;&lt;br /&gt;
  | __TOC__&lt;br /&gt;
  |}&lt;br /&gt;
[[Category:Telecom]]&lt;br /&gt;
[[Category:Programmer&#039;s Guide]]&lt;br /&gt;
The LinuxMCE telecom is formed from several layers:&lt;br /&gt;
* Telecom_Plugin&lt;br /&gt;
* Asterisk&lt;br /&gt;
* Asterisk Management Portal http://amp.coalescentsystems.ca/ (now Free PBX)&lt;br /&gt;
* asterisk http://www.asterisk.org/&lt;br /&gt;
And also several additional things like hard phones and scripts to configure them ([[Dhcpd-plugin]]), orbiter&#039;s embedded phone (SimplePhone) and also some scripts which submit AMP pages to create asterisk configurations for phones and phone lines.&lt;br /&gt;
&lt;br /&gt;
== [[Telecom_Plugin]] (package pluto-std-plugins) ==&lt;br /&gt;
This one is used to forward all kind of requests to Asterisk or other telecom related devices and to provide data grids about telecom stuff. It usually knows a lot of stuff about active calls and such stuff. &lt;br /&gt;
&lt;br /&gt;
== Asterisk (package [[LinuxMCE-asterisk]]) ==&lt;br /&gt;
There is a high degree of redundancy between Asterisk and Telecom_Plugin. One works with extensions and more low level info, the other with devices and provides a wrapper available from Designer by virtual device id (-107).&lt;br /&gt;
&lt;br /&gt;
Asterisk is the &amp;quot;glue&amp;quot; between LinuxMCE and real asterisk server. The idea is to use AMI to communicate with asterisk http://www.voip-info.org/wiki/view/Asterisk+manager+API.&lt;br /&gt;
It creates a socket on which they communicate. Commands to asterisk are queued (and executed one by one) and there is also a listener which notifies Telecom_Plugin about certain events like Ring, Hangup and so on.&lt;br /&gt;
&lt;br /&gt;
== asterisk (package [[asterisk-LinuxMCE]] ) ==&lt;br /&gt;
This is the real thing. This is the one which actually does everything.&lt;br /&gt;
It&#039;s packaged as a &#039;kitchen sink&#039; to include&lt;br /&gt;
* asterisk (voip server)&lt;br /&gt;
* zaptel (digium cards support)&lt;br /&gt;
* asterisk-addons(mysql support)&lt;br /&gt;
* some patches (bristuff and floriz asked by some users, theoretically to improve performance)&lt;br /&gt;
* app_conference (used instead of meetme because we don&#039;t have Digium cards)&lt;br /&gt;
* chan_sccp(used priimary for Cisco 7970 but other Cisco phones should work)&lt;br /&gt;
* chan_capi(I never used but it exists to support some isdn cards)&lt;br /&gt;
* spandsp (theoretically for faxes, but also never tried)&lt;br /&gt;
* AMP&lt;br /&gt;
&lt;br /&gt;
Actually user should never use AMP, we practically wrapped all needed functions in perl scripts which submits AMP pages or directly generates asterisk&#039;s configs. The thing is starting to get pretty messed up in area on AMP but at least it works.&lt;br /&gt;
&lt;br /&gt;
== [[LinuxMCE_telecom_features|Feature list]] ==&lt;br /&gt;
This is a short list of supported features. As far as we tested most of them really work.&lt;br /&gt;
* hard phones plug&amp;amp;play&lt;br /&gt;
* easy phone line creation&lt;br /&gt;
* make and receive calls&lt;br /&gt;
* user call routing&lt;br /&gt;
* phone line call routing&lt;br /&gt;
* priority callers and callers for me&lt;br /&gt;
* blind transfer of a call&lt;br /&gt;
* conference calls&lt;br /&gt;
* join existing call&lt;br /&gt;
* phone book, speed dial&lt;br /&gt;
* voice mail&lt;br /&gt;
* alarm and speak in the house&lt;br /&gt;
All these features are available by tight interaction between asterisk, Asterisk, Telecom_Plugin and phone devices.&lt;br /&gt;
&lt;br /&gt;
Some of the features are simply available by proper edit of configuration files with AMP or simple scripts (phone p&amp;amp;p, phone lines, simple phone calls, voice mail)&lt;br /&gt;
&lt;br /&gt;
Some other are more related to LinuxMCE, but still are just smart confirmation files (user call routing, phone line call routing, priority callers, speak in the house)&lt;br /&gt;
&lt;br /&gt;
And the rest are much more complex and highly dependent on Telecom_Plugin-&amp;gt;Asterisk-&amp;gt;asterisk communication (transfers, conference, joining the call). Usually if an [[Orbiter]] is used to do an action than it&#039;s a complex operation.&lt;br /&gt;
&lt;br /&gt;
== Message exchange ==&lt;br /&gt;
Following diagram shows connections between various components of LinuxMCE&#039;s telecom.&lt;br /&gt;
[[Image:Asterisk_diagram.png|500px]]&lt;/div&gt;</summary>
		<author><name>Johnnylinux</name></author>
	</entry>
</feed>