コード例 #1
0
        public void ResetWithHome(HMHome home)
        {
            Accessories.Clear();
            Accessories.AddRange(home.Accessories);
            Accessories.SortByLocalizedName(a => a.Name);

            Rooms.Clear();
            Rooms.AddRange(home.GetAllRooms());
            Rooms.SortByLocalizedName(r => r.Name);

            Zones.Clear();
            Zones.AddRange(home.Zones);
            Zones.SortByLocalizedName(z => z.Name);

            ActionSets.Clear();
            ActionSets.AddRange(home.ActionSets);
            ActionSets.SortByTypeAndLocalizedName();

            Triggers.Clear();
            Triggers.AddRange(home.Triggers);
            Triggers.SortByLocalizedName(t => t.Name);

            ServiceGroups.Clear();
            ServiceGroups.AddRange(home.ServiceGroups);
            ServiceGroups.SortByLocalizedName(sg => sg.Name);
        }
コード例 #2
0
        public NSIndexPath Remove(HMActionSet actionSet)
        {
            var indexPath = IndexPathOfObject(actionSet);

            ActionSets.RemoveAt(indexPath.Row);
            return(indexPath);
        }
コード例 #3
0
        public void AddAction(Anchor anchor, ActionBase action)
        {
            // check for existing action set
            ActionSet loadedActions = ActionSets[anchor];

            // create action set if it is not there
            if (loadedActions == null)
            {
                loadedActions = new ActionSet();
                loadedActions.Anchors.Add(anchor);

                ActionSets.Add(loadedActions);
            }

            if (loadedActions != null)
            {
                loadedActions.Actions.Add(action);
            }
        }
