コード例 #1
0
    private void Callback(ConversationResponseModel conversationResponseModelObject)
    {
        Debug.Log("audio path = " + conversationResponseModelObject.response_channels.voice);
        this.conversationResponseModelObject = conversationResponseModelObject;

        // Utils.talk = !Utils.talk;
        Transform[] gos = GetComponentsInChildren <Transform>();
        foreach (Transform go in gos)
        {
            if (go.name.Equals("head"))
            {
                Debug.Log("component = " + go.name + "  type " + go.GetType());
                go.GetComponent <HeadScript>().StartTalking(conversationResponseModelObject.response_channels, gameObject);
            }
        }
        Debug.Log("conversationResponseModelObject.name = " + conversationResponseModelObject.name);
        if (conversationResponseModelObject.name.Equals("sr_check_brezza"))
        {
            Debug.Log("got into state");

            var pc_anim = GameObject.FindGameObjectWithTag("Brezza");
            var c_anim  = pc_anim.GetComponent <Animator>();
            c_anim.SetBool("makeInvis", false);
            c_anim.SetBool("hasStarted", true);


            Invoke("DelayedAnimation_PedestalRot", 2f);
        }
    }
コード例 #2
0
        public static ConversationResponseModel ToModel(this Conversation conversation, IUserService userService, IMediaService mediaService, MediaSettings mediaSettings, int page)
        {
            var currentUser  = ApplicationContext.Current.CurrentUser;
            var userIds      = conversation.GetUserIds().ToArray();
            var replyCount   = 15;
            var totalReplies = conversation.ConversationReplies.Count;
            var replies      = conversation.ConversationReplies?.OrderBy(x => x.DateCreated).TakeLast(replyCount, (page - 1) * replyCount);
            var users        =
                userService.Get(x => userIds.Contains(x.Id))
                .ToList()
                .Select(x => x.ToModel(mediaService, mediaSettings))
                .ToDictionary(x => x.Id, x => x);
            var model = new ConversationResponseModel()
            {
                ConversationId      = conversation.Id,
                ConversationReplies = replies?.Select(x => x.ToModel()).ToList(),
                Users        = users,
                ReceiverId   = currentUser.Id == conversation.ReceiverId ? conversation.UserId : conversation.ReceiverId, //no matter who initiated conversation, we'll always send the other party as receiver
                ReceiverType = conversation.ReceiverType,
                UserId       = currentUser.Id,
                TotalReplies = totalReplies
            };

            return(model);
        }