Skip to the content.

Conversation Initializing Person ( chat participant ) Identification ( using Mean & Median Delay ) - Reflecting interest of Participant(s) towards Chat

In a Chat ( may be Private or Group ), there’re multiple conversations, which start and end at different point of day ( may be spanning across multiple days ), within that whole time period, for which we’ve Chat record.

Now we need to identify those messages ( using index ), which were at verge of these conversation(s) i.e. end of one conversation & init of next conversation.

Now if we’ve that stat, we can simply get time elapsed between those messages on verge.

So what we do, calculate time elapsed between all messages for a Chat i.e.

# of delays to be calculated = ( # of messages in Chat - 1 )

Now there’ll be multiple time delay values ( well they’re in Second ), which will be same, so we’ll find unique values.

Using those unique delay values, we’ll compute median ( aah !!!, need to sort them ascendingly first ) & mean delay.

Those messages, which were sent after some time >= mean delay, from previous message sent by some paricipant of this Chat, are extracted, so that we can find out who sent this message ( using index ).

Now our job is easy, we’ve determined which participant started how many conversation(s) over lifetime of this Chat, which can give us an idea about which participant is how much keen in participating in that Chat.

We can perform similar analysis using median delay.

Implementation Time ( on test data )

For a Private Chat

conversationInitializerStatPrivate

For one Group Chat

conversationInitializerStatGroup