13
September
2013

FileMaker Pro: Cross-Platform Skype Out Part 1

Calling & Chat from Within FileMaker Pro

FileMaker Pro: Cross-Platform Skype Out Part 1

Here at Sounds Essential, we like the database program FileMaker Pro. It's cross-platform (works on PC, Mac and iOS) and extremely versatile. That’s why we use it for our own business to keep track of clients and projects. Every once in a while, though, we come across something new we'd like the database to do. That often requires a little research to figure how best to implement the solution, as was the case with integrating Skype. Here's our solution that works cross-platform on all devices.

We weren't after a full-blown integration; we just wanted to click phone numbers and have Skype dial them for us. If the contact in question also used Skype, we wanted to click that Skype name and initiate a Skype call or chat with them. It didn’t seem like a tough task and would be a huge time saver once done.

Implementing it for the PC turned out to be a breeze. Then we tested it on a Mac and… nothing. Being in a multi-platform environment, this wasn't acceptable. We needed it to work on a PC, a Mac and iOS for FileMaker Go on an iPhone or iPad. We couldn't find any fully documented solutions for what we were trying to achieve, so it took a while to figure it. Credit must go to those that have documented parts of this process before, especially the use of the web viewer trick. Now we'd like to share our solution so others can avoid the headache we endured.

Although more technical than our usual blog posts, a brief summary of the solution is below, and documents are available for download showing the script steps in detail. While there's a little duplication in the scripts that could be condensed, we broke out each platform stage separately to keep it clear and to make for easier adjustments should they be needed in the future.

The key element to both scripts is placing a Web Viewer on your layout. As it is not required to actually display anything, it can be as small as 1px square or hidden behind other layout items, but it must be there. Name the Web Viewer skype_wv. Assign the script to a button that, when clicked, will execute the script. Both scripts have been tested and are working with:

  • Windows 8, FMP 12 and Skype 6.6.60.106
  • Mac OS 10.7.5, FMP 12 and Skype 6.7.0.373
  • iOS 6.1.4, FM Go 12.0.7 and Skype 4.10.332

Dialing a phone number:
This is the simpler of the two implementations. Of course you must have a Skype account and valid subscription or credit in order to be able to successfully place the call. The key aspect is that the phone number must include the country code, area code and phone number, without any spaces or punctuation. For example a New York number would be 12125559999. The script is where all the magic happens and essentially follows these steps:

  • Test for the platform the user is on
  • Put the number to be dialed into a variable
  • Test the variable to ensure it is not empty and exit the script if so
  • Execute a different step to dial the number depending on which platform the user is on

There are a few different elements to get right depending on which platform the script is being executed on:

  • Windows: uses the Set Web Viewer script step with the URL being called starting with callto://+ (Note that Windows can also use Open URL and callto://+)
  • Mac: uses the Set Web Viewer script step with the URL being called starting with skype:+
  • iOS: uses the Open URL script step with the URL being called starting with skype:+

Initiating a Skype Chat or Call:
This script is similar to the above but has additional steps to ask the user if they wish to start a chat or a Skype call:

  • Test for the platform the user is on
  • Test the Skype name to ensure it is not empty and exit the script if so
  • Execute a different step depending on which platform the user is on
  • Ask the user if they wish to initiate a chat or call, also giving them the option to cancel the request
  • The answer to the above then executes the relevant script step to initiate the call or pop up the chat window for that contact

This is slightly simpler in that all platforms use the same URL call, with the call or chat variable added on, but the method of calling the URL differs on iOS:

  • Windows & Mac: use the Set Web Viewer script step with the URL being called starting with skype: (Note that Windows can also use Open URL and skype:)
  • iOS: uses the Open URL script step with the URL being called starting with skype:

We hope this and the documents available for download help you integrate some Skype functionality into your database. If you have any tips to further improve the implementation, please leave a comment below or contact us. And if you need help with this or any other FileMaker issue, don't hesitate to get in touch and we'll be happy to give you a quote.

Download PDFs of the scripts below:
Dialing a phone number
Initiating a Skype Chat or Call

Update 2013-09-16: HomeBase Software have a similar approach to initiating Skype phone calls with plenty of screenshots and a demo file to boot. Check it out here.

Update 2013-09-20: We've improved upon this version of the phone dialing script to include the capability to send an SMS and use an iPhone's built in ability to send a SMS and make phone calls. And we've posted a demo file that includes the above and the new functionality. Check it out here.

Categories: The FMP Files

Leave a comment

You are commenting as guest. Optional login below.

Client Testimonials

  • Sounds Essential is a trusted partner on several demanding and highly complex development projects. Their technical skills, creativity, and most importantly, their grasp of our business needs has helped our company deliver sophisticated solutions to our (very happy) clients. Even when projects reach the "intense" stage, we really enjoy working with Sounds Essential.

    Pam Henry, Managing Partner
    Digital Spark LLC
  • Sounds Essential worked with our staff last year to create the first digital plant database in our organization’s history. This milestone not only benefits the day to day work flow of our organization, it creates the opportunity for us to share our data with others worldwide. Due to our niche high elevation ecosystems, we can share valuable insight about native plant communities and how they are adapting to climate change. Without the help from SE and funding from Stanley Smith Horticultural Trust this project would still be in conception. Working with SE made the development and implementation a pleasure for us gardeners.

    Kelly Holdbrooks, Exec. Director
    Southern Highlands Reserve
  • Sounds Essential is the best! Our company website and database are essential parts of our business. The website and database give us the professional look of who we are while also making our work flow so much easier! We highly recommend Sounds Essential.

    Charles Dwan, Owner
    Chefs Trading
  • Sounds Essential's team is the perfect combination of creativity, aesthetic vision, and technical expertise which enables them to provide innovative products. They are always responsive with questions, issues, and technical support and as the technology changes they adapt accordingly. We highly recommend Sounds Essential and they are indeed ‘essential’ to our business model.

    Wesley Wofford, Owner
    Wofford Sculpture Studio
  • Sounds Essential was a pleasure to work with from start to finish. With their guidance, we were able to update our website quickly and present a more polished and modern interface for our church. The documentation provided was clear and easy to follow, and they have been quick to respond to any questions.

    Kirsten Huscusson, Parish Administrator
    Church of the Incarnation
  • Between their exceptional level of service and versatility of skill, Sounds Essential is my first stop for anything from IT to creative... and they're my favorite partner, hands down.

    Leah G. Fallon, Owner
    Eleven Eleven Creative

Get the Latest

We occasionally send out news of general interest in our fields of specialty. If you'd like to stay up to date, please sign up according to your interests below.
Please wait