Feed aggregator

Primary tabs

Why Business “Collaboration” Needs Federated UC

In a recent post, I pointed out that the official definition of “communication” means interacting and exchanging information between LIVE people. However, I believe that the term “collaboration” deserves that definition instead of “communications.” Why? Because people are now interacting with online automated business processes, both from mobile devices and desktops, and thus business communications are no longer just about live person-to-person contacts (phone calls, messages). We saw this shift with the way “UC” became “UC&C,” so now we have to understand what the difference is between “communications” and “collaboration.” I suggest that the difference really is that “collaboration” is interaction only between living people, because who “collaborates” with an automated process? They interact, not collaborate, but, either way, they both need the flexibility of different modes of interaction, i.e., voice, text, real-time, asynchronous, etc.). When it comes to “collaboration” with live people, there is a more important reason to exploit the flexibility of UC, and that is the need for real-time conversational contacts when asynchronous messaging is not adequate. The problem, though, is that people are just not always “available” in real-time, unlike automated online applications are (almost) always available. So, time and accessibility become obstacles to any real-time collaboration. That’s where “federated presence” service comes into play, where step one in initiating a real-time contact attempt is to know the status of the person you want to chat with or talk to. Presence status provides that kind of information to a contact initiator, providing they have an established relationship with the recipient. For end users within an organization that has an internal Instant Messaging system or service, that is not a big problem. However, in dealing with IM contacts with people outside of the organization, there has to be federation between the IM technologies used within each organization. We don’t yet have the equivalent of the PSTN that supports direct telephone calls from anyone to anyone (but doesn’t let you know anything about the recipient’s availability ahead of making the call). Clearly, federated presence will prove most useful, in conjunction with the flexibility of UC, when users need to talk with specific people who are not in he same location or in the same organization. IM has become the practical real-time starting point for real-time voice or video conversations, because it is less disruptive and can be more easily multi-tasked than voice. With UC flexibility, an IM contact can also be easily escalated to a voice/video connection, or to other users, as desired by the communicating parties. When contact recipients are not available to talk (already on the phone, can’t talk now for a variety of reasons), the contact initiator has other choices such as contacting someone else, just send a message, etc. The need for increased communications flexibility that UC and IM federated presence support stems from the increased role of mobile devices by all types of end users. Mobile accessibility, coupled with flexible communication interfaces, has increased the possibilities for making person-to-person contacts, which is key to business “collaboration.” For this reason, federated presence information is a critical need for end users, especially when mobile and when “collaborating” with people outside of an organization.

WebRTC to power Skype as a web browser application

The Skype and Internet Explorer teams at Microsoft are working on developing the ORTC API for WebRTC. ORTC API will be a key enabler to make Real-Time Communications on the Web. In this connection, Skype has already released beta version of Skype for Web last week. The news at Skype.com says that, "Skype for Web makes it quicker and easier than ever before to connect with friends, family and colleagues around the world, for free – directly from Skype.com". Skype for Web will allows users to send and receive messages and make voice and video calls directly from any Web browser without downloading and installing Skype software. On the other hand, WebRTC is an open project that allows Internet users to communicate in real time via voice and video by using any browser compatible with WebRTC. It enables Web application developers to include real-time video calling and data sharing capabilities. This capability can range from multi-player games to video conferencing tools. Over 80 participants from different continent and from different interest groups, are actively collaborating with the W3C. Microsoft is also an active participant and looking to contribute and influence standards of ORTC API for WebRTC. Jonathan Watson, a senior product marketing manager at Skype said in a blog last week that It's perfect if you are sitting at a computer connected to internet and you doesn't already have Skype downloaded or may be you are travelling and using an internet café or hotel computer whatever the reason may be. He said now with Skype for Web on Skype.com, you'll need to simply sign-in and you'll be able to connect and start instant messaging directly from your browser. At the moment, Skype for Web is in beta and for the time being this version will require a browser plug-in before it will work. However, Microsoft has already started working to integrate it with the Web real-time communications (WebRTC) standard. Then, perhaps in near future, the next major release of Skype might not even require any browser plug-in to connect and making voice and video calls. Watson further said, "With WebRTC, there won't be any downloads or installs – you can just get straight to your conversation".

Microsoft, on the way of open source

