public static AndroidJavaObject GetTypingStatusAJO(TypingStatus typingStatus)
 {
     using (var msgContentClass = new AndroidJavaClass("im.getsocial.sdk.chat.TypingStatus"))
     {
         return(msgContentClass.CallStatic <AndroidJavaObject>("fromInt", (int)typingStatus));
     }
 }
Esempio n. 2
0
 void OnPrivateRoomTypingStatusReceived(IPrivateChatRoom room, User user, TypingStatus typingStatus)
 {
     foreach (var listener in typingStatusListeners)
     {
         listener.OnPrivateRoomTypingStatusReceived(room, user, typingStatus);
     }
 }
        public static void OnTypingStatusReceivedCallback(IntPtr actionPtr, string roomTopic, int roomType, string serializedUser, int typingStatus)
        {
#if DEVELOPMENT_BUILD
            UnityEngine.Debug.Log(string.Format("Received typing status, roomId: {0}, roomType: {1}, user: {2}, typing status: {3}",
                                                roomTopic, roomType, serializedUser, typingStatus));
#endif

            if (actionPtr == IntPtr.Zero)
            {
                return;
            }

            var          user = new User(new JSONObject(serializedUser));
            TypingStatus receivedTypingStatus = (TypingStatus)typingStatus;

            if (roomType == RoomTypePublic)
            {
                var room = new PublicChatRoomIOSImpl(roomTopic);
                actionPtr.Cast <Action <IPublicChatRoom, User, TypingStatus> >().Invoke(room, user, receivedTypingStatus);
            }
            else if (roomType == RoomTypePrivate)
            {
                var room = new PrivateChatRoomIOSImpl(roomTopic);
                actionPtr.Cast <Action <IPrivateChatRoom, User, TypingStatus> >().Invoke(room, user, receivedTypingStatus);
            }
            else
            {
                throw new InvalidOperationException("Unknown room type: " + roomType);
            }
        }
Esempio n. 4
0
 public void SetTypingStatus(TypingStatus typingStatus,
                             Action onSuccess, Action <string> onFailure)
 {
     _sendTypingStatus(roomTopic, (int)typingStatus,
                       onSuccess.GetPointer(),
                       onFailure.GetPointer(),
                       GetSocialNativeBridgeIOS.CompleteCallback,
                       GetSocialNativeBridgeIOS.FailureCallback);
 }
Esempio n. 5
0
 public void SetTypingStatus(TypingStatus typingStatus, Action onSuccess, Action <string> onFailure)
 {
     AndroidUtils.RunOnUiThread(() =>
     {
         chatRoomJavaObject.Call("setTypingStatus",
                                 AndroidChatUtils.GetTypingStatusAJO(typingStatus),
                                 new OperationVoidCallbackProxy(onSuccess, onFailure));
     });
 }
Esempio n. 6
0
        private void SendTypingNotification(TypingStatus type)
        {
            if (!IsViewingChat)
            {
                return;
            }

            Events.SendUserCommand(CommandDefinitions.ClientSendTypingStatus,
                                   new[] { type.ToString().ToLower(), ConversationWith.Name });
        }
 public ParticipantTypingStatusEventArgs(Participant participant, TypingStatus typingStatus)
 {
     Participant  = participant;
     TypingStatus = typingStatus;
 }
Esempio n. 8
0
 private void SendTypingNotification(TypingStatus type)
 {
     Events.SendUserCommand(CommandDefinitions.ClientSendTypingStatus,
         new[] {type.ToString(), ConversationWith.Name});
 }
Esempio n. 9
0
        private void SendTypingNotification(TypingStatus type)
        {
            if (!IsViewingChat) return;

            Events.SendUserCommand(CommandDefinitions.ClientSendTypingStatus,
                new[] {type.ToString().ToLower(), ConversationWith.Name});
        }