Open Metaverse JIRA issue tracker

  • Log In Access more options
    • Online Help
    • GreenHopper Help
    • Agile Answers
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What’s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Agile
  • libopenmetaverse
  • LIBOMV-802

OnGroupChatJoin is not responding!!!

  • Voters
  • Watchers
  • More Actions
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Critical Critical
  • Resolution: Not A Bug
  • Affects Version/s: 0.7.0
  • Fix Version/s: 0.7.0
  • Component/s: Agents
  • Labels:
    None
  • Severity:
    Showstopper
  • Environment:
    Mono / OSX

Description

I tried create a tiny chat app with openmetaverse and mono, and came into a problem,

when I used 'RequestJoinGroupChat(groupID)', 'OnGroupChatJoin' wasn't responding.

However I could get the 'sessionID' generated from the 'RequestJoinGroupChat(groupID)' I used, in the

'GroupChatSessions'.

And I also could get other chats in Group Chat through 'onInstantMessage'.

Btw, I'm not able to send message to my group chat with 'InstantMessageGroup(uuid ,string)' as well.

Could anyone lend me a hand?

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • History
  • Activity
  • Commits
Hide
Permalink
Marco Scooter added a comment - 05/Mar/10 9:50 AM - edited

try the callback ...
void SelfGroupChatJoined(object sender, GroupChatJoinedEventArgs e)

instead of ...

'OnGroupChatJoin'

also use the ....
Client.Self.GroupChatSessions
dictionary

Client.Self.InstantMessageGroup(uuid ,string);
should work, atleast it does under windows.

as for groupmessage mixed inbetween 'onInstantMessage'.

private Dictionary<UUID, Group> _groupInfo = new Dictionary<UUID, Group>();
void GroupsCurrentGroups(object sender, CurrentGroupsEventArgs e)
{
_groupInfo.Clear();
_groupInfo = e.Groups;
//foreach (var group in _groupInfo)
//{ // MessageBox.Show(group.Key.ToString() + " :: " + group.Value.Name); //}
}

void SelfIm(object sender, InstantMessageEventArgs e)
{
if (e.IM.Dialog != InstantMessageDialog.MessageFromAgent) return;
lock (_groupInfo)
{
if (_groupInfo.ContainsKey(e.IM.IMSessionID))

{ // it's group IM var tempgroupname = _groupInfo[e.IM.IMSessionID].Name; }

else
{
// it's a regular instant message
switch (e.IM.Dialog)

{ case InstantMessageDialog.MessageFromAgent: //your code here break; case InstantMessageDialog.StartTyping: //your code here, still needs some extra logic here break; case InstantMessageDialog.StopTyping: //your code here, still needs some extra logic here break; }

}
}

what doesn't work correct, atleast i for me or i'm doing something wrong.

_Client.Self.RequestLeaveGroupChat(GroupID);

and the callbacks

void SelfGroupChatLeft(object sender, GroupChatLeftEventArgs e)

{ LogText("'SelfGroupChatLeft' Closed: " + e.SessionID, Color.FromKnownColor(KnownColor.ControlText)); }

void SelfChatSessionMemberLeft(object sender, ChatSessionMemberLeftEventArgs e)

{ LogText("'SelfChatSessionMemberLeft' Closed: " + e.SessionID, Color.FromKnownColor(KnownColor.ControlText)); }

none of does trigger, but you can't send groupim anymore, it work, but only partially .... seams.

hope you can figger it out now.

regards,

Natural

Show
Marco Scooter added a comment - 05/Mar/10 9:50 AM - edited try the callback ... void SelfGroupChatJoined(object sender, GroupChatJoinedEventArgs e) instead of ... 'OnGroupChatJoin' also use the .... Client.Self.GroupChatSessions dictionary Client.Self.InstantMessageGroup(uuid ,string); should work, atleast it does under windows. as for groupmessage mixed inbetween 'onInstantMessage'. private Dictionary<UUID, Group> _groupInfo = new Dictionary<UUID, Group>(); void GroupsCurrentGroups(object sender, CurrentGroupsEventArgs e) { _groupInfo.Clear(); _groupInfo = e.Groups; //foreach (var group in _groupInfo) //{ // MessageBox.Show(group.Key.ToString() + " :: " + group.Value.Name); //} } void SelfIm(object sender, InstantMessageEventArgs e) { if (e.IM.Dialog != InstantMessageDialog.MessageFromAgent) return; lock (_groupInfo) { if (_groupInfo.ContainsKey(e.IM.IMSessionID)) { // it's group IM var tempgroupname = _groupInfo[e.IM.IMSessionID].Name; } else { // it's a regular instant message switch (e.IM.Dialog) { case InstantMessageDialog.MessageFromAgent: //your code here break; case InstantMessageDialog.StartTyping: //your code here, still needs some extra logic here break; case InstantMessageDialog.StopTyping: //your code here, still needs some extra logic here break; } } } what doesn't work correct, atleast i for me or i'm doing something wrong. _Client.Self.RequestLeaveGroupChat(GroupID); and the callbacks void SelfGroupChatLeft(object sender, GroupChatLeftEventArgs e) { LogText("'SelfGroupChatLeft' Closed: " + e.SessionID, Color.FromKnownColor(KnownColor.ControlText)); } void SelfChatSessionMemberLeft(object sender, ChatSessionMemberLeftEventArgs e) { LogText("'SelfChatSessionMemberLeft' Closed: " + e.SessionID, Color.FromKnownColor(KnownColor.ControlText)); } none of does trigger, but you can't send groupim anymore, it work, but only partially .... seams. hope you can figger it out now. regards, Natural
Hide
Permalink
Peter W added a comment - 05/Mar/10 2:24 PM - edited

Thank Marco Scooter

And I found that my stupid

When I set up

Client.Settings.ENABLE_CAPS = true

'OnGroupChatJoin' can work

And Client.Self.InstantMessageGroup (uuid, string) is also

It seems there openmetaverse is no problem

Show
Peter W added a comment - 05/Mar/10 2:24 PM - edited Thank Marco Scooter And I found that my stupid When I set up Client.Settings.ENABLE_CAPS = true 'OnGroupChatJoin' can work And Client.Self.InstantMessageGroup (uuid, string) is also It seems there openmetaverse is no problem

People

  • Assignee:
    Unassigned
    Reporter:
    Peter W
Vote (0)
Watch (1)

Dates

  • Created:
    04/Mar/10 9:32 PM
    Updated:
    05/Mar/10 2:27 PM
    Resolved:
    05/Mar/10 2:24 PM

Agile

  • View on Board
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Radegast Metaverse Client. Try JIRA - bug tracking software for your team.