public void SendChatMessage() { ExTraceGlobals.OehCallTracer.TraceDebug((long)this.GetHashCode(), "InstantMessageEventHandler.SendChatMessage"); this.ThowIfInvalidProvider("SendChatMessage"); string text = (string)base.GetParameter("cId"); int chatSessionId; if (!int.TryParse(text, out chatSessionId)) { throw new OwaInvalidRequestException("The chat ID format is not valid:" + text); } InstantMessageProvider.ProviderMessage message = default(InstantMessageProvider.ProviderMessage); message.Body = (string)base.GetParameter("cMsg"); message.Format = (string)base.GetParameter("frmt"); message.ChatSessionId = chatSessionId; message.Recipients = (string[])base.GetParameter("sUris"); chatSessionId = base.UserContext.InstantMessageManager.Provider.SendMessage(message); this.Writer.WriteLine("{"); this.Writer.Write("_cid : '"); this.Writer.Write(chatSessionId.ToString(CultureInfo.InvariantCulture)); this.Writer.WriteLine("'"); this.Writer.Write("}"); if (Globals.ArePerfCountersEnabled) { OwaSingleCounters.IMTotalInstantMessagesSent.Increment(); } }
public void SendNewChatMessage() { ExTraceGlobals.OehCallTracer.TraceDebug((long)this.GetHashCode(), "InstantMessageEventHandler.SendNewChatMessage"); this.ThowIfInvalidProvider("SendNewChatMessage"); string[] array = (string[])base.GetParameter("sUris"); string text = (string)base.GetParameter("lDn"); string text2 = (array != null && array.Length > 0) ? array[0] : string.Empty; string text3 = null; bool flag = false; if (text != null) { text3 = this.GetSipUriFromLegacyDn(text, text2); this.ThrowIfSipInvalid(text3, false); if (text3 != text2) { array = new string[] { text3 }; flag = true; } } int num; if (array.Length < 1) { ExTraceGlobals.InstantMessagingTracer.TraceDebug((long)this.GetHashCode(), "InstantMessageEventHandler.SendNewChatMessage. Recipients are empty."); num = -1; } else { InstantMessageProvider.ProviderMessage message = default(InstantMessageProvider.ProviderMessage); message.Body = (string)base.GetParameter("cMsg"); message.Format = (string)base.GetParameter("frmt"); message.Recipients = array; int[] addressTypes = new int[1]; message.AddressTypes = addressTypes; if (base.IsParameterSet("iType")) { message.AddressTypes[0] = (int)base.GetParameter("iType"); } num = base.UserContext.InstantMessageManager.Provider.SendNewChatMessage(message); } this.Writer.WriteLine("{"); if (flag) { this.Writer.Write("_sip : '"); this.Writer.Write(text3); this.Writer.WriteLine("',"); } this.Writer.Write("_cid : '"); this.Writer.Write(num.ToString(CultureInfo.InvariantCulture)); this.Writer.WriteLine("'"); this.Writer.Write("}"); if (Globals.ArePerfCountersEnabled) { OwaSingleCounters.IMTotalInstantMessagesSent.Increment(); } }