Reference15r1:Concept Buttons App: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
Pst (talk | contribs)
mNo edit summary
 
(14 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{FIXME|reason=This article is still work in progress}}
[[Category:Concept|Apps]]
[[Category:Concept|Apps]]
[[Category:Concept App Service Buttons]]
[[Category:Concept App Service Buttons]]
Line 21: Line 20:
* Enter a '''"Name"''' that is used as display name ''(all character allowed)'' for it and the '''"SIP"''' name that is the administrative field ''(no space, no capital letters)''. ''e.g : Name: Buttons, SIP: buttons''
* Enter a '''"Name"''' that is used as display name ''(all character allowed)'' for it and the '''"SIP"''' name that is the administrative field ''(no space, no capital letters)''. ''e.g : Name: Buttons, SIP: buttons''
* Click OK to save the settings and a green check mark will be shown to inform you that the configuration is good
* Click OK to save the settings and a green check mark will be shown to inform you that the configuration is good
'''Buttons User'''
* You also need a separate User Object in the pbx which is used from the buttons app. The app will register on this object for...
** '''calls'''
*** an incoming call to this user will be used as trigger. therefor the incoming '''cgpn''' and sip of the internal caller and the '''cdpn''' as destination is used.
*** Triggernumber '''"99"''' is reserved for Working Toggle. All other destination can be defined per user.
*** you can setup MWI-Function keys to the number of the buttons-user + append own number checkmark.
**** in the MWI Key example you will see the 8599 which combines the number of the buttons user "85" with the triggerbumber "99" for working toggle
** '''chat'''
*** if you want to use outgoing chats from the app you have to assign the chat app to this user
*** place "chat" in the Home Screen Apps. Just type it in like this.
[[File:Buttons-mwi-working.png|thumb|none|/Buttons-mwi-working.png|/Buttons-mwi-working.png]]
[[File:Buttosapp user chat.png|thumb|none|/Buttosapp_user_chat.png|/Buttosapp_user_chat.png]]


== Buttons App - Overview ==
== Buttons App - Overview ==
Every mentioned Input Trigger can be multiple combined wit output actions.
Every mentioned Input Trigger can be multiple combined wit output actions.
[[File:Buttons overview.png|/Buttons_overview.png|/Buttons_overview.png]]
 
[[Image:Buttons overview.png|700px|/Buttons_overview.png|/Buttons_overview.png]]
 