Microsoft, at one time biggest opponents of open source, is now not just supporting it but in fact, is jumping directly into it. Most of the people from open source community still remember Bill Gates remarks in an interview comparing open source developers with communist. Even the Steve Ballmer, the successor of Bill Gate at Microsoft, has similar thoughts during his whole tenure as CEO. In 2011, Steve Ballmer said that "Linux is a cancer". But Satya Nadella, the current CEO, has taken a 180 degree turn and not just says that "Microsoft loves Linux" but now Microsoft is keenly working to bring its own products as open source. Last week, Microsoft has announced that it will provide now open source the very foundation of .NET including ASP.NET, the .NET compiler, the .NET Core Runtime, Framework and Libraries, enabling developers to build with .NET across Windows, Mac or Linux. This will not only allow millions of developers to build websites and other large online applications in free code but it also allow them to run on computer servers that use its own Windows operating system or any other machine equipped with Linux or Apple’s Mac OS. However, this doesn't just happen suddenly. This change has been coming for years despite the disliking for Microsoft CEO's. They foresee that open source is a big threat to Microsoft and Windows. They know that Microsoft should not just oppose open source and Linux. They need to accept this reality and it is because of that realization in 2008 Microsoft platform technology strategy director said that Microsoft is focused on helping customers and partners be successful in today's heterogeneous technology world through open source. In 2011, Microsoft also saw that Cloud technology was going to be built around Linux. Today, developers who use .NET platform have to use a server environment that does not have what Linux have. They are stuck with a generation-behind technology. Microsoft Corporate Vice President at Developer Division, Mr. S. Somasegar, says that “With these releases, we are broadly opening up access to our industry-leading platform and tools to every developer building any application in today’s mobile-first, cloud-first world. No matter if you are a startup, a student, a hobbyist, an open source developer or a commercial developer, and no matter the platform you are targeting or the app you are creating, Visual Studio, Visual Studio Online, .NET and Azure will help you be successful.”

Open source IVR Designer

Interactive Voice Response or simple IVR refers to the interaction of an automated voice communication system with a caller through telephone or mobile DTMF keys. There are plenty of graphical and visual IVR designers commercially available. Some are desktop applications while most recently, web based IVR designers have been introduced by many communication service and solution providers. One very notable development in the open source software is open source IVR designer that is bundled with ICTDialer. It is an easy to use web-based IVR designer that provides interactive, graphical, drag and drop feature to design your custom IVR in minutes. It is built with open source technologies like JQuery UI and RaphaelJS that have already made a way through to developing interactive, lightweight graphical applications. RaphaelJS is a SVG based and lightweight JavaScript framework. It lets you draw vector graphics in your browser. In telecommunication industry, there has always been great demand of such light weight powerful tools that can provide clients with a desktop like response. ICTDialer is an open source outbound autodialer software. With IVR designer module in ICTDialer, users can dynamically create their own call flows based on their own requirements. Does this IVR designer handle Inbound calls? At the moment, it only supports outbound calls. However, with few modifications, it can be used for inbound call handling also. Now its up to the open source community to explore it and to use it for that purpose. IVR Designer Tools contains applications such as Call answer, Play audio, Play TTS, Get Digit, Options menu, Call Record, Call Transfer and Hangup.

OpenSIPS - Configuration and Integration with Asterisk