コード例 #4
0
        internal IList <object> ExtractClassificationProperties(InferencePropertyBag classificationDiagnostics, IDocument document, InferenceClassificationTracking tracking)
        {
            object item   = null;
            object item2  = null;
            object obj    = null;
            object obj2   = null;
            object obj3   = null;
            object obj4   = null;
            object obj5   = null;
            object obj6   = null;
            object obj7   = null;
            object item3  = null;
            object item4  = null;
            object obj8   = null;
            string item5  = string.Empty;
            string item6  = string.Empty;
            string item7  = string.Empty;
            string item8  = string.Empty;
            string value  = null;
            string item9  = null;
            string text   = "Null";
            string item10 = null;
            string value2 = null;
            string item11 = null;
            object obj9   = null;
            object obj10  = null;
            string item12 = null;
            object item13 = null;
            object item14 = null;
            object item15 = null;
            object item16 = null;
            object item17 = null;
            object item18 = null;
            object item19 = null;
            object item20 = null;
            object obj11  = null;
            object item21 = null;

            if (classificationDiagnostics != null)
            {
                classificationDiagnostics.TryGetValue(InferenceSchema.InternetMessageId, out item2);
                classificationDiagnostics.TryGetValue(InferenceSchema.MessageClassificationTime, out obj);
                classificationDiagnostics.TryGetValue(InferenceSchema.OriginalDeliveryFolder, out obj2);
                classificationDiagnostics.TryGetValue(InferenceSchema.MarkedAsBulk, out obj3);
                classificationDiagnostics.TryGetValue(InferenceSchema.TimeTakenToClassify, out obj4);
                classificationDiagnostics.TryGetValue(InferenceSchema.ModelVersion, out obj5);
                classificationDiagnostics.TryGetValue(InferenceSchema.TimeTakenToInfer, out obj6);
                classificationDiagnostics.TryGetValue(InferenceSchema.ServerName, out obj7);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClassificationStatus, out item3);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClassificationStatusMessage, out item4);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClassificationAgentException, out obj8);
                classificationDiagnostics.TryGetValue(DocumentSchema.MailboxId, out item);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClutterValueBeforeOverride, out obj9);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClutterValueAfterOverride, out obj10);
                classificationDiagnostics.TryGetValue(InferenceSchema.Locale, out item13);
                classificationDiagnostics.TryGetValue(InferenceSchema.IsClutter, out item14);
                classificationDiagnostics.TryGetValue(InferenceSchema.TenantName, out item15);
                classificationDiagnostics.TryGetValue(InferenceSchema.IsUiEnabled, out item16);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClutterEnabled, out item18);
                classificationDiagnostics.TryGetValue(InferenceSchema.ClassificationEnabled, out item19);
                classificationDiagnostics.TryGetValue(InferenceSchema.MessageIdentifier, out item20);
                classificationDiagnostics.TryGetValue(InferenceSchema.HasBeenClutterInvited, out item21);
                classificationDiagnostics.TryGetValue(InferenceSchema.InferenceClassificationResult, out obj11);
                if (obj11 is InferenceClassificationResult)
                {
                    obj11 = (int)obj11;
                }
                if (obj8 != null)
                {
                    Exception ex = obj8 as Exception;
                    if (ex != null)
                    {
                        item8 = InferenceCommonUtility.StringizeException(ex);
                        if (ex.TargetSite != null)
                        {
                            item7 = ex.TargetSite.Name;
                        }
                        item5 = ex.GetType().Name;
                        if (ex.InnerException != null)
                        {
                            item6 = ex.InnerException.GetType().Name;
                        }
                    }
                }
                object obj12 = null;
                if (classificationDiagnostics.TryGetValue(InferenceSchema.PredictedActionsThresholds, out obj12))
                {
                    IDictionary <PredictedMessageAction, short> dictionary = obj12 as IDictionary <PredictedMessageAction, short>;
                    if (dictionary != null)
                    {
                        value = string.Join(",", from kvp in dictionary
                                            select string.Format("{0}:{1}", (int)kvp.Key, kvp.Value));
                        item9 = string.Join("#", from kvp in dictionary
                                            select string.Format("{0}:{1}", ActionSets.GetActionName(kvp.Key), kvp.Value));
                    }
                }
                obj12 = null;
                if (classificationDiagnostics.TryGetValue(InferenceSchema.ConversationClutterInformation, out obj12))
                {
                    ConversationClutterInformation conversationClutterInformation = obj12 as ConversationClutterInformation;
                    if (conversationClutterInformation != null)
                    {
                        text = conversationClutterInformation.State.ToString();
                    }
                }
                else
                {
                    text = null;
                }
                obj12 = null;
                IList <PredictedActionAndProbability> list = null;
                if (classificationDiagnostics.TryGetValue(InferenceSchema.PredictedActionsAll, out obj12))
                {
                    list = (obj12 as IList <PredictedActionAndProbability>);
                }
                if (list != null)
                {
                    StringBuilder stringBuilder  = new StringBuilder();
                    StringBuilder stringBuilder2 = new StringBuilder();
                    foreach (PredictedActionAndProbability predictedActionAndProbability in list)
                    {
                        stringBuilder2.Append(string.Format("{0}:{1},", (int)predictedActionAndProbability.Action, predictedActionAndProbability.Probability));
                        stringBuilder.Append(string.Format("{0}:{1}#", ActionSets.GetActionName(predictedActionAndProbability.Action), predictedActionAndProbability.Probability));
                    }
                    item10 = stringBuilder.ToString();
                    value2 = stringBuilder2.ToString();
                }
                obj12 = null;
                if (classificationDiagnostics.TryGetValue(InferenceSchema.UserFlightFeatures, out obj12))
                {
                    VariantConfigurationSnapshot variantConfigurationSnapshot = (VariantConfigurationSnapshot)obj12;
                    StringBuilder stringBuilder3 = new StringBuilder();
                    foreach (IFeature feature in variantConfigurationSnapshot.Inference.GetObjectsOfType <IFeature>().Values)
                    {
                        stringBuilder3.Append(string.Format("{0}:{1}#", feature.Name, feature.Enabled));
                    }
                    item12 = stringBuilder3.ToString();
                }
            }
            int?   num    = null;
            string item22 = null;
            string value3 = null;
            object item23 = null;
            object item24 = null;
            object item25 = null;
            object item26 = null;

            if (document != null)
            {
                object obj13 = null;
                obj13 = null;
                ModelData modelData = null;
                if (document.TryGetProperty(InferenceSchema.ActionModel, out obj13))
                {
                    modelData = (obj13 as ModelData);
                }
                obj13 = null;
                if (document.TryGetProperty(InferenceSchema.ConversationImportanceProperties, out obj13))
                {
                    IConversationProperties conversationProperties = obj13 as IConversationProperties;
                    if (conversationProperties != null)
                    {
                        num = new int?(conversationProperties.NumberOfPreviousMessages);
                    }
                }
                if (modelData != null)
                {
                    obj13 = null;
                    if (document.TryGetProperty(InferenceSchema.MessageFeatureVectorData, out obj13))
                    {
                        IMessageData messageData = obj13 as IMessageData;
                        if (messageData != null)
                        {
                            item22 = InferenceUtil.GetMessageFeatureValuesAsString(messageData.FeatureValues, modelData);
                            value3 = InferenceUtil.GetMessageFeatureValuesAsCompactString(messageData.FeatureValues, modelData);
                        }
                    }
                }
                obj13 = null;
                PredictedActionAndProbability[] array = null;
                if (document.TryGetProperty(InferenceSchema.PredictedActions, out obj13))
                {
                    array = (obj13 as PredictedActionAndProbability[]);
                }
                if (array != null)
                {
                    StringBuilder stringBuilder4 = new StringBuilder();
                    foreach (PredictedActionAndProbability predictedActionAndProbability2 in array)
                    {
                        stringBuilder4.Append(string.Format("{0}:{1}#", ActionSets.GetActionName(predictedActionAndProbability2.Action), predictedActionAndProbability2.Probability));
                    }
                    item11 = stringBuilder4.ToString();
                }
                document.TryGetProperty(InferenceSchema.ConversationId, out item23);
                document.TryGetProperty(InferenceSchema.ModelVersionBreadCrumb, out item26);
                obj13 = null;
                if (document.TryGetProperty(InferenceSchema.ModelVersionToLoad, out obj13))
                {
                    ModelVersionSelector.ModelVersionInfo modelVersionInfo = obj13 as ModelVersionSelector.ModelVersionInfo;
                    if (modelVersionInfo != null)
                    {
                        item24 = modelVersionInfo.Version;
                    }
                }
                document.TryGetProperty(InferenceSchema.ComputedClutterValue, out item25);
            }
            tracking.Trace("SV", InferenceCommonUtility.ServerVersion);
            tracking.Trace("CT", obj);
            tracking.Trace("ODF", obj2);
            tracking.Trace("MAB", obj3);
            tracking.Trace("TTC", obj4);
            tracking.Trace("SN", obj7);
            if (text != null)
            {
                tracking.Trace("CCS", text);
            }
            tracking.Trace("MV", obj5);
            tracking.Trace("CPMC", num ?? 0);
            tracking.Trace("PA", value2);
            tracking.Trace("TI", obj6);
            tracking.Trace("PAT", value);
            tracking.Trace("CVBOR", obj9);
            tracking.Trace("CVAOR", obj10);
            tracking.Trace("FVW", value3);
            return(new List <object>(this.columnCount)
            {
                DateTime.UtcNow,
                item,
                item2,
                item3,
                item4,
                obj7,
                InferenceCommonUtility.ServerVersion,
                item24,
                obj5,
                obj,
                obj4,
                obj2,
                obj3,
                text,
                num,
                item11,
                item10,
                item25,
                item9,
                obj6,
                item22,
                item5,
                item6,
                item7,
                item8,
                obj9,
                obj10,
                item12,
                item23,
                item14,
                item16,
                item15,
                item13,
                item26,
                item17,
                item18,
                item19,
                item20,
                obj11,
                item21
            });
        }
