Kalo te dokumentacioni
Ruby

Instalimi

Një gem, pa varësi në kohën e ekzekutimit, Ruby 3.2 e më lart.

Instalimi

Lëshimi aktual është 0.0.1. Ka një metodë për çdo metodë të TypeScript SDK-së, nën të njëjtin emër në snake_case, dhe kontrolli i përputhshmërisë i gem-it e dështon build-in kur njëra mungon ose dërgon një kërkesë të ndryshme.

bundle add openemail
send_email.rb
require "openemail" OpenEmail.init(api_key: ENV.fetch("OPENEMAIL_API_KEY")) email = OpenEmail.emails.send(  from: "Acme Billing <[email protected]>",  to: "[email protected]",  subject: "Your September invoice",  html: "<p>Invoice attached.</p>") puts email[:id], email[:status]

OpenEmail.init e konfiguron klientin e përbashkët një herë, dhe që atëherë OpenEmail.emails, OpenEmail.threads dhe çdo hapësirë tjetër emrash e përdorin atë, në çdo skedar. Nëse e kapërceni, thirrja e parë e ndërton klientin nga OPENEMAIL_API_KEY.

Një përgjigje është JSON-i i analizuar si një Hash me çelësa Symbol, ndaj email[:id] lexon id-në. Çelësat ruajnë emrat e API-së; prandaj një fushë si scheduledAt mbetet në camelCase, ndërsa metodat dhe opsionet e tyre janë në snake_case.

Kthimi i send nuk do të thotë se mesazhi ka ikur. Një dërgim i planifikuar ose i anulueshëm kthehet si queued ose scheduled dhe përfundon më vonë. Lexoni status, jo faktin që thirrja u kthye.

Ku funksionon

Ruby 3.2 e më lart, pa varësi në kohën e ekzekutimit. Klienti HTTP është Net::HTTP nga biblioteka standarde, me një grup lidhjesh që mbahen të hapura (keep-alive), ndaj një kërkesë e dytë drejt API-së ripërdor lidhjen që hapi e para.

Një klient i vetëm mund të ndahet pa rrezik mes fijeve të ekzekutimit, ndaj një procesi Puma ose Sidekiq i duhet vetëm një. Pas një fork-u, si në modalitetin cluster të Puma-s, në Unicorn ose Resque, procesi bir hap lidhjet e veta në vend që të ripërdorë ato të prindit.

Klienti mban një çelës API të hapësirës së punës që mund të dërgojë postë dhe të lexojë kutinë postare, prandaj vendi i tij është në një server, në një punë në sfond ose në një mjet që ekzekutohet në makinën tuaj. Mbajeni çelësin te Rails.application.credentials ose në një variabël mjedisi, kurrë në kod.