Is there any way to programmatically set Google group member settings? - google-api

As the topic says, is there any way to programmatically change Google's group member settings. Say for example the setting as to have emails sent to a group distributed to a particular member (one can be in a group without receiving mails sent to the group). There is a multitude of group member settings like this, but I haven't found a way to do it by API.
The first ideas would be the Admin Directory API or Groups Settings API, but neither supports any operations like these (the latter only has operations that affect the group as a whole).

Within the Admin SDK, there's the Groups Settings API as you mentioned. Everything this API can do from an admin level is found here.
As far as I know, if it's not a setting available in this API, it won't be possible via API.

Related

Enable / disable functionalities for users on Ms Teams custom App

I'm planning to build a custom application for Ms Teams and I wanted the app to have an 'Administration' context, reserved for some users, with charts and records management that the rest of the users wouldn't be able to see. Is there a way to accomplish this?
Is it possible to hide tabs depending on a user profile? Is there another way to accomplish this on teams?
Tks
Inside your tab you can do whatever you want - it's just a custom web app/page. The only "restriction" aside from a normal web app, is that it must implement the Teams javascript library - see here for more. However, once you've implemented that library, you can get the Teams context, which includes the user's Azure AD Id and also UPN, and you could use one or both of those to do a lookup against your database, determine the user's role, and show/hide UI elements accordingly.
However, I think you might be asking about whether the entire Tab -itself- (i.e. even the tab item inside the Teams client) can be hidden from other users. To do this, an option is to use a "private channel", just for the relevant users, and pin the tab inside there only.

List users that have posted to a Yammer group

Is it possible (via the Yammer REST API or otherwise) to programmatically retrieve a list of all unique users who have posted to a specific Yammer group?
The network in question is a free Yammer network, therefore the data export approach is not available.
There's currently no way to directly get a list of contributors to a group. What you could do is use the messages api to crawl through all of the messages in a group and get the users who sent them. If it's a group with a reasonable number of messages, this shouldn't be that big of a problem. Just don't forget about the rate limits on making api calls.
The message endpoint for a group looks like this.
https://api.yammer.com/api/v1/messages/in_group/{{group_id}}.json?threaded=extended

How can i get list of domain users from Google Apps account without administrative access?

This is a similar question to How can i get list of Domain user's from Google Apps account?
However, I'd like to use a normal account (not an administrative account) to retrieve the user list. It seems like this should be possible as the gmail autocomplete returns domain contacts not listed in the user's contact store. I've looked at the autocomplete Ajax call, but it requires something in the beginning of the string (and no, I don't really want to loop through a-z one by one - that is just way to hacky). For example:
https://mail.google.com/mail/c/u/0/data/contactstore?ac=true&ct=true&gp=true&hl=en&id=domain&max=15&out=js&tok=beginningOfUsersName&type=4
Both versions of the Google contacts API seem to omit domain users unless you have them imported into your own contacts list. I've also looked at querying users in the "Coworkers" system group, all to no avail. I also find it interesting that "add a coworker's calendar" on Google calendar does not provide autocomplete - they use a popup instead.
I'm working on a C# project, but this is a general Google API question, so any pointers in any language would help.
Update
It looks like this is feasible now with admin/directory google api endpoints
see: https://developers.google.com/admin-sdk/directory/v1/guides/manage-users?authuser=0#retrieve_users_non_admin
Original answer
I was able to work around this issue, so I'll document the workaround, even if it doesn't involve Google. I wrote a program (in C#) to query the internal Active Directory (LDAP) store and pick up all the users from there instead. At that point I could get their email addresses and query Google with it. Not the best method, but it worked for my needs.
The C# was roughly patterned from this powershell script, although I pulled out the computers query and added in the capture of the user's email address: http://www.visualbasicscript.com/List-all-users-or-computers-in-the-default-domain-m35650.aspx
The LDAP property I included to get the proper email address for Google was 'proxyAddresses', although this will not be correct for all environments.

Accessing Voice Mail Services in Windows Phone 7

I am creating a module for my project which is location based profile change in Windows Phone 7.
I am giving an extra feature in my app. When a user recieves a call, when in a certain profile (i.e silent or driving), the incoming call will recieve a service like voice mail where he/she can record a message.
Which API can I use to achieve that?
It's not entirely clear what you're after but I'm certain you can't do it:
There is no API for accessing profile information.
There is no API for accessgin call history details.
There is no way to determine if your application is being obscured for an incoming call or another reason.
Access to voicemail is operator dependent. There is no universal way to access this. Some oeprators provide their own APIs for accessing things like voicemail but these vary in implementation, availability and capabilites.

Can the opensocial API remotely search for users in orkut etc.?

Does anyone know if (and how) I can build an application (Java/Ruby/whatever) doing REST or RPC calls to a social network like Orkut (using opensocial) to search for a user by name or email address? So far I know that I can list all friends for a particular user ID, but I want to search among all users. Would I need to code it as an app/gadget running inside the google sandbox or is there a way to get a list of matching user ID via REST?
So far I got this one to work: http://code.google.com/p/opensocial-ruby-client/wiki/GettingStarted. But with this API and the gadget linked there I only get people that are already linked to me...
Thanks for answers,
Martin
No, you can't do that. At least, OpenSocial doesn't have spec like that.
In addition, SNS normally have privacy policy which disables developers to poke around users who hasn't installed your app.
Think OpenSocial API access to private information is quite limited.

Resources