Il metodo SendMessageNL
|
int SendMessageNL(string accessKey, string fileName, string separator, string listId, string listGuid, string messageId, string senderName, string sender, string subject, DateTime timeDateSending, int sendDelayTest)
Il metodo riceve in ingresso:
- accessKey: chiave di accesso ottenuta chiamando il metodo Login.
- fileName: Nome del file CSV che descrive gli Utenti cui sarà inviato il Messaggio.
- separator: carattere separatore utilizzato nel file CSV. Se vuoto o nullo sarà utilizzato di default ';' come separatore.
- listId: : Identificativo numerico che individua univocamente una Lista di MailUp.
- listGuid: GUID che individua univocamente una Lista di MailUp.
- messageId: Identificativo numerico del messaggio che si vuole inviare.
- senderName: Nome del mittente del Messaggio.
Se non valorizzato (null o stringa vuota), MailUp utilizzerà il nome di default definito per la Lista indicata.
- sender: indirizzo email del mittente del Messaggio.
Se non valorizzato (null o stringa vuota), MailUp utilizzerà l'indirizzo di default definito per la Lista indicata. Se nessun mittente di default è definito per tale Lista non effettua l'invio.
- subject: Soggetto del messaggio da inviare.
- timeDateSending: Data e ora cui programmare l'invio.
- sendDelayTest: Ritardo desiderato per l'invio immediato espresso in minuti.
I parametri listGuid e listId possono essere utilizzati entrambi o alternativamente, passando uno dei due a null o vuoto.
- Nel primo caso la lista è verificata utilizzando entrambi i parametri.
- Nel secondo caso utilizzando il parametro fornito.
|
Il metodo SendMessageNL
|
La combinazione dei parametri timeDateSending e sendDelayTest determina la data in cui MailUp programmal'invio.
Il parametro timeDateSending può assumere i seguenti valori :
- Se data e ora hanno un valore che appartiene al passato l'invio è gestito come Invio Immediato. Il ritardo minimo prestabilito è calcolato in base al valore fornito dal parametro sendDelayTest:.
- Se il valore di data/ora è successivo a quello attuale allora l'invio è gestito come Invio Schedulato Pianificato, programmato.
Il parametro sendDelayTest viene preso in considerazione solo se il valore fornito dal parametro timeDateSending indica un Invio Immediato.
I valori che può assumere il parametro sono:
- uguale o minore di zero. In questo caso il ritardo dell'Invio Immediato è un valore fisso definito in MailUp (Configurato in 20 minuti).
- Maggiore di zero. In questo caso il ritardo dell'Invio Immediato corrisponde al valore del parametro.
Il calcolo della schedulazione di un Invio in base ai parametri timeDateSending e sendDelayTest è riassunto nella tabella seguente:
timeDateSending |
sendDelayTest |
Data invio schedulata in MailUp |
valore = MinValue Data e Ora o valore <= data attuale (Invio Immediato) |
sendDelayTest > 0 |
data attuale + sendDelayTest |
valore = MinValue Data e Ora o valore <= data attuale (Invio Immediato) |
sendDelayTest <= 0 |
data attuale + Valore fisso definito in MailUp |
valore > data attuale (Invio Schedulato) |
sendDelayTest > 0 |
timeDateSending |
valore > data attuale (Invio Schedulato) |
sendDelayTest <= 0 |
timeDateSending |
Tabella 7: Calcolo programmazione invio
Il metodo restituisce:
- L'identificativo numerico dell'Invio.
- -1 in caso l'operazione non può essere portata a buon fine (ad esempio parametri errati o problemi di sistema).