OpenSIPS is an open source software that suits well for medium and large businesses to handle all the above mentioned scenarios. It supports common database access like mysql and postgres but still very well supports the carrier grade deployments. OpenSIPS is multi-purpose signaling SIP server. It can act as SIP Router, SIP Switch, SIP Registrar, Application Server, Redirect Server, Load Balancer, Dispatcher, Back-to-Back User Agent, Session Border Controller, SIP Front-End, NAT traversal Server, IP Gateway (SMS, XMPP) among others. Installing and Configuring OpenSIPS in Fedora 1. Install OpenSIPS 1. Download OpenSIPS source file from http://opensips.org 2. Extract it and place it in /usr/src 3. Then compile the source file with the option of dbmodule for the support of database handling in opensips 2. Change the configurations file to install opensips database 1. First of all go to the /usr/local/etc/opensips 2. Then open opensipsctlr and find the sip domain option and change it as per your need , find db engine option and uncomment it to tell opensips to use database engine. 3. When these changes are done , save the configuration file and go to the terminal and run the command opensipsdbctl create and answered the qusetions by pressing y. 4. Go to the opensips folder and open the opensips.cfg file in gedit. Then remove the comments to the module db and also uncomment the parameters related to the db module. 5. Start the opensips by run the command opensipsctl start 3. Add Users to check Opensips working 1. create the aliases by using this command opensipsctl add "alias name" password 2. After that register users to your softphone and made the call between users. 4. Asterisk Installation 1. Download Asterisk from asterisk.org. 2. Compile the asterisk in src directory. 3. Run the asterisk. 5. ODBC Configuration 1. Install ODBC Support. 2. change the Odbc.ini file to have connect to asterisk. 3. test the changes by running this command on terminal isql odbc parameter name 4. Go to the Asterisk folder. 5. Change the res_odbc configuration file and extconfig configutration files as per your needs to connect opensips and asterisk. 6. To check the configuration in asterisk Cli run this command show odbc 7. If odbc not show then install the asterisk-odbc from terminal. 6. Opensips.cfg for asterisk Integration 1. To Connect opensips to asterisk when user call from one destination to anothe destination. We should change the code where opensips route the call after authentication. 2. change the code in route with the asterisk ip and port where opensips transfer the calls to asterisk 3. rewritehostport("asterisk ip:asterisk port") 7. Test the integration 1. add two aliases on the same domain name. 2. register one alias in zoiper and remain unregistered the second alias and made the call from one alias to another alias which is unregistered . 3. If the call made successfully then you are done with your asterisk and opensips configuration. 8. Call forward by using AVPOPS module 1. To call forwarding from avp we need first to load the avpops module. 2. After that define the parameters of avops module in parameters define avp table as avp prefrences where you can pick the alternate alias with the attribute. 3. For call blind you need to set the alias in avp prefrences module by using this commands on terminal ./opensipsctl avp add -T usr_preferences client name callfwd 0 clientname 4. after that use the function and forward it to route. 5. For busy and unanswered call you need to need to call the avp attribute for busy and unanswered call and call the function rewritehostport("asterisk ip:asterisk port") to forward the call to asterisk and play the busy and unanswered call messages. 9. Nat Traversing 1. First Install the rtpproxy server to support the sdp in nat traversing. 2. To install rtpproxy download the source code and compile it. 3. After that set the rtpproxy by using this command in terminal ./rtpproxy -l yourip -s udp:yourip:7890 -F 4. After that load the nathelper module and set the appropriate parameters according to you nedd. 5. After that go to the opensips.cfg file and change the routing logic. First check that if the request is register and put the code rtpproxy_answer(); if (nat_uac_test("18")) { if(method=="REGISTER") { fix_nated_register(); } else { fix_nated_contact(); } setflag(5); } After that go to the route 1 context and put the code if (subst_uri('/(sip:.*);nat=yes/\1/')) { setbflag(6); }; if (isflagset(5)||isbflagset(6)) { route(6); }; if (isflagset(5)) { search_append('Contact:.*sip:[^>[:cntrl:]]*', ';nat=yes'); } After that handled the onreply route by put the code rtpproxy_answer(); append_hf("P-hint: onreply_route|rtpproxy_answer \r\n"); } if (isbflagset(6)) { search_append('contact:.*sip:[^>[:cntrl:]]*',';nat=yes'); append_hf("P-hint: Onreply-route - fixcontact \r\n"); fix_nated_contact(); } After that in route 6 put the following code. { if(is_method("BYE|CANCEL")) { unforce_rtp_proxy(); } else if (is_method("INVITE")) { rtpproxy_answer(); t_on_failure("1"); }; } Got to the failure route and put the following code. if (isflagset(5)||isbflagset(6)) { unforce_rtp_proxy(); }

OpenStack - An open source cloud OS getting popular

OpenStack, an open source cloud operating system, is getting popular day by day. OpenStack controls large pools of compute, storage, and networking resources throughout a data center. It provides a very simple and easy to use web interface for administrator to manage resources, manage users and assign resources to users. It's popularity can be measured through the famous companies who are using it such as BMW, GoDaddy, Wells-Fargo, Time-Warner Cable, PayPal and many more. How to use OpenStack? OpenStack can be used by administrators on hypervisors in a virtual machine environment. Most popular hypervisors with OpenStack are KVM and XenServer. In addition to different hypervisors, OpenStack also supports ARM and alternative hardware architectures. OpenStack can be used as a service providers offering an IaaS platform or services. Other possible use is by IT department acting as cloud service providers for business units and project teams. Big data processing with tools like Hadoop can be done using OpenStack as well as scaling compute up and down to meet demand for web resources and applications. Feature Benefits Some of the benefits of OpenStack are given below: Manage virtualized commodity server resources Manage Local Area Networks (LAN) API with rate limiting and authentication Distributed and asynchronous architecture Virtual Machine (VM) image management Live VM management Floating IP addresses Security Groups Role Based Access Control (RBAC) Projects & Quotas VNC Proxy through web browser Store and Manage files programmatically via API Least privileged access design Dashboard with fully integrated support for self-service provisioning VM Image Caching on compute nodes

Google has released Android 5.0 Lollipop

