Is it possible to target users currently in doc via a formula?

I’d love to be able to generate a list of users who are currently using/viewing the doc. Is there a formula for such a thing? Perhaps a hidden formula?

This would add a ton of utility to our docs that we use for day to day rituals. Folks naturally open up the Coda doc associated with any of our given meetings, but I have to have them “Check in” and “Check out” to get an accurate list of who is in attendance.

2 Likes

Hi Alice, my name is Maggie and I am part of Coda’s Success Team - nice to virtually meet you!

My teammate showed me the IsSignedIn() formula that can show you if someone if logged into Coda - not sure this is exactly what you are looking for but it is a fairly secret formula :slight_smile:

We use the done reading button / reaction in our team meetings here at Coda, which you can use formulas to then turn into a list, if needed. I am curious to hear what else you might want from this data and if we can come up with a better solution!

Our team is here for brainstorming and optimizing in Coda, let me know if you would prefer to set up a call to talk through things.

1 Like

Thank you Maggie! I’ll give that formula a try. I intend to use it across some docs we use to facilitate live meetings, like stand ups, retros, and task grooming sessions. I’d prefer the IsSignedIn() formula to over asking users to press a button because it removes one extra step on their part.

Thank you again!

1 Like

Hi again Maggie,

Running into a snag with that formula:

I’m using isSignedIn() on a checkbox column and asking it to see if the value in a Person column in the same table is true. You can see I’m listed in the first row, so I expected that value to return “true”, and you can see one of my colleagues in the row below was also logged into the doc at the same time, so her row should also return “true” in the “is Signed In” column.

I might be misunderstanding how this formula works. If it doesn’t take any arguments, how do I use it?

It is tricky since IsSignedIn() does not take any arguments, so great question! I made a formula that will show who is currently signed in based on your set up. I also found a way to capture WHEN they signed in (since the Issignedin formula only shows if they are signed in at that moment). You can see how I set this up by copying this doc. Let me know if this helps!

2 Likes

Hey Maggie!

That is indeed an odd formula without a parameter - and Im not sure your doc is set up correct?

For example, heres a screenshot from a copy of your document I made. Every time I select a new individual in the person column, its show their “time of sign in” as the time that I selected their name, not actually the time of their sign-in (which is also clear, because this doc is not shared with that individual, so they cannot have ever signed into this doc)

isSignedIn() seems to be returning true or false whether the current user is actually signed in - So simply because I myself am signed in, it will default to true() everytime Im using the document and therefore with your doc structure will always show that everyone is signed in regardless of whether or not they actually are signed in.

is the isSignedIn() formula a volatile formula similar to user() and now() ? @noah - I feel like you might have some insight?

Unless someone else can point me in a different direction, I think this is a bug? I believe the isSignedIn() formula should take a single parameter that accepts a user - similar to Notify()

Great catch and yes, definitely not working as intended!! Would love to hear Noah’s thoughts - I can also ask around internally :slight_smile:

1 Like

You are correct @Scott_Collier-Weir, isSignedIn() is what we call a “volatile formula”—it changes it’s output based on who is viewing the doc ( just like the user() formula). This means you cannot use it to check if a person in a people column is signed in, unfortunately. The formula description is a bit misleading here, I will file a bug to make the wording more clear. Sorry for the confusion!

3 Likes

Hey Alice! Apologies for leading you astray on this formula, but on the bright side we learned something new!

As Coda is currently built, we do not have any automations for tracking usage at the user level, but would keep an eye out for this feature potentially in the future.

I know I mentioned the reaction button in a previous message, I also like adding a button to get sentiments from the team in meetings and using this as a way to keep track of who is there. One other idea is to have a button that is disabled until someone checks a box (or another row interaction) so that you can see who is in the meeting/participating.

1 Like

I have a workaround for you:

(1) Manually make a table for the list of people that you want
(2) If you make the person ID into a totext() formula, you can target certain people via exact value matches

If(Person_Name_Text=“John Doe” OR Person_Name_Text=“Jane Doe”, do this, else do this)

you can add as many OR clauses as you want

Thanks all for the help and suggestions for how to proceed! Much appreciated :pray:

Wanted to follow up and let folks know that we have updated the isSignedIn() formula description to be more clear. Thanks for helping us make this easier to understand @Alice_Packard2!

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.