Custom Microsoft Teams App

Job ID: 37440178

Budget: $30 – $75 USD

Our current website offers a chat-like UI. We typically sell our software as a service to businesses to let them communicate with their customers over SMS/MMS. The layout is essentially like Facebook Messenger or WhatsApp or other chat apps. There is a conversation column, a message list column, and a message composer.

Our goal is to offer a “lite” version of our site that can fit within Teams, run as Blazor WASM (not needing React or any other JS libraries), and offer most of the same basic chat functionality.

Our messaging platform already has a web API built out that uses REST and JSON. We mostly use this internally so it is not well documented (yet) but we can assist in usage of course and document as needed. Our platform has our own pretty simple authentication of username/password matching up to an API/session token. This token is all you’d really need to keep stored in the app for future page-opens and requests to any of our endpoints like sending a message, fetching user info, etc. Our API currently receives webhooks from the likes of Twilio, Bandwidth, Telnyx, our own chat system, etc. When we receive these webhooks we then POST to other remote APIs like Airship, SignalR, and so on- so if all we need to do is POST to a Microsoft/Azure API to provide push notifications that wouldn’t be hard to integrate into our backend… but I’ll leave that up to you to decide.

Also, to reiterate to avoid any confusion- we are not trying to send Teams messages, rather just contain a version of our website inside of a Teams tab. We would avoid manipulating or interfering with any existing Teams channels or chats. This would be as “standalone” as possible inside of a Teams tab, except for however notifications end up needing to work. Deeper integration into Teams or Microsoft accounts would be further down the road unless unavoidable.

Requirements include:
- Push notifications or toast notifications of some sort: Whether this is via Graph API or a messaging "bot" or some other method, we would like our users to be able to see a notification of incoming messages even while the tab is not open.
- Deep linking: If a notification is clicked, we would want it to go to our tab app, and possible even drill down to that specific conversation.
- Blazor WASM is the desired framework for this app
- Helping us understand how to set this all up, including Azure (we are AWS customers and are not familiar with Azure), how to deploy it, etc.
- While we are trying to get this app finished and published as soon as possible, we aren’t initially aiming to incorporate SSO, but if SSO becomes mandatory for push notifications we may need to look at it. We also may want this down the road as well, but not immediately if it delays or complicates things.
Related categories: JavaScript .NET C# Programming Microsoft Azure Blazor