Esempio n. 1
0
 public Event(ScribeConnection connection) : base(connection,
                                                  Constants.Event_Name, Constants.Event_FullName, Constants.Event_Description,
                                                  Constants.QueryAction.Query, Constants.QueryAction.Create)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 2
0
 /// <summary>
 /// Session Track
 /// Parents: Session
 /// Children: 
 /// </summary>
 /// <param name="accountId"></param>
 /// <param name="eventId"></param>
 public SessionTrack(ScribeConnection connection)
     : base(connection,
     Constants.SessionTrack_Name, Constants.SessionTrack_FullName, Constants.SessionTrack_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 3
0
 public Meeting(ScribeConnection connection)
     : base(connection,
     Constants.Meeting_Name, Constants.Meeting_FullName, Constants.Meeting_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
 public FinancialTransaction(ScribeConnection connection)
     : base(connection,
     Constants.FinancialTranstion_Name, Constants.FinancialTranstion_FullName, Constants.FinancialTranstion_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 5
0
 /// <summary>
 /// Speaker
 /// Parents: Event, session
 /// Children:
 /// </summary>
 /// <param name="accountId"></param>
 /// <param name="eventId"></param>
 public Speaker(ScribeConnection connection)
     : base(connection,
     Constants.Speaker_Name, Constants.Speaker_FullName, Constants.Speaker_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 6
0
 public Attendee(ScribeConnection connection)
     : base(connection, Constants.Attendee_FullName, 
     Constants.Attendee_Name, Constants.Attendee_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 7
0
 public RegSession(ScribeConnection connection)
     : base(connection,
     Constants.RegSession_Name, Constants.RegSession_FullName, Constants.RegSession_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 8
0
 public Event(ScribeConnection connection)
     : base(connection,
     Constants.Event_Name, Constants.Event_FullName, Constants.Event_Description, 
     Constants.QueryAction.Query, Constants.QueryAction.Create)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 9
0
        public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request)
        {
            RestClient rc = ScribeUtility.Initialize(request.DataStore.GetValue("ScribeUsername"), request.DataStore.GetValue("ScribePassword"));

            string apiToken = request.DataStore.GetValue("ScribeApiToken");
            string orgId    = request.DataStore.GetValue("ScribeOrganizationId");

            await ScribeUtility.InstallConnector(rc, orgId, CONNECTOR_ID);

            ScribeConnection connection = new ScribeConnection
            {
                ConnectorId = CONNECTOR_ID,
                Color       = "#FFEA69A6",
                Name        = ScribeUtility.BPST_SOURCE_NAME,
                Properties  = new List <ScribeKeyValue>()
            };

            string username = request.DataStore.GetValue("D365Username");

            // Set authentication
            ScribeKeyValue kvp = new ScribeKeyValue {
                Key = "DeploymentType", Value = ScribeUtility.AesEncrypt(apiToken, "Online")
            };                                                                                                                        // OnPremise

            connection.Properties.Add(kvp);
            kvp = new ScribeKeyValue {
                Key = "Url", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("ConnectorUrl"))
            };
            connection.Properties.Add(kvp);
            // Set CRM user name
            kvp = new ScribeKeyValue {
                Key = "UserId", Value = ScribeUtility.AesEncrypt(apiToken, username.Split('\\').Last())
            };
            connection.Properties.Add(kvp);
            kvp = new ScribeKeyValue {
                Key = "Domain", Value = ScribeUtility.AesEncrypt(apiToken, username.Split('\\').First())
            };
            connection.Properties.Add(kvp);
            // Set CRM user password
            kvp = new ScribeKeyValue {
                Key = "Password", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("D365Password"))
            };
            connection.Properties.Add(kvp);
            // Set CRM pick list
            kvp = new ScribeKeyValue {
                Key = "DisplayPickListNames", Value = ScribeUtility.AesEncrypt(apiToken, "true")
            };
            connection.Properties.Add(kvp);
            // Set organization name
            kvp = new ScribeKeyValue {
                Key = "Organization", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("OrganizationName"))
            };
            connection.Properties.Add(kvp);

            await rc.Post(string.Format(CultureInfo.InvariantCulture, URL_CONNECTIONS, orgId), JsonConvert.SerializeObject(connection, Formatting.Indented));

            return(new ActionResponse(ActionStatus.Success, JsonUtility.GetEmptyJObject()));
        }
        public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request)
        {
            RestClient rc = ScribeUtility.Initialize(request.DataStore.GetValue("ScribeUsername"), request.DataStore.GetValue("ScribePassword"));

            string apiToken = request.DataStore.GetValue("ScribeApiToken");
            string orgId    = request.DataStore.GetValue("ScribeOrganizationId");

            await ScribeUtility.InstallConnector(rc, orgId, CONNECTOR_ID);

            ScribeConnection connection = new ScribeConnection
            {
                ConnectorId = CONNECTOR_ID,
                Color       = "#FFEA69A6",
                Name        = ScribeUtility.BPST_SOURCE_NAME,
                Properties  = new List <ScribeKeyValue>()
            };

            // Set discovery URL
            ScribeKeyValue kvp = new ScribeKeyValue {
                Key = "Url", Value = ScribeUtility.AesEncrypt(apiToken, $"https://{request.DataStore.GetValue("SalesforceUrl")}/services/Soap/u/33.0")
            };

            connection.Properties.Add(kvp);
            // Set CRM user name
            kvp = new ScribeKeyValue {
                Key = "UserId", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("SalesforceUser"))
            };
            connection.Properties.Add(kvp);
            // Set CRM user password
            kvp = new ScribeKeyValue {
                Key = "Password", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("SalesforcePassword"))
            };
            connection.Properties.Add(kvp);
            // Set bulk APIs
            kvp = new ScribeKeyValue {
                Key = "UseBulkApiRS", Value = ScribeUtility.AesEncrypt(apiToken, "true")
            };
            connection.Properties.Add(kvp);
            // Set metadata refresh
            kvp = new ScribeKeyValue {
                Key = "RefeshMetaDataUponReconnect", Value = ScribeUtility.AesEncrypt(apiToken, "true")
            };
            connection.Properties.Add(kvp);
            // Set organization name
            kvp = new ScribeKeyValue {
                Key = "SecurityToken", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("SalesforceToken"))
            };
            connection.Properties.Add(kvp);

            await rc.Post(string.Format(ScribeUtility.URL_CONNECTIONS, orgId), JsonUtility.Serialize(connection));

            return(new ActionResponse(ActionStatus.Success));
        }
        public override async Task <ActionResponse> ExecuteActionAsync(ActionRequest request)
        {
            RestClient rc = ScribeUtility.Initialize(request.DataStore.GetValue("ScribeUsername"), request.DataStore.GetValue("ScribePassword"));

            string apiToken = request.DataStore.GetValue("ScribeApiToken");
            string orgId    = request.DataStore.GetValue("ScribeOrganizationId");

            await ScribeUtility.InstallConnector(rc, orgId, CONNECTOR_ID);

            ScribeConnection connection = new ScribeConnection
            {
                ConnectorId = CONNECTOR_ID,
                Color       = "#FFEA69A6",
                Name        = ScribeUtility.BPST_TARGET_NAME,
                Properties  = new List <ScribeKeyValue>()
            };

            // Set authentication
            ScribeKeyValue kvp = new ScribeKeyValue
            {
                Key   = "WindowsAuthentication",
                Value = request.DataStore.GetJson("SqlCredentials", "AuthType").EqualsIgnoreCase("Windows") ? ScribeUtility.AesEncrypt(apiToken, "true") : ScribeUtility.AesEncrypt(apiToken, "false")
            };

            connection.Properties.Add(kvp);
            // Set server name
            kvp = new ScribeKeyValue {
                Key = "Server", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("Server"))
            };
            connection.Properties.Add(kvp);
            // Set database
            kvp = new ScribeKeyValue {
                Key = "Database", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("Database"))
            };
            connection.Properties.Add(kvp);
            // Set user name
            kvp = new ScribeKeyValue {
                Key = "UserName", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("Username"))
            };
            connection.Properties.Add(kvp);
            // Set password
            kvp = new ScribeKeyValue {
                Key = "Password", Value = ScribeUtility.AesEncrypt(apiToken, request.DataStore.GetValue("Password"))
            };
            connection.Properties.Add(kvp);

            await rc.Post(string.Format(ScribeUtility.URL_CONNECTIONS, orgId), JsonUtility.Serialize(connection), null);

            return(new ActionResponse(ActionStatus.Success));
        }
