can i get Private chat history ?
in Photon Chat
hello,
i need to private chat history in photon chat.
Is this possible? if yes then how and if no then why ?
please help me if any one have idea.
thank you.
i need to private chat history in photon chat.
Is this possible? if yes then how and if no then why ?
please help me if any one have idea.
thank you.
0
Comments
-
Hi @sonal_dhole2,
Where do you need the private chat history?
In client side or in chat webhooks?
What do you need the chat history for?
If user A sends private message(s) to user B while user B is disconnected, user B will receive the last X messages once connected as long as user A is still connected.
I think X is 100, it's the maximum history size per channel (private or public).
If this is not what you are looking for, you can always use public channels as "private channels": use special channel name (e.g. "-") and the channel can be subscribed only by two users (e.g. userA and user B ).0 -
i need private chat history in my room.
e.g. if two player A and B coming to single room and doing chat, after that player B left the room and again join the same room ,then i need the previous private chat of them.
is this possible ?0 -
Hi @sonal_dhole2,
Photon Chat has channels and does not have rooms.
Rooms are available in PUN or Photon Realtime.
The server keeps the last 100 messages exchanged per channel as long as player A or player B stay connected to Photon Chat.
The client API or SDK may cache the messages locally for more than 100 messages.
You can get those using:string privateChannelName = chatClient.GetPrivateChannelNameByUser(remoteUser); ChatChannel privateChannel; if (chatClient.TryGetChannel(privateChannelName, true, out privateChannel)) { List<object> messages = privateChannel.Messages; List<string> senders = privateChannel.Senders; }
0 -
i can't able to get private chat channel
chatClient.TryGetChannel(privateChannelName, true, out privateChannel)
at this point.0 -
0
-
but in this method
public void OnPrivateMessage(string sender, object message, String channelName)
it receives the message then how can it possible?0 -
Hi @sonal_dhole2,
When are you using the code snippet?
At which point?it receives the message then how can it possible?Is the sender equal the local UserId? are you receiving your own message?0 -
Is the sender equal the local UserId?
it receives messages from both if the sender is a local user or another one.
are you receiving your own message?
receive messages of both of them who are in private chat.
my scenario is that
I am connected to chat client -----> chat with person as private chat -----> now I am disconnecting from chatclient ----> again connect to chat client and come online ------> at that time I can't get private chat history of with that person.0 -
Hi @sonal_dhole2,it receives messages from both if the sender is a local user or another one.Yes, that's the expected behaviour, if you send a private or public message you will also receive it yourself.
[...]
receive messages of both of them who are in private chat.
In file "Assets\Photon\PhotonChat\Code\ChatClient.cs", line 232, insideChatClient.Connect
, we clear private channels.this.PrivateChannels.Clear();
You can comment out this line and see if it helps.0