Bubble notifications in custom app for Microsoft teams - notifications

I am working on developing an app for MS Teams. I want the app to send in-app/bubble notifications to user, to engage the user and draw his/her attention on action item. Could someone please guide how can I make that possible? I am unable to locate documentation for it. I don't want to send messages/ cards in channels via bot.
By "in-app notifications" I mean bubble notification kind of thing which conveys number of messages that are unread in "Chat"/ number of activities under "Bell" icon (currently available in Teams)

Related

How to chat and call automatically in MS Teams?

I'm working on a solution to build a system that automatically alerts users on Microsoft Teams. The order of execution will be:
Automatically scan alarm logs
Sort and send MS Teams messages to personnel for corresponding processing
If the processing staff does not receive the message, make a call on MS Teams to read the pre-recorded voice record.
I used python to automatically get the warning list, to send this alert list to the handler, I have tried MS Teams REST API but it only supports sending messages to Channel. How do I automatically chat and voice calls to an MS Teams user? Can chatbot help me with this problem? I see there are many types of bots that can be added to the conversation:
I think a chatbot is definitely the best way to deal with this. Essentially, you're wanting the bot to message a user on demand, which is something called "Proactive Messaging". You can read more here and here. There are a few things you need to know about this, but in a nutshell you need a way to specifically identify the user for sending the message, which you can get when the user first installs your bot (mostly you need "ServiceUrl" and "ConversationId").
With regards to knowing if the user has read the message, you might want to send an "adaptive card" with a button for the user to acknowledge that they've read the message, and if you don't get a callback within some time frame, start the voice call.

Strategy for notification checking

Is there a recommended strategy for checking of notifications within my AngularJS app?
By 'notification' I'm talking about message alerts that are to be displayed to a user when they're logged into the application.
My plan is to notify the user of unread notifications in the app's NavBar as shown below:
My app communicates with my restFul API (written using Node.js, express, MongoDB), so I anticipate that new notification will be written to a MongoDB collection with details the user the notification is intended for.
What I'm unsure about is how the AngularJS application will check for notifications once a user is logged on. I could call my API for unread notifications every time the user navigates from one path to another but that seems simplistic and it wouldn't work if a new notification occurs whilst a user is viewing a page.
Another way would be some sort of timer system that checked, say, every 30 seconds. But this would results in unnecessary polling of my API when there aren't any new notification for a user.
So, wondering if there is a recommended strategy. Thanks for your help.
Polling is a solution but it is very inefficient. The solution to your problem are websockets. Websockets is a technology that provides a full-duplex bidirectional communication between your clients and your server. So you can send messages from your server to your connected clients. Your server maintains an array of connected clients and you just have to know which ID you need to send a message to it.
For your stack, the best solution I have came to is Socket.io http://socket.io
It also have cool features. For example, you can "observe" models, so if a model change in your database, for example an update to a user profile is made, you can trigger an event and automagically send a message to your client. This client get and handles the notification and do something, like put a badge on your alerts icon.
Hope this is useful for you.

Onesignal: Web push notification for capture user votes

I am trying to implement a mechanism to push web notification to users and ask for their votes. I want to capture and store user's votes in my DB based on the feedback given.
For this purpose, I am using Onesignal's web push notification. I have managed to add a tag to each user to identify the user. So I can now send notifications to specific users. But when user clicks on the notification, I want to have the information about the notification like player-id, the actionid, notification id so that I can capture this information in my DB. I am not sure how I can get that.
Chrome and Firefox can support web push webhooks which may help, but I still don't have any solution for Safari. Can someone please suggest any alternatives or workarounds?
Thanks!

Posting on game activity feed

Is there any way to post on a user's activity feed for an iOS game? There seems to be no API for this but there is a permission
user_games_activity
on https://developers.facebook.com/docs/authentication/permissions/#open_graph_perms
I have noticed that there are activity feeds for Facebook games itself, but I haven't come across an activity feed regarding an iOS app.
Any help would be appreciated, thanks!
You can post user actions/achivements from iOS by taking publish_actions extended permission, but you need backend server support. You need a public url with open graph tags for each object/achievement.
Publish actions
Allows your app to publish to the Open Graph using Built-in Actions,
Achievements, Scores, or Custom Actions. Your app can also publish
other activity which is detailed in the Publishing Permissions doc.
Note: The user-prompt for this permission will be displayed in the
first screen of the Enhanced Auth Dialog and cannot be revoked as part
of the authentication flow. However, a user can later revoke this
permission in their Account Settings. If you want to be notified if
this happens, you should subscribe to the permissions object within
the Realtime API.
If you want to post achivements, here is basic info. For more info see the below link.
The Graph API for achievements allows game developers to publish user
achievements in their game to provide more meaningful and relevant
stories.
Note: This API is only available to applications categorized as
'Games'. You can categorize your app as 'Games' in the Developer app
by navigating to About > Basic Info and selecting 'Games` in the drop
down menu in the category field.
FYI: https://developers.facebook.com/docs/achievements/
FYI: Improving app distrubution

IOS implementation of simple messaging system (client/server) between clients

i've been looking around to find a simple library or a client/server sample code for implementing a messaging system between users of my IOS clients app and a REST server. I would need that each user has an incoming and sent messages view. This view would display the conversations grouped by user. For example, using a table view where each cell represent a thread between the 2 distinct users, selecting a user's conversation it would push a new view that would display all the messages between the two users.
I have to say that i didn't found much, this is a mix of libraries and front ends:
an XMPP objective-c library: https://github.com/robbiehanson/XMPPFramework, but i don't really want an IM behavior
Acani chat, https://github.com/acani/AcaniChat seems promising but waiting for the acani chat server, i could use the front end
another chat https://github.com/honcheng/iOS-nodechat
MailCore, an IMAP api for objective-c: https://github.com/mronge/mailcore . i would need to relay on a mail server, create emails for each user and ... too much!
too bad there isn't any iMessage API
dont want to send a SMS or an email
push notification it's not a must to start
maybe coding a simple REST service for publishing and retrieving messages to and from a user would be the best approach? i'm i missing something?
thanks!!