Esempio n. 12
0
        internal MethodResult Create(DataEntity dataEntity, ScribeConnection v2Connection)
        {
            if (!dataEntity.Properties.ContainsKey(Constants.Event_NameProperty))
                throw new System.Exception("The data enitity is missing the name property");
            var name = dataEntity.Properties[Constants.Event_NameProperty].ToString();
            var result = DataServicesClient.CreateEvent(v2Connection, name);

            if (result.HasError)
                return new MethodResult() {Success = false, ErrorInfo = new ErrorResult() {
                    Description = result.Error.ToString()
                } };

            return updateEvent(result.EventId, dataEntity);
        }
Esempio n. 13
0
 public BaseObject(ScribeConnection connection, string name, string fullName, string description,
                   params Constants.QueryAction[] actions)
 {
     this.Connection          = connection;
     FullName                 = fullName;
     Description              = description;
     Hidden                   = false;
     Name                     = name;
     SupportedActionFullNames = new List <string>();
     if (actions == null || !actions.Any())
     {
         SupportedActionFullNames.Add(Constants.QueryAction.Query.ToString());
     }
     else
     {
         foreach (var a in actions)
         {
             SupportedActionFullNames.Add(a.ToString());
         }
     }
 }
Esempio n. 14
0
        internal MethodResult Create(DataEntity dataEntity, ScribeConnection v2Connection)
        {
            if (!dataEntity.Properties.ContainsKey(Constants.Event_NameProperty))
            {
                throw new System.Exception("The data enitity is missing the name property");
            }
            var name   = dataEntity.Properties[Constants.Event_NameProperty].ToString();
            var result = DataServicesClient.CreateEvent(v2Connection, name);

            if (result.HasError)
            {
                return new MethodResult()
                       {
                           Success = false, ErrorInfo = new ErrorResult()
                           {
                               Description = result.Error.ToString()
                           }
                       }
            }
            ;

            return(updateEvent(result.EventId, dataEntity));
        }
