Marco Da Rios Marco Da Rios - 15 July, 2020 - 6 ’ read

Lock/unlock corporate phones automatically with the brand-new Imagicle API.

[et_pb_section fb_built=”1″ _builder_version=”3.22″ background_color=”#ffffff” custom_padding=”63px|0px|0px|0px”][et_pb_row _builder_version=”3.25″ background_size=”initial” background_position=”top_left” background_repeat=”repeat” custom_margin=”0px|||” custom_padding=”0px||0px|”][et_pb_column type=”4_4″ _builder_version=”3.25″ background_color=”#ffffff” custom_padding=”|||” custom_padding_tablet=”” custom_padding_phone=”” custom_padding_last_edited=”on|phone” custom_padding__hover=”|||”][et_pb_text admin_label=”intro” _builder_version=”4.9.10″]

Simplify your life: Applications Integration.

There are tons of different tasks in a business’s everyday life that can be streamlined by using a computer program. However, as you know, there is no such thing as a single piece of software that can help all of them at once.
You probably need to use a directory system to store your contacts, an e-mail service, a calendar app, and maybe even an entire suite for your Unified Communications.
In order to offer the best service, these applications shouldn’t work isolated. They should instead be integrated into a single process called Applications Integration.
The API implementation responds to our Imagicle integration concept: a unified experience throughout your Cisco calling platforms, on the programs you use every day, such as Cisco Jabber and Finesse, and on all devices.
[/et_pb_text][et_pb_image src=”https://www.imagicle.com/wp-content/uploads/blog/2020/07/Imagicle-experience.png” align_tablet=”center” align_phone=”” align_last_edited=”on|desktop” _builder_version=”3.23″][/et_pb_image][et_pb_text admin_label=”reports” _builder_version=”4.9.10″]
How? Well, the most common way is implementing an Application Programming Interface (API).
 
In this article, we will see what an API is and how it should be designed, and will take a look at some examples of what you can accomplish by using the available ApplicationSuite APIs.
And to top it all off – after the first article of this series on the introduction of calendars in the Imagicle Attendant Console – we will tell you about another fantastic innovation of the Summer Release 2020: the brand new Phone Lock API to lock and unlock your company phones.
[/et_pb_text][et_pb_divider show_divider=”off” _builder_version=”3.12″ height=”50px”][/et_pb_divider][et_pb_text admin_label=”speedy” _builder_version=”4.9.10″]

What is an API?

To give an idea of the true value of this innovation, let’s start from the foundation. What is an API? And what is it for?
An API is a set of commands, functions, protocols, and objects that programmers can use to interact with an external system. They are exposed by an application and used by others to perform actions or retrieve information.
For example, say you want to receive a notification on your instant messaging application whenever a sale is made. Or maybe you want to embed a chart showing real-time updates on the stock market into your presentation.
This can be easily done if the apps involved use each other’s APIs.
[/et_pb_text][et_pb_image src=”https://www.imagicle.com/wp-content/uploads/blog/2020/07/image_2020_07_14T14_10_00_897Z.png” align_tablet=”center” align_phone=”” align_last_edited=”on|desktop” _builder_version=”3.23″][/et_pb_image][et_pb_text admin_label=”speedy” _builder_version=”4.9.10″]
If your application offers an API, many of the tedious tasks users have to do manually can be automated in response to actions he/she made on other tools or even scheduled and executed periodically without user interaction.
 
If you’re planning to add an API to your application, though, there is something you should know before starting.
[/et_pb_text][et_pb_divider show_divider=”off” _builder_version=”3.12″ height=”50px”][/et_pb_divider][et_pb_text admin_label=”Not all APIs are made equal.” _builder_version=”4.9.10″]

Not all APIs are made equal.

There’s a rule in computer science called the Principle of least astonishment, approximately stating this:
A component of a system should behave in a way that most users will expect it to behave; the behavior should not astonish or surprise users.
Wikipedia
 
This rule also applies to the design of an API, and to fulfill this expectation, good APIs must have a few essential characteristics:
  • Simple
    Even if the operations your application performs are complex, its API should provide a layer of abstraction over those operations, easy to understand and use. It should reveal its intent, not how it internally works. It should speak the application domain’s language, not the technical gibberish its internal components are made of.
  • Stable
    APIs should be consistent in their results and, when they change, they should avoid forcing any previous user to adapt to it. You can ensure this either by maintaining backward-compatibility or by supporting multiple versions when a breaking change is unavoidable.
  • Secure
    As any part of a good software, an API shouldn’t allow any malicious use. It should also restrict the information and actions available to a user only to the portion he/she has the right and interest to see or perform.
  • Standard
    If you develop a public API for your product, you usually want it to be as easy to use as possible. To achieve this goal, it should adhere to a broadly understood standard (e.g. REST, SOAP) that most of the potential clients are already familiar with.
  • Well documented
    When someone needs to interact with an API, he/she should be able to find all the information he needs in its documentation. Besides the simple description of the methods’ signatures, the documentation should contain all the constraints and corner cases, mention how possible errors are handled and provide some usage examples.
[/et_pb_text][et_pb_divider show_divider=”off” _builder_version=”3.12″ height=”50px”][/et_pb_divider][et_pb_text admin_label=”phone lock” _builder_version=”4.9.10″]

APIs in the Imagicle ApplicationSuite.

It is with these principles in mind that we have developed the APIs for our Imagicle apps. The Imagicle ApplicationSuite, in fact, offers a good share of interoperability, with a lot of public API functions an external system can use. 

Here are a few examples:

  • Users’ management: you can list or search users details, start synchronization with an Active Directory or LDAP system, or use the Pictures Repository feature;
  • Queue Manager Enterprise: you can list, create, edit and delete queues, and manage their agents and supervisors;
  • IVR module for QME: you can list, create, edit, delete, clone IVR services, and assign managers to them;
  • Call Recording: you can list and download your past recordings and start, stop, pause or resume the recording of your active calls;
  • Hotel Pack: you can set up your properties and their Property Management Systems (PMS)
  • IP Fax Server: you can send a fax, or list and download sent and received faxes.

​​You can read a successful example of the usage of our APIs in this post about how the Imagicle and Kurmi software collaborated to provide a comprehensive solution for the provisioning and management of the UC environment of Service Providers and large enterprises.

… and starting from Summer 2020, our customers will be able to take advantage of the new API that will make another of the incredible Imagicle apps available to everyone! 

[/et_pb_text][et_pb_divider show_divider=”off” _builder_version=”3.12″ height=”50px”][/et_pb_divider][et_pb_text admin_label=”phone lock” _builder_version=”4.9.10″]

The new Phone Lock API.

Imagicle Phone Lock is the ultimate solution to prevent the unauthorized use of unattended company phones. It is an invaluable tool for saving money by avoiding unauthorized calls and to protect users’ privacy by deleting their call history when they leave their station.
You can lock your phone directly using the embedded phone service, with your Jabber client, or via the dedicated web interface. It is also possible to associate the locking/unlocking of the phones to the PC session: when the session is closed, the phone is locked; when it reopens, it unlocks.
Starting from the upcoming Summer 2020 release, the ApplicationSuite will be provided with a new API for Phone Lock.
You will be able to use it to lock or unlock all users’ phones at once, or just some of them.
For example, if you want to be sure that no one makes calls outside office hours, you can schedule a task that will use this API to lock all phones in the evening, and another task to unlock them in the morning.
Easy peasy, right?
[/et_pb_text][et_pb_divider show_divider=”off” _builder_version=”3.12″ height=”50px”][/et_pb_divider][et_pb_text admin_label=”conclusions” _builder_version=”4.9.10″ hover_enabled=”0″ sticky_enabled=”0″]

Conclusions.

If you’re developing an application in this era of interconnection, sooner or later you will face the need to interact with another software through its API, or even to expose your own. When you do, keep in mind that your APIs’ users shouldn’t be surprised by what they see. Observing the simple parameters listed above will prevent this from happening.
 
As far as we are concerned, the offer is continuously growing, according to our philosophy of making apps more easily available and manageable for everyone.
 
You can take advantage of the broad API offer available in the ApplicationSuite to automate some of the tasks you used to perform manually, like locking all your phones at night, thanks to the newly available Phone Lock API.
 
 

Thanks for reading!

If you are interested in learning more about Imagicle APIs and how they can turn useful to your business, visit our knowledge base to see if there is an API that can fit your needs in terms of software integration.

If you enjoyed this article, feel free to check out some of these other articles related to the upcoming Summer Release 2020.

[/et_pb_text][et_pb_sidebar area=”et_pb_widget_area_2″ _builder_version=”3.12″ custom_margin=”0px|||” custom_padding=”0px|||”][/et_pb_sidebar][et_pb_comments show_count=”off” module_id=”imaPostComments” _builder_version=”3.16″ header_level=”h2″ header_text_color=”#bd557c” form_field_text_align=”left” form_field_font_size=”14px” custom_button=”on” button_text_size=”12px” button_text_color=”#ffffff” button_bg_color=”#1bbbe9″ button_border_width=”0px” button_border_radius=”0px” button_letter_spacing=”1px” button_font=”VAGRoundedStd-Light|||on|||||” button_use_icon=”off” button_alignment=”left” text_orientation=”left” max_width=”90%” max_width_tablet=”” max_width_phone=”” max_width_last_edited=”on|desktop” module_alignment=”center” custom_margin=”50px||0px|” custom_margin_tablet=”” custom_margin_phone=”” custom_margin_last_edited=”on|desktop” custom_padding=”0px||0px|” header_font_size_tablet=”51″ header_line_height_tablet=”2″ custom_css_submit_button=”padding:6px 30px 4px 30px!important;||” button_border_color_hover=”#ffffff” button_border_radius_hover=”0px” button_bg_color_hover=”#00b996″ saved_tabs=”all” button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”off” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”on” button_border_color__hover=”#ffffff” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”on” button_border_radius__hover=”0px” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”off” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”on” button_bg_color__hover=”#00b996″ button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off”][/et_pb_comments][/et_pb_column][/et_pb_row][/et_pb_section]
Keep an eye on the Imagicle world.
Get some free, happy content and stay up to date.