Reference13r3:Concept App Service Connector for Microsoft 365: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
Line 8: Line 8:
= Overview =
= Overview =


Connector for Microsoft 365 synchronises Microsoft Teams presences with the innovaphone PBX (unidirectional).
Connector for Microsoft 365 synchronises Microsoft Teams presences with the innovaphone PBX and back.


== Requirements ==
== Requirements ==

Revision as of 11:33, 13 December 2022

Tools clipart.png FIXME: This product is still in progress

Applies To

  • innovaphone PBX from version 13r3

Overview

Connector for Microsoft 365 synchronises Microsoft Teams presences with the innovaphone PBX and back.

Requirements

  • innovaphone PBX
  • innovaphone Application Platform
  • App(Connector for Microsoft 365)
  • Connector for Microsoft 365 License per user

Concept

Configuration

Please have a look into our Howto guide for basic configuration aid: Howto13r3:Configure Connector for Microsooft365

Technical Overview

If the Connector for Microsoft 365 app is fully configured, the app connects to Microsoft to obtain a token. With the token, the app gets the teams users (with a Teams license) through the Microsoft Graph Api. A presence subscription to Microsoft is started with the licensed users of the PBX to get presence changes in Microsoft Teams for these users. A user subscription is also started to get changes of the users (adding, deleting or update). If a user has changed, the Teams users are retrieved again. If the presence has changed, it is forwarded to the PBX. The presences of Teams are mapped to the presences of the PBX.

  • User subscriptions are renewed every 60 minutes.
  • Presence subscriptions are renewed every 10 minutes.
  • License Check is made before every presence subscription.

Please be aware: The actual change of presence or line state will be live, the above-mentioned subscriptions are needed to register against the Microsoft API for changes. After successful subscription Microsoft will trigger the Connector for Microsoft 365 App every time a presence or line state for a user has changed. The subscription will then be renewed in the above-mentioned time interval to receive further live updates.


Mapping Table

Teams Presence PBX Presence
Away away
BeRightBack away
Busy busy
DoNotDisturb dnd
InACall on-the-phone
InAMeeting meeting
Inactive online
PresenceUnknown online
Available online
Offline online
Offwork online
OutOfOffice away
UrgentInterruptionsOnly dnd
Presenting on-the-phone
InAConferenceCall on-the-phone

The value "online" unsets the Teams presence in the PBX.

Master/Slave

For Master/Slave combination the "Connector for Microsoft 365" App has to be added to the slave (if no full replication is on). The slave websocket connection is needed to display "on-the-phone" presence.

Related Articles

Known Limitation

Only 650 users can be subscribed for the presence subscription.

Communication User (UserSynctoPbx)

Users with MFA (multi-factor-authentication) are not supported as user for the Connector.

Subscription Timeout

Situation

Due to a current limitation in the Graph API it is not possible to cancel or delete an active presence subscription.
As you can see in the of the current Graph API (1.0) the “Delete subscription” chapter does not include presence subscriptions.
It is also not possible to have multiple subscription in parallel.

To make sure to only request a new presence subscription when the old one is not valid anymore, the app will store the state of the presence subscription and the time until it is valid in the database.
As mentioned in the chapter “Technical Overview” we are creating presence subscriptions with a validity of 10 minutes.
The presence subscription will be renewed as soon as it is no longer valid which will be 10 minutes after initial subscription.

Impact

If settings are changed or the app instance is restarted it will check the corresponding database entry on startup.
In case the last presence subscription was completed less than 10 minutes ago, there is still an active presence subscription and the app has to wait for it to become invalid.
Some Changes (e.g., to the “Notification-URL”) will only take effect after a new created subscription.

The current Beta Version of the Graph API is already providing a function to delete presence subscriptions, so we hope we can improve this behavior in the future.

Troubleshooting

The app itself shows required states with green and red as connections to the Master PBX, Authentication and Presence Subscription to identify if there are problems. Sometimes it needs a little bit time until the states are changed. If the states remain, it is mandatory to enable logs on the app platform and check for more information.

If presence subscription does not work, please check if the configured user has a Microsoft Teams license.