Difference between revisions of "Telecom Plugin"

From LinuxMCE
Jump to: navigation, search
m (spelling corrections)
Line 2: Line 2:
 
[[Category:Pluto_Devices]]
 
[[Category:Pluto_Devices]]
 
== Description ==
 
== Description ==
This one provides standard command interface for the PBX, theoretically it can be plugged with any PBX, practically i'm not sure if it can be done.
+
This one provides standard command interface for the PBX, theoretically it can be plugged with any PBX, not sure if it can be done.
  
 
It has a virtual device id = -107, this way all telecom commands from orbiter are sent to Telecom_Plugin, and then it routes commands to specific devices (like from Orbiter to child Embedded Phone) or to Asterisk.
 
It has a virtual device id = -107, this way all telecom commands from orbiter are sent to Telecom_Plugin, and then it routes commands to specific devices (like from Orbiter to child Embedded Phone) or to Asterisk.
Line 10: Line 10:
 
For example PL_Originatecalled with PK_Device==EmbeddedPhone will send CMD_Phone_Initiate to the device or CMD_PBX_Originate to asterisk. The transfer when the call is already a conference call will be simple joining into the conference room instead of a blind transfer and so on.
 
For example PL_Originatecalled with PK_Device==EmbeddedPhone will send CMD_Phone_Initiate to the device or CMD_PBX_Originate to asterisk. The transfer when the call is already a conference call will be simple joining into the conference room instead of a blind transfer and so on.
  
It also provides several datagrids getting information from internal datastructures in case of ActiveCalls, pluto_main for SpeedDial and asteriskcdr for RecentCalls.
+
It also provides several DataGrids getting information from internal datastructures in case of ActiveCalls, pluto_main for SpeedDial and asteriskcdr for RecentCalls.
  
 
== Communication with Asterisk ==
 
== Communication with Asterisk ==

Revision as of 16:31, 10 December 2006

This page was written by Pluto and imported with their permission when LinuxMCE branched off in February, 2007. In general any information should apply to LinuxMCE. However, this page should be edited to reflect changes to LinuxMCE and remove old references to Pluto.

Description

This one provides standard command interface for the PBX, theoretically it can be plugged with any PBX, not sure if it can be done.

It has a virtual device id = -107, this way all telecom commands from orbiter are sent to Telecom_Plugin, and then it routes commands to specific devices (like from Orbiter to child Embedded Phone) or to Asterisk.

It depends on command the sender and such parameters as device or channel_ids.

For example PL_Originatecalled with PK_Device==EmbeddedPhone will send CMD_Phone_Initiate to the device or CMD_PBX_Originate to asterisk. The transfer when the call is already a conference call will be simple joining into the conference room instead of a blind transfer and so on.

It also provides several DataGrids getting information from internal datastructures in case of ActiveCalls, pluto_main for SpeedDial and asteriskcdr for RecentCalls.

Communication with Asterisk

In most cases the Telecom_Plugin keeps almost the same list of channels as Asterisk. The Asterisk is notifying Telecom_Plugin on all changes and they keep the list in sync.

In most of the commands(and events) exchanged between Asterisk and Telecom_Plugin one of the parameters is CallID or ChannelID string representing channels connected into a call (something like SIP/202-9577 IAX2/teliax-out/6)

Only Asterik is sending that channels were changed, Telecom_Plugin just acknowledges it and changes his state accordingly.