Esempio n. 15
0
 /// <summary>
 /// Speaker
 /// Parents: Event, session
 /// Children:
 /// </summary>
 /// <param name="accountId"></param>
 /// <param name="eventId"></param>
 public Speaker(ScribeConnection connection) : base(connection,
                                                    Constants.Speaker_Name, Constants.Speaker_FullName, Constants.Speaker_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 16
0
 public BaseObject(ScribeConnection connection, string name, string fullName, string description) :
     this(connection, name, fullName, description, Constants.QueryAction.Query)
 {
 }
Esempio n. 17
0
 public RegSession(ScribeConnection connection) : base(connection,
                                                       Constants.RegSession_Name, Constants.RegSession_FullName, Constants.RegSession_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 18
0
 public Attendee(ScribeConnection connection) : base(connection, Constants.Attendee_FullName,
                                                     Constants.Attendee_Name, Constants.Attendee_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 19
0
 public Meeting(ScribeConnection connection) : base(connection,
                                                    Constants.Meeting_Name, Constants.Meeting_FullName, Constants.Meeting_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
 public FinancialTransaction(ScribeConnection connection) : base(connection,
                                                                 Constants.FinancialTranstion_Name, Constants.FinancialTranstion_FullName, Constants.FinancialTranstion_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }
Esempio n. 21
0
 /// <summary>
 /// Session Track
 /// Parents: Session
 /// Children:
 /// </summary>
 /// <param name="accountId"></param>
 /// <param name="eventId"></param>
 public SessionTrack(ScribeConnection connection) : base(connection,
                                                         Constants.SessionTrack_Name, Constants.SessionTrack_FullName, Constants.SessionTrack_Description)
 {
     RelationshipDefinitions = getRelationshipDefinitions();
     setPropertyDefinitions();
 }