Vai al contenuto

Sincronizzazione Agenda - Calendar

list.php - Calendar -> KPN

Demone che interroga il calendario di google collegato all'operatore. Il programma tiene salvato su una tabella data e ora ultimo aggiornamento e scarichera' solo gli eventi con data aggiornamento maggiore. Di seguito vengono elencati gli eventi trattati:

  • A) L'evento e' su tutto il giorno. Si modifica impostando ora inizio = 08:30 e ora fine = 18:30
  • B) L'evento X e' su piu' giorni. Viene calcolato il numero di giorni (n) nei quali e' presente l'evento. X viene modificato impostando data_fine=data_inizio. Vengono creati X1...Xn eventi uguali ma con data incrementata fino a data_inizio+n giorni
  • C) Se l'evento non rientra nei casi a e b:

C1) Controllo se l'event ID e' gia' presente nella tabella APCRMATTOP.

C.1.1) NUOVO. Controllo se l'evento e' cancellato - C.1.1.1) CANCELLATO -> non devo salvare niente - C.1.1.2) NON CANCELLATO -> Salvo su APCRMATTIV e APCRMATTOP il record

C.1.2) ESISTENTE. Controllo se l'evento e' cancellato: - C.1.2.1) CANCELLATO -> Modifico APCRMATTOP settando a_crp_fl_canc='C', controllo se l'attivita' e' collegata a un solo operatore. Se si allora setto anche a_crt_agg_app='C' - C.1.2.2) NON CANCELLATO -> Modifico APCRMATTOP e APCRMATTIV con i nuovi dati. Setto il flag a_crt_agg_app = 'A'

insert.php - KPN -> Calendar

Demone che interroga la tabella APCRMATTIV e invia al calendario gli eventi inseriti/modificati da agenda. Il programma tiene salvato su una tabella il sync dell'ultimo record inviato e inviera' solo i dati con id_sincro maggiore. Casi possibili:

  • A) l'attivita' NON HA id_google ed e' stata CANCELLATA -> Non devo inserire perche' e' gia' stata cancellata
  • B) l'attivita' NON HA id_google ed e' VALIDA -> inserisco l'evento nel calendario, salvo l'event ID creato da Calendar nella riga apcrmattop dell'operatore
  • C) l'attivita' HA id_google ed e' stata CANCELLATA -> Cancello l'evento dal calendario e tolgo su apcrmattop l'event id di riferimento
  • D) l'attivita' HA id_google ed e' VALIDA -> attraverso l'event id salvato su apcrmattop, modifico l'evento del calendario

Tabelle

caluser - utenti calendar

Campo Key Tipo Note
cal_azi Si X(06) Codice azienda
cal_tecni_id Si 9(10) Id tecnico
cal_id_api Si 9(04) Id di riferimento al progetto Calendar
cal_date_update date Data ultimo aggiornamento
cal_hour_update time Ora ultimo aggiornamento
cal_id_calendar X(100) ID calendario collegato all'operatore
cal_abilitato x(01) Flag che indica se l'operatore e' abilitato su areagate
cal_id_sincro 9(15) Sincro ultimo record apcrmattiv letto
cal_ope_cod 9(05) codice operatore collegato a Calendar

calparam - Progetti Api Google Calendar

Campo Key Tipo Note
api_id Si 9(04) Id autoincrementato che identifica il progetto
api_project X(100) Nome del progetto api google calendar
api_service_account_id X(200) Account da collegare al calendario per la condivisione
api_oauth_client_id X(200) id per l'autenticazione al calendario
Campo Key Tipo Note
link_id Si 9(04) Id che identifica il progetto Api Calendar
link_azi Si X(06) Codice azienda
link_abilitato X(01) Flag che indica se l'azienda e' abilitata ad utilizzare le api di calendar

Gestione PDF compilabili

Utilizzabile solo se server di reportistica e' JASPER. Da areagate si crea un modello PDF compilabile e lo si associa a n checklist. Questo creera' n righe sulla tabella ARPMODST2 con a_mdc_pertinenza = 'A'. La APP scarichera' queste righe e i relativi pdf attraverso l'url a_mdc_path. I pdf scaricati in fase di download saranno gli "originali", questo significa che in gestione intervento, quando si andra' a compilare una checklist, l'app creera' una copia del pdf e la rinominera'. Il nome del file dipende dal tipo di checklist: - checklist intervento -> _cert_idintervento.pdf - checklist matricola -> _cert_idintervento_idmatricola.pdf

AWS

Installazione di AWS CLI per Windows

L'interfaccia a riga di comando di AWS e' supportata in Microsoft Windows XP o versioni successive. Installare AWS utilizzando il programma di installazione MSI: * versione x64: https://s3.amazonaws.com/aws-cli/AWSCLI64PY3.msi * versione x86: https://s3.amazonaws.com/aws-cli/AWSCLI32PY3.msi

L'interfaccia viene installata in C:\Program Files\Amazon\AWSCLI (64 bit) o C:\Program Files (x86)\Amazon\AWSCLI (32 bit). Per verificare l'installazione: aws --version

Configurazione di AWS CLI

Uso generale

$ aws configure
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
Default region name [None]: us-west-2
Default output format [None]: json

Profili multipli

aws configure --profile C99999

Utilizzo di AWS CLI con i servizi di AWS S3

Creazione di un bucket

$ aws s3 mb s3://bucket-name --profile C99999

Listing dei bucket

$ aws s3 ls --profile C99999
$ aws s3 ls s3://bucket-name --profile C99999
$ aws s3 ls s3://bucket-name/path/ --profile C99999

Gestione degli oggetti (file) I comandi includono s3 cp, s3 ls, s3 mv, s3 rm e s3 sync.

$ aws s3 cp file.txt s3://my-bucket/ --profile C99999
$ aws s3 sync . s3://my-bucket/path --profile C99999

E' anche possibile fornire l'opzione --delete per rimuovere file o oggetti dalla destinazione che non sono presenti nell'origine.


Estratto da documentazione interna ClickUp