public BulkAssignJob BulkAssignLabels(List <User> usersList, Label label) { if (usersList.Count > bulkActionCap) { throw new FoundryException("The limit for the bulk add function is 500 users!"); } Console.WriteLine("Assigning " + label.Name + " to users provided."); RestRequest request = new RestRequest("/{version}/admin/bulk_actions/category", Method.POST); request.AddParameter("version", _ver, ParameterType.UrlSegment); request.AddParameter("application/json", API.BulkUserLabelJson(usersList, label), ParameterType.RequestBody); request.AddParameter("Authorization", _token.token_type + " " + _token.access_token, ParameterType.HttpHeader); IRestResponse response = _client.Execute(request); HttpStatusCode statusCode = response.StatusCode; int numericCode = (int)statusCode; if (numericCode != 201) { throw new FoundryException(response.ErrorMessage, numericCode, response.Content); } JobJson jobJson = JsonConvert.DeserializeObject <JobJson>(response.Content); BulkAssignJob job = jobJson.BulkAssignJob; Console.WriteLine("Labels added to " + usersList.Count + " users."); return(job); }
public static void AddResumeData(ResumeDbContext context, string dateFolder) { try { if (dateFolder[0] == 'd') { ResumeFiles files = new ResumeFiles(dateFolder); // Utilities.LoadType<Resume>(context, files.Resume, writeJson); if (File.Exists(files.Resume)) { Resume resume = Utilities.SerializeYml <Resume>(files.Resume); context.Add(resume); } if (File.Exists(files.Education)) { EducationJson educationJson = Utilities.SerializeYml <EducationJson>(files.Education); IList <Education> educations = educationJson.Educations; AddItems(context, educations); } if (File.Exists(files.Job)) { JobJson jobJson = Utilities.SerializeYml <JobJson>(files.Job); IList <Job> jobs = jobJson.Jobs; AddItems(context, jobs); } if (File.Exists(files.Skill)) { SkillJson skillJson = Utilities.SerializeYml <SkillJson>(files.Skill); IList <Skill> skills = skillJson.Skills; AddItems(context, skills); } if (File.Exists(files.Social)) { SocialJson socialJson = Utilities.SerializeYml <SocialJson>(files.Social); IList <Social> socials = socialJson.Socials; AddItems(context, socials); } if (File.Exists(files.SpokenLanguages)) { SpokenLanguagesJson spokenLanguagesJson = Utilities.SerializeYml <SpokenLanguagesJson>(files.SpokenLanguages); IList <SpokenLanguages> spokenLanguages = spokenLanguagesJson.SpokenLanguages; AddItems(context, spokenLanguages); } context.SaveChanges(); } } catch (Exception e) { Console.WriteLine("##############################"); Console.WriteLine("Resume Data Add Fail"); Console.WriteLine(e); } }
static void Main(string[] args) { int numRecs = 0; byte[] bMaxMessages = Encoding.UTF8.GetBytes(maxMessages); byte[] mysecretyKey = ConvertHexStringToByteArray(SecretKey); HttpWebRequest AgentOutEndPoint = (HttpWebRequest)HttpWebRequest.Create("https://connect-sbx.dispatch.me/agent/out"); // the production API is https://connect.dispatch.me AgentOutEndPoint.Method = "POST"; AgentOutEndPoint.Headers.Add("X-Dispatch-Key", PublicKey); AgentOutEndPoint.ContentType = "application/json"; do { string OutSignature = GetSignatureHash(mysecretyKey, bMaxMessages); AgentOutEndPoint.Headers.Add("X-Dispatch-Signature", OutSignature); Stream outStream = AgentOutEndPoint.GetRequestStream(); outStream.Write(bMaxMessages, 0, bMaxMessages.Length); HttpWebResponse ResponseAgentOut = (HttpWebResponse)AgentOutEndPoint.GetResponse(); Stream receiveOutStream = ResponseAgentOut.GetResponseStream(); StreamReader readOutStream = new StreamReader(receiveOutStream, Encoding.UTF8); String json = readOutStream.ReadToEnd(); AgentOutJson[] agentOut = JsonConvert.DeserializeObject <AgentOutJson[]>(json); MessageJson m; numRecs = agentOut.Length; foreach (AgentOutJson rec in agentOut) { m = rec.Message; JobJson payload = m.Request.Payload.Actions[0].Put.Job; // ########################################################## // Download the payload for subsequent processing to your system // VERY IMPORTANT: This operation should take a few millisecs for each record - if it will take more please reach out to your Dispatch contact // ########################################################## var receipt = $"{{\"Receipt\":\"{m.Receipt}\",\"ProcedureID\":\"{m.Request.ProcedureID}\",\"Result\":\"Success\"}}"; byte[] bReceipt = Encoding.UTF8.GetBytes(receipt); String AckSignature = GetSignatureHash(mysecretyKey, bReceipt); HttpWebRequest AgentAckEndPoint = (HttpWebRequest)HttpWebRequest.Create("https://connect-sbx.dispatch.me/agent/ack"); AgentAckEndPoint.Method = "POST"; AgentAckEndPoint.Headers.Add("X-Dispatch-Signature", AckSignature); AgentAckEndPoint.Headers.Add("X-Dispatch-Key", PublicKey); AgentAckEndPoint.ContentType = "application/json"; Stream ackStream = AgentAckEndPoint.GetRequestStream(); ackStream.Write(bReceipt, 0, bReceipt.Length); HttpWebResponse ResponseAgentAck = (HttpWebResponse)AgentAckEndPoint.GetResponse(); Stream receiveAckStream = ResponseAgentAck.GetResponseStream(); StreamReader readAckstream = new StreamReader(receiveAckStream, Encoding.UTF8); } } while (numRecs >= 10); }
public static void Seed(ResumeDbContext context) { AddItems(context, EducationJson.LoadJson("Data/Seed/carlos_resume_educations.json").Educations); AddItems(context, JobJson.LoadJson("Data/Seed/carlos_resume_jobs.json").Jobs); context.Add(Resume.LoadJson("Data/Seed/carlos_resume_about.json")); AddItems(context, SkillJson.LoadJson("Data/Seed/carlos_resume_skills.json").Skills); AddItems(context, SocialJson.LoadJson("Data/Seed/carlos_resume_socials.json").Socials); AddItems(context, SpokenLanguagesJson.LoadJson("Data/Seed/carlos_resume_languages.json").SpokenLanguages); context.SaveChanges(); AddItems(context, ResumeEducationsJson.LoadJson("Data/Seed/carlos_resume_resumeeducations.json").ResumeEducations); AddItems(context, ResumeJobsJson.LoadJson("Data/Seed/carlos_resume_resumejobs.json").ResumeJobs); AddItems(context, ResumeSkillsJson.LoadJson("Data/Seed/carlos_resume_resumeskills.json").ResumeSkills); AddItems(context, ResumeSocialsJson.LoadJson("Data/Seed/carlos_resume_resumesocials.json").ResumeSocials); AddItems(context, ResumeSpokenLanguagesJson.LoadJson("Data/Seed/carlos_resume_resumespokenlanguages.json").ResumeSpokenLanguages); context.SaveChanges(); }
public BulkAssignJob GetJobById(string JobId) { RestRequest request = new RestRequest("/{version}/admin/bulk_actions/category/{id}", Method.GET); request.AddParameter("version", _ver, ParameterType.UrlSegment); request.AddParameter("id", JobId, ParameterType.UrlSegment); request.AddParameter("Authorization", _token.token_type + " " + _token.access_token, ParameterType.HttpHeader); IRestResponse response = _client.Execute(request); HttpStatusCode statusCode = response.StatusCode; int numericCode = (int)statusCode; if (numericCode != 200) { throw new FoundryException(response.ErrorMessage, numericCode, response.Content); } JobJson jobJson = JsonConvert.DeserializeObject <JobJson>(response.Content); BulkAssignJob job = jobJson.BulkAssignJob; return(job); }