=== Input trigger ===
=== Input trigger ===
===== PhoneKeys / Dial In =====
===== PhoneKeys / Dial In =====
Line 41: Line 58:
For example: [https://your-app-platforn-dns/domain.com/buttons/shelly wss://your-app-platforn-dns/domain.com/buttons/shelly]
For example: [https://your-app-platforn-dns/domain.com/buttons/shelly wss://your-app-platforn-dns/domain.com/buttons/shelly]


Most Devices that can establish an outgoing websocket are supported. You can also work with BLE devices if you have a BLE gateway or other Shelly device that is capable of both BLE and Websocket, so that it could work as gateway for BLE signals,
Most Devices that can establish an outgoing websocket are supported. You can also work with BLE devices if you have a BLE gateway or other Shelly device that is capable of both BLE and Websocket, so that it could work as gateway for BLE signals.
 
You can also take a look to this video. https://www.youtube.com/watch?v=lkMEf7CpXHo


====== Buttons ======
====== Buttons ======
Line 51: Line 70:
====== Motionsensor ======
====== Motionsensor ======
We have tested with Shelly BLU Motion and Shelly BLU Gateway
We have tested with Shelly BLU Motion and Shelly BLU Gateway
====== Webhook (''RestApi'') ======
In the SettingsPlugin (PbxManager), you can define an '''http-path''' and an '''http-api-key''' that can be used by general systems to perform general actions (e.g., monitoring). The idea is that server-based communication is combined with dynamic output actions, which are not triggered by user interaction.
The path and api-key a added to the reachable base url of the buttons app + /extapi. So, if your base url looks like this [https://APP-PLATFORM/domaine.de/buttons/extapi/mypath?key=Secretkey1234&msg=Test&dst=atlantis&type=connect&tags=abcd,1234 https://app-dnsname/test.local/buttons/] and you api-key is "Secretkey1234", the url looks like this, to do a Post to Connect App via Buttons App.
* Example: [https://APP-PLATFORM/domaine.de/buttons/extapi/mypath?key=Secretkey1234&msg=Test&dst=atlantis&type=connect&tags=abcd,1234 https://app-dnsname/test.local/buttons/extapi/mypath?key=Secretkey1234&msg=Test&dst=atlantis&type=connect&tags=abcd,1234]
======''Webhook Get Parameters''======
* key: your http-api, which you can define via SettingsPlugin
* type: type of output. at the moment only "connect" is possible.
* dst: destination for the action
* tags: tagging parameters for Connect Post
* msg: the content for your action.
* callto: (in case of Connect Post), also a call to a destination can be trigged
* srcqueue: the Waiting Queue Object, which should be used for the outgoing call. (you have to define it in the buttons-admin before).
* numbers:in case of call, a comma separated list of numbers can be placed, which should be get the call from the Waiting Queue Object


=== Output actions ===
=== Output actions ===
Line 81: Line 118:
== Buttons App - Configuration ==
== Buttons App - Configuration ==


We have created a short configuration tutorial on youtube.
https://www.youtube.com/watch?v=ut3NI59BNl4




Line 88: Line 130:


== Related Articles ==
== Related Articles ==
[[Howto:Integrating_Shelly_IoT_Devices_with_the_innovaphone_Buttons_App]]

Latest revision as of 16:32, 16 July 2025

Applies To

  • innovaphone from version 15r1

Overview

The myApps Buttons App is an open source app that deals with the integration of IoT devices and PBX features as triggers. In principle, it is about linking certain input triggers to various output actions


Installation

Go to the Settings App (PBX manager) and open the "AP app installer" plugin. On the right panel, the App Store will be shown. Hint : if you access it for the first time, you will need to accept the "Terms of Use of the innovaphone App Store"

  • In the search field located on the top right corner of the store, search for "Buttons" and click on it
  • Select the proper firmware version, for example "Version 15r1" and click on install
  • Tick "I accept the terms of use" and continue by clicking on the install yellow button
  • Wait until the install has been finished
  • Close and reopen the Settings App (PBX manager) again in order to refresh the list of the available colored AP plugin
  • Click on the "Buttons" and click on " + Add an App" and then on the "Buttons" button.
  • Enter a "Name" that is used as display name (all character allowed) for it and the "SIP" name that is the administrative field (no space, no capital letters). e.g : Name: Buttons, SIP: buttons
  • Click OK to save the settings and a green check mark will be shown to inform you that the configuration is good


Buttons User

  • You also need a separate User Object in the pbx which is used from the buttons app. The app will register on this object for...
    • calls
      • an incoming call to this user will be used as trigger. therefor the incoming cgpn and sip of the internal caller and the cdpn as destination is used.
      • Triggernumber "99" is reserved for Working Toggle. All other destination can be defined per user.
      • you can setup MWI-Function keys to the number of the buttons-user + append own number checkmark.
        • in the MWI Key example you will see the 8599 which combines the number of the buttons user "85" with the triggerbumber "99" for working toggle
    • chat
      • if you want to use outgoing chats from the app you have to assign the chat app to this user
      • place "chat" in the Home Screen Apps. Just type it in like this.
/Buttons-mwi-working.png
/Buttosapp_user_chat.png

Buttons App - Overview

Every mentioned Input Trigger can be multiple combined wit output actions.

/Buttons_overview.png

Input trigger

PhoneKeys / Dial In

The Buttons app can be made available for calls via a dial-in number. This involves a comparison of the caller (cgpn, sip) and the number called (cdpn).

myApps Windows Client (Hotkey)

In the myApps Windows Launcher, buttons can be assigned a hotkey. To do this, append the parameter <code>?hotkey=[number]</code> to the name of the app object.

Example:

If your app object is named "buttons" and you want to assign hotkey number 1, the entry would be: buttons?hotkey=1

Shelly Devices

Shelly devices can be used as trigger devices in the Buttons app. To do this, the app opens another web socket below the app path.  The path name is “/shelly ”

For example: wss://your-app-platforn-dns/domain.com/buttons/shelly

Most Devices that can establish an outgoing websocket are supported. You can also work with BLE devices if you have a BLE gateway or other Shelly device that is capable of both BLE and Websocket, so that it could work as gateway for BLE signals.

You can also take a look to this video. https://www.youtube.com/watch?v=lkMEf7CpXHo

Buttons

We have tested with Shelly BLU Button1 and Shelly BLU Gateway, but you can also use an other Shelly PRO or PLUS Device to handle BLE signals.

Windows-/ Door Sensor

We have tested with Shelly BLU Door/Window and Shelly BLU Gateway

Motionsensor

We have tested with Shelly BLU Motion and Shelly BLU Gateway

Webhook (RestApi)

In the SettingsPlugin (PbxManager), you can define an http-path and an http-api-key that can be used by general systems to perform general actions (e.g., monitoring). The idea is that server-based communication is combined with dynamic output actions, which are not triggered by user interaction.

The path and api-key a added to the reachable base url of the buttons app + /extapi. So, if your base url looks like this https://app-dnsname/test.local/buttons/ and you api-key is "Secretkey1234", the url looks like this, to do a Post to Connect App via Buttons App.

Webhook Get Parameters
  • key: your http-api, which you can define via SettingsPlugin
  • type: type of output. at the moment only "connect" is possible.
  • dst: destination for the action
  • tags: tagging parameters for Connect Post
  • msg: the content for your action.
  • callto: (in case of Connect Post), also a call to a destination can be trigged
  • srcqueue: the Waiting Queue Object, which should be used for the outgoing call. (you have to define it in the buttons-admin before).
  • numbers:in case of call, a comma separated list of numbers can be placed, which should be get the call from the Waiting Queue Object

Output actions

Chat

Buttons allow you to send a chatmessage to a reachable user. Simply enter the SIP (or H.323) name of the destination and the message you wish to send.

Notify

Buttons allow you to a notify a to a reachable user. Simply enter the SIP (or H.323) name of the destination and the message you wish to send. A Notifiy is just a notification to the client and works with the notification policies of the used client.

Chat + Notify

This is a combination of both in one rule.

Presence

You can set the presence of users. In case of the buttons-user app, it's to the own user.

Phonemessage

Similiar to Chat, but it sends messages to innovaphone DesktPhones. As destination you can use the number or the name.

Phonecall

You need to assign a Waiting Queue via Buttons-Admin App. After that, this Waiting Queue is used to perform outgoing calls and stream the announcement. The Waiting Queue needs a special configuration. => Alert Timout = 0 otherwise it would not work.

Connect App

If the Connect App is assigend to the buttons-user AppObject, buttons is able to create ConnectPosts. Also if you combine ConnectPosts and Calls with the same trigger actions, also interactions of the phonecalls are presented to the Connect Post.

Working App

If the Working App is assigned to the buttons-user AppObject, buttons is able to control your Working App. Also the Dial In Number "99" is reservered for Working Toggle. So, if your dial in number for buttons is 85, you can call 8599 from your extension and your working status is toggled.

You can also create own rules for working-start or working-stop

Buttons App - Configuration

We have created a short configuration tutorial on youtube.

https://www.youtube.com/watch?v=ut3NI59BNl4


Troubleshooting

Related Articles

Howto:Integrating_Shelly_IoT_Devices_with_the_innovaphone_Buttons_App