Microsoft Teams User presence application not working - skype-for-business

I've recently created a c# application using UCWA sdk that updates the MS Teams user's presence instantly and log it.
The application worked fine and got exact presence when I change my presence in both skype for business client and MSTeams client (I used the same account for testing in MS Teams and SFB).
But from last week, the presence gets updated only when I change the presence in Skype for business client. When I change my presence in MSTeams client i am not getting the actual presence instead it shows offline.
Is there any problem with the co-existence mode for the account that I've used for testing?

If any of the users are using Teams instead of SfB for online meetings, UCWA won't reflect their presence.

Related

Bloomberg API Login without using Bloomberg Anywhere

As you may know the BLPAPI core developer guide (https://data.bloomberglp.com/professional/sites/10/2017/03/BLPAPI-Core-Developer-Guide.pdf) is not very intuitive and I was not able find a way to connect and authenticate without using the Bloomberg Anywhere Application.
I'm currently looking to develop an application that will run automatically on its own everyday at a specific time and would like to have this application to authenticate itself with Bloomberg and connect to the API.
Many thanks.
Justin, authenticating against the BLP API requires one of a few options to be in place. If you're only considering something around the Bloomberg (Professional) Terminal then you need to have a valid 'token' in place. When you light up a Bloomberg Terminal it creates a token and makes a BLP API 'delivery point' available on localhost:8194. When you log out of the Terminal the token remain valid and then delivery point remains intact. The token gets invalidated in two circumstances, either timeout (not even sure it will last overnight), and, the Bloomberg user logging in somewhere else (including on the Bloomberg phone app).
I should also say, that your application use case is constrained by licensing, in that you can only write display applications (as defined by exchange rules).
What some Bloomberg customers resort to if they have challenges around 24/7 applications, and, only have Bloomberg Terminals, is that they buy something called a Server API (SAPI). It allows a client/server pattern to be developed whereby the server portion can login in with its own credentials (application name), and, the client portion authenticates with the Terminal token/user. So, you could write the server component collecting data 24/7 but only delivers the analytics/results, etc when the Bloomberg Terminal users logs in.
If you're looking for something a little more systematic/autonomous then as a customer you should look at the Bloomberg Enterprise products such as B-PIPE, where the above need not apply, and you have a much more liberal accommodation of patterns.
As with all things finance, the devil is in the detail.. and depending on whether you're looking at exchange traded data or OTC, various rules and fees will apply.
Good luck

Customize Firebase / Google Identity Platform Multifactor Authentication Confirmation Email

I have successfully and deceivingly easily added Firebase authentication for my web ap. I've found during my work that it's actually just a wrapper over the identity platform product from GCP. I've found this out while working on adding two factor authentication via phone for the app as well.
Everything works fine for the amount of complexity 2fa brings.
The problem I am now facing is that every time I enroll a user to the second factor, they get a horrendous automatically generated email which I just can't seem to understand where to change.
I know that transactional emails are a bit unwieldy in Firebase, so I fear the worse on customization, which is why I am asking:
Where do you change, or disable that email? I am already notifying the user their phone was validated and they just got the SMS on their phone, there is no need for another ugly notification.
That said, the documentation does say an email will be delivered upon running the multiFactoruser.enroll method, but not much else.
I've also found that the identity platform allows for programmatic enrollment via the admin SDK which is I guess my next plan if the email cannot be disabled.
This seems straightforward enough, but I'm wondering if it will also send a validation SMS or that is simply it, if the user adds a wrong phone, they will then be locked out of their account.

Unable to get presence for people outside user's organisation in Skype for Business Web SDK

We are using the Skype for Business Web SDK in our application to show the presence of contacts.
When the contact is someone inside the user's organisation (and therefore the same AD instance as the user), we register a callback function on the contact's status onChange event and this works well.
However, when the contact is outside the user's organisation (and therefore a different AD instance to the user), we find that the contact's status onChange event never fires and so there is no way to know their status.
The code we are using is as follows:
skypeContactService.subscribeToStatusChange = function (contact) {
contact.status.changed(function (status) {
...
});
contact.status.subscribe();
};
I wouldn't have thought this is a deliberate security measure, because in Outlook Online's Skype for Business functionality you are able to see the presence of external contacts.
So perhaps this is a bug in the Skype for Business Web SDK? Or perhaps it is functionality that hasn't been implemented yet?
Would someone from Microsoft be able to clarify whether there is a plan to enable getting presence for contacts outside of the user's organisation?
Any help would be greatly appreciated!
Federation should be required to see presence and do conversation related activities like IM, Audio, Video. I am not an expert on this side of Skype/Lync, but I would suggest looking over the Federation Documentation as I would argue you have no link to the external users, so you would not be able to see that information.
To solve your exact problem you would need to have federation with any organization that you want to be able to see presence or start conversations.
It could be that they are federated with your organization so they can see your presence information or if they are hosted online (O365), it may be there are alternate APIs that expose presence information without being federated. Are they able to start an IM or A/V conversation with any of your users (it should fail because your side is not federated)?

Can I control the list of chargeable connections in the IPP inside an Intuit App Center App?

I am developing an Intuit App Center app using the V3 SDK written in vb.net.
Is it possible to get/control the list of connected users that is listed in the Reports section of the Manage My Apps area in the Intuit Partner Platform? Specifically, the area where you view your connections and are able to disconnect users so you don't get charged for that connection.
I would like to be able to control that list from within my application for billing purposes. I have heard that it is possible to manipulate the list programmatically but I'm unsure how to do it.
This should definitely be do-able, but there's not a specific API for it.
There are really 3 components to tracking this information:
Have they EVER connected - you'll know this already because if they connected they will have gone through the OAuth process on your website and you'll have a token for them.
Are they connected NOW - you can test this by making an OAuth request to any of Intuit's services - if you get back a successful response, you know they are currently connected, vs. if you get back a 401 error you know the token is expired/no longer good.
Disconnecting them - you can choose to explicitly disconnect a user (and thus no longer get charged for their usage) by using the disconnect API call.
There is no billing API available.
You need to check it from the appcenter.
Ref - https://developer.intuit.com/docs/0025_quickbooksapi/0010_getting_started/0050_managing_your_app/connection_report
Thanks

Google Tasks API authorization

I can see many related questions on SO, but none that answers exactly what I'm confused with.
I'm using Google Calendar API in a .NET desktop application that allows user to provide his/her username/password, logs in on his behalf and adds some events to the calendar. Now I want to do exactly the same thing for Tasks feature. I'm trying to use Google Tasks API for this, but have been told that I need to do some OAuth kind of authentication, and even before that, I need to go to my gmail account and set permissions and get my project "key" to enable it.
Now does every user of my application need to do these steps in their Gmail account? Or do I need to do this in MY gmail account once and then my application code will be able to use the generated project "key" to enable my users to add tasks to THEIR gmail tasks list?
Figured it out. For anyone having a hard time understanding this, here it is:
The "key" generation step needs to be done only once per application, not for each user who's going to use your application. To generate a key, login to your Google Account and go to Google APIs Console page. Click API Access button and that's where you can generate keys for different kinds of applications like browser apps, desktop apps, Android apps etc. After registration, you'll need to take Client ID, Client secret and API key from this page and put them into the code. Sample code (.NET) for task creation and several other Google features is available here.
Once your user runs your application, he'll be taken to his Google account in his default browser where he'll be asked if he wants to allow this application to write to his calendar/tasks list. This page will display your logo and description text too that you can provide at registration time. Once allowed, this step won't be required again in the next one hour (this may be adjustable, i don't know yet).