OGo can integrate with telephony systems in some ways ...
TODO: write much more ...
All (most of?) the phone numbers are already generated by a single dynamic
(template) element "SkyDialNumber". The source is located in
WebUI/Common/OGoUIElements/SkyDialNumber.m.
SkyDialNumber can generate dial links for "CTI" bundles (plugins) in OGo or it
can generate a link to an external URL.
OGo can also generate arbitary dialer links pointing to external scripts. As soon
as the SkyDirectActionDialer_Link default has a non-empty value the
proper links will be generated.
SkyDirectActionDialer_Link SkyDirectActionDialer_Target
number (phone number to be dialed) login (login of OGo account) remoteHost remoteAddress
Defaults write OpenGroupware \ SkyDirectActionDialer_Link \ '"/dial.php?login=$login$&number=$number$"'
TODO: write more ...
SKYRiX 5 also has direct support for the STLI protocol as implemented by
the iLink
TeamCall server.
The TeamCall server itself can then connect to various CSTA capable
telephony hosts.
Note: Currently this is not part of the OGo sources.
CTIRemoteHostToDevice - dictionary - map the IP address transmitted by the browser of a session user to an actual (device) phone number.
STLI is only one CTI plugin, you can also write additional ones for other protocols. If multiple dialers are installed, the one to be used can be selected using the CTIDialer default.
A lot of the relevant source code is in OpenGroupware+CTI.m (WebUI/OpenGroupware.org/). In short you need to write a plugin which declares CTIDialers in the bundle-info.plist.
API to support:
- (BOOL)canDialNumber:(NSString *)_number; - (BOOL)dialNumber:(NSString *)_number fromDevice:(NSString *)_device;