Google has released Android 5.0 Lollipop last week and made its source code available to the developers and distributors. It's official launch will be tomorrow on November 12, 2014 for select devices that run distributions of Android and that are serviced by Google, including Nexus and Google Play edition devices. The major focus of Android Lollipop is the user interface and design experience across multiple screens. However, It will require developers to deliver that promise. Google also dropped Android emulators and a series of tools for developers to focus more on the actual devices rather than emulators. Material Design - A responsive design language One of the most significant changes in the Lollipop release is a redesigned user interface built in a responsive design language referred to as material design. The notable differences in the design are tactile surface, fluid motion and bold graphics. An important aspect of the mobile when its in your hand is how it feels in your hand i.e. the sense of touch. Touch is one of the main elements of material design which is inspired by real life materials like paper and ink. An other important change in the design is good graphic design, using strong colors and bold typography to create clear hierarchy and focus attention on content. Motion brings the material and the graphic together, explaining how the system works, and adding moments of delight that move you through the system, easily and fluidly. News about Device Manufacturers Here's where and when you can probably begin to expect to see Lollipop on your device: HTC has said that they'll release it within three months of Google's release. That means around mid of February 2015. Motorola has announced about the devices that will get Lollipop such as Moto X and Moto G, Moto E, Droid Ultra, Droid Maxx, and Droid Mini but no information about when it will be available. LG also has not announced any plans yet. Sony's plans are to start the upgrade at beginning of 2015 for the core Xperia series and then bring it to the rest of the family. Samsung has remained silent, but as has been in the past, they will announce sooner about the devices (such as Galaxy series) that will get Lollipop hopefully before the new year.

Computer Control Is No Joking Matter Any More!

Just saw a cute post by my colleague, Jon Arnold, about Woody Allen’s humorous perspective of automated devices that behaved like people. You can see it at: http://www.tmcnet.com/voip/columns/articles/393114-boss-just-heard-from-tablet-youre-fired.htm?subscribed=true It reminded me of the first computer joke I had ever heard when I was being trained by the Rand Corporation at MIT for my first computer job on the SAGE Air Defense System. The story goes like this! The world’s greatest computer scientists had built a new computer that had infinite storage and could do everything a human could do with that information and could also control its own functionally, like a person. The scientists loaded all the information that existed in the world on to the computer and decided to power it up and test it by asking it a question and seeing how the new computer coudl provide an answer. So, the first question they typed (they didn’t have speech recognition yet!) into the computer was, “Is there a God?” After a few seconds of computing, the response on the computer screen popped up. It said, “Now there is!” This response scared the scientists, because they feared they had a created an uncontrollable new force. So, they quickly decided they better shut the computer off before it caused any problems to them. However, before they could shut the power switch off, a bolt of lighting came from the computer and fused the electrical connections shut. So, the scientists could no longer turn it off! Ha ha! This anecdotal story simply suggests that automating any real-world function can end up in unexpected and uncontrollable actions generated by a computer software error. In today’s world of malware and hacking, it is even worse, because it is no longer about “accidental” errors, but deliberate acts by evildoers taking control of software that can affect day-to-day activities. Not really funny any more!

ICTFax Version 3.0 , A Fax over IP Solution , released now

We are pleased to announce that ICTFAX Version 3.0 is released. New release completely removes Plivo Framework from ICTFAX. Now ICTFAX no longer depends on Plivo for communication with FreeSWITCH. Instead, ICTCore has been introduced as a new lightweight communication library. ICTFAX uses ICTCore to communicate with FreeSWITCH. Apart from this major change, other features that are included in this release includes GUI based trunk provider configuration, multiple trunks allowed, documentation converted to markdown syntax, attachement file name with spaces issue has been fixed, error on retry issue fixed along with other minor bugs. ICTCore Communication Library ============================= ICTFAX now uses ICTCore for communication with FreeSWITCH. ICTCore is specifically built to provide reliable communication between ICTFAX and FreeSWITCH. It is developed using the object-oriented principles. Previously, Plivo framework was unable to cope with communication issues and unable to provide a reliable connection between ICTFAX and FreeSWITCH. Main reason to abandon Plivo framework from ICTFAX was that Plivo was not specifically built for faxing and we were using it with adhoc modification to work it for ICTFAX. That solution worked initially but later, due to no real intention from the open source community of Plivo to include fax support in it, we realized that there sould be a communication library with built-in fax support along with voice communication for FreeSWITCH. Hence, ICTCore is the solution with voice and fax communication support for FreeSWITCH. It provides easy to use API for developers to build complex fax and voice applications. Additional Features =================== Other ICTFAX features that includes in this release is GUI based trunk provider configuration. In older versions, trunk configuration was done in two steps. First, an xml file was created in FreeSWTICH profiles directory manually. Then in second step, a new Trunk provider entry was created for this xml file in the GUI. Now, only one step is enough to configure trunk. No xml file is created. Just enter the trunk settings in GUI and xml file is created automatically. Documentation has also been converted to markdown syntax that is easy to manage. Attachement file name with spaces issue has also been fixed. An old issue with retry is also fixed along with other minor bugs in new release. ICTFAX: http://www.ictfax.org Download Link (Github): https://github.com/ictinnovations/ictfax Download Link (Sourceforge): https://sourceforge.net/projects/ictfax/

Latest Blog and News Section