コード例 #5
0
        private void UnpackContent()
        {
            if (Content != null)
            {
                /*
                 * m_acSpotID = (char[]) oContentFldListForBlock.getNextFldData(CFieldList.c_nSTR, CNaviAgent.c_fieldidProxyValue, null);
                 * m_fPersistentBlockProxy = oContentFldListForBlock.getNumFieldOfType(CFieldList.c_nINT, CNaviAgent.c_fieldidProxyPersistence) > 0?true:false;
                 * m_nMaxBlocksToStoreInCache = oContentFldListForBlock.getIntFldData(CNaviAgent.c_fieldidProxyHistory);
                 */

                // find palette reference
                int paletteID = Content[NaviAgentFieldID.PaletteID].AsInteger() ?? 0;

                if (paletteID > 0)
                {
                    Palette = Core.Definitions.Find(ParentNode.ApplicationID, paletteID) as PaletteDefinition;
                }

                // unpack actionsets
                ActionSets.Load(Content, NaviAgentFieldID.ActionSet);

                // should we subscribe for back key notifications?
                subscribeAsBackKeyListener = (ActionSets[Anchor.Back] != null);

                /*
                 * bool fIsTopEvent = (oContentFldListForBlock.getIntFldData(CNaviAgent.c_fieldidIsTopEvent) == 1);
                 * if (fIsTopEvent)
                 * {
                 *  CNaviAgent.c_this.m_oBlockMgr.TopEventListener = this;
                 * }
                 */

                // form details
                FormID              = Content[NaviAgentFieldID.FormID].AsShort() ?? -1;
                FormSubmissionKey   = Content[NaviAgentFieldID.SubmissionKey].AsString();
                FormSubmissionValue = Content[NaviAgentFieldID.SubmissionValue].AsString();

                if (FormSubmissionKey != null)
                {
                    /*
                     * // allow block manager (bonded) to modify the value.
                     * m_acSubmissionValue = CNaviAgent.c_this.m_oBlockMgr.checkModifySubmissionValue(m_acSubmissionKey, m_acSubmissionValue);
                     */
                }

                if ((FormSubmissionValue != null) && FormSubmissionValue.StartsWith(Hint))
                {
                    FormSubmissionHint  = FormSubmissionValue.Substring(Hint.Length, FormSubmissionValue.Length - Hint.Length);
                    FormSubmissionValue = null;
                }

                // unpacking block signpost
                Signpost = Content[NaviAgentFieldID.Signpost].AsShort() ?? FieldList.FieldNotFound;

                if ((ParentNode != null) && (Signpost != FieldList.FieldNotFound))
                {
                    ParentNode.RegisterBlockSignpost(this);
                }

                // unpacking background image
                FieldList bgData = Content[NaviAgentFieldID.BackgroundImage] as FieldList;

                if (bgData != null)
                {
                    DisplayDataCollection ddc = DisplayData.Parse(bgData);

                    if ((ddc != null) && (ddc.Count > 0))
                    {
                        BlockBackground = new ImageBackground(ddc[0]);
                        Core.UI.ReferencedContent.Add(ddc[0]);

                        Children.Add(BlockBackground);
                    }
                }
            }
        }
コード例 #6
0
        public NSIndexPath IndexPathOfObject(HMActionSet actionSet)
        {
            var index = ActionSets.IndexOf(actionSet);

            return(index < 0 ? null : BuildIndexPath(index, HomeKitObjectSection.ActionSet));
        }
コード例 #7
0
 public NSIndexPath Add(HMActionSet actionSet)
 {
     ActionSets.Add(actionSet);
     ActionSets.SortByTypeAndLocalizedName();
     return(IndexPathOfObject(actionSet));
 }