abrom / rocketchat-ruby

Ruby wrapper for RocketChat v1 REST API
MIT License
33 stars 24 forks source link

users.info does not include roles #20

Open andreas-it-dev opened 6 years ago

andreas-it-dev commented 6 years ago

Hi,

even though the api docs suggest it should ( https://rocket.chat/docs/developer-guides/rest-api/users/info/ ),calling users.info with an admin user only includes the bare minimums:

@session.users.info(username: @user.username) => #<RocketChat::User:0x70137576055220 @id="NJLPbJWM3nRk2M8zY" @username="Andreas" @active="true">

any hint what i might do wrong?

thanks, Andreas

abrom commented 6 years ago

Hi @awunder,

There may be a couple of things to consider here. The User model will only display some specific fields if you just dump it out on the console. There may also be some permission issues with your RocketChat user.

What do you get if you try view the raw data?

I.e.

@session.users.info(username: @user.username).data
andreas-it-dev commented 6 years ago

Hey @abrom ,

wow, that was quick :)

i did a further look, forked your gem and played around a bit..

looks like it wasnt implemented on "your side" so i followed your style and fiddled it in...

i never made a pull req in my life so i am a bit lost.. however, this is what i've changed:

https://github.com/awunder/rocketchat-ruby/commit/10f3f13ed5a6c8a9c9f144fd2975d2531073ad7a#diff-c92145718ff59c223c017f5efe02475e

am probably implementing some other stuff as well while i'm going along the path of integrating rocket chat to my webapp...

so, maybe i'll figure out the pull req thing on that route as well..

thanks for your great gem, Andreas

abrom commented 6 years ago

I've left some comments for you. I'd ask that you include a test for your change though

Creating a PR is pretty easy. Take a look at the Github documentation: https://help.github.com/articles/creating-a-pull-request-from-a-fork/

abrom commented 6 years ago

And in the mean time, you should be able to get what you need with:

@session.users.info(username: @user.username).data['roles']