/// <summary> /// Sends a Message to other user. /// </summary> /// <param name="message">Message text</param> /// <returns>Is operation successful</returns> public void SendMessage(string message) { var extraParams = new ExtraParams(); extraParams.AddNew(ExtraParamsList.save_to_history, "1"); extraParams.AddNew(ExtraParamsList.dialog_id, dialogId); quickbloxClient.ChatXmppClient.SendMessage(groupJid, message, extraParams, dialogId, null, MessageType.Groupchat); }
/// <summary> /// Sends an attachemnt to another user. /// </summary> /// <param name="attachment">Attachment</param> /// <returns></returns> public void SendAttachemnt(AttachmentTag attachment) { var extraParams = new ExtraParams(); extraParams.AddNew(ExtraParamsList.save_to_history, "1"); extraParams.AddNew(ExtraParamsList.dialog_id, dialogId); extraParams.Add(attachment); quickbloxClient.ChatXmppClient.SendMessage(groupJid, "Attachment", extraParams, dialogId, null, MessageType.Groupchat); }
private void SendFriendsNotification(string messageText, NotificationTypes notificationType) { var extraParams = new ExtraParams(); extraParams.AddNew(ExtraParamsList.save_to_history, "1"); extraParams.AddNew(ExtraParamsList.dialog_id, dialogId); extraParams.AddNew(ExtraParamsList.notification_type, ((int)notificationType).ToString()); quickbloxClient.ChatXmppClient.SendMessage(otherUserJid, messageText, extraParams, dialogId, null); }
private void NotifyAbountGroupOccupantsOnUpdate(IList <int> currentOccupantsIds, IList <int> addedOccupantsIds, IList <int> deletedOccupantsIds, DateTime updatedAt) { if (currentOccupantsIds == null) { throw new ArgumentNullException(nameof(currentOccupantsIds)); } string currentOccupants = string.Join(",", currentOccupantsIds); var extraParams = new ExtraParams(); extraParams.AddNew(ExtraParamsList.save_to_history, "1"); extraParams.AddNew(ExtraParamsList.dialog_id, dialogId); extraParams.AddNew(ExtraParamsList.notification_type, NotificationTypes.GroupUpdate.ToIntString()); extraParams.AddNew(ExtraParamsList.current_occupant_ids, currentOccupants); extraParams.AddNew(ExtraParamsList.room_updated_date, updatedAt.ToUnixEpoch().ToString()); extraParams.AddNew(ExtraParamsList.dialog_update_info, DialogUpdateInfos.ModifiedOccupantsList.ToIntString()); if (addedOccupantsIds != null && addedOccupantsIds.Any()) { string addedOccupants = string.Join(",", addedOccupantsIds); extraParams.AddNew(ExtraParamsList.added_occupant_ids, addedOccupants); } if (deletedOccupantsIds != null && deletedOccupantsIds.Any()) { string deletedOccupants = string.Join(",", deletedOccupantsIds); extraParams.AddNew(ExtraParamsList.deleted_occupant_ids, deletedOccupants); } quickbloxClient.ChatXmppClient.SendMessage(groupJid, "Notification Message", extraParams, dialogId, null, MessageType.Groupchat); }
private void SendGroupInfoSystemMessage(int userId, Dialog dialogInfo) { var extraParams = new ExtraParams(); extraParams.AddNew(ExtraParamsList.moduleIdentifier, SystemMessage.SystemMessageModuleIdentifier); extraParams.AddNew(ExtraParamsList.notification_type, NotificationTypes.GroupCreate.ToIntString()); extraParams.AddNew(ExtraParamsList.date_sent, DateTime.UtcNow.ToUnixEpoch().ToString()); extraParams.AddNew(ExtraParamsList.room_updated_date, dialogInfo.UpdateAt.ToUnixEpoch().ToString()); extraParams.AddNew(ExtraParamsList.dialog_id, dialogInfo.Id); extraParams.AddNew(ExtraParamsList.room_name, dialogInfo.Name); extraParams.AddNew(ExtraParamsList.current_occupant_ids, string.Join(",", dialogInfo.OccupantsIds)); extraParams.AddNew(ExtraParamsList.type, ((int)dialogInfo.Type).ToString()); if (!string.IsNullOrEmpty(dialogInfo.Photo)) { extraParams.AddNew(ExtraParamsList.room_photo, dialogInfo.Photo); } var userJid = ChatXmppClient.BuildJid(userId, quickbloxClient.ApplicationId, quickbloxClient.ChatEndpoint); quickbloxClient.ChatXmppClient.SendMessage(userJid, "Notification Message", extraParams, dialogId, null, MessageType.Headline); }
/// <summary> /// Sends notification group chat Message that group chat name has been changed. /// </summary> /// <param name="groupName">New group chat name</param> /// <param name="updatedAt">DateTime when a group was updated (from update response)</param> /// <returns>Is operation successful</returns> public void NotifyGroupNameChanged(string groupName, DateTime updatedAt) { var extraParams = new ExtraParams(); extraParams.AddNew(ExtraParamsList.save_to_history, "1"); extraParams.AddNew(ExtraParamsList.dialog_id, dialogId); extraParams.AddNew(ExtraParamsList.notification_type, NotificationTypes.GroupUpdate.ToIntString()); extraParams.AddNew(ExtraParamsList.room_name, groupName); extraParams.AddNew(ExtraParamsList.room_updated_date, updatedAt.ToUnixEpoch().ToString()); extraParams.AddNew(ExtraParamsList.dialog_update_info, DialogUpdateInfos.UpdatedDialogName.ToIntString()); quickbloxClient.ChatXmppClient.SendMessage(groupJid, "Notification Message", extraParams, dialogId, null, MessageType.Groupchat); }