App_PhoneCall, telefonare automaticamente a numeri predefiniti

Componente non visibile che fa una telefonata al numero specificato nella proprietà PhoneNumber. Questa proprietà può essere impostata nella finestra Design\Properties, oppure in Blocks Editor. In Blocks Editor i numeri telefonici vanno impostati come testo utilizzando blocchi text e non number. Nei numeri telefonici, parentesi, punti e trattini possono essere inclusi ad es. 039-05.123456 oppure (039)055123456 sono numeri telefonici validi. Gli spazi non non sono ammessi. In questa applicazione premendo su di un pulsante vengono chiamati, in maniera casuale, tutti i numeri di una lista. Le chiamate si interrompono premendo di nuovo sullo stesso pulsante.
Componenti e proprietà da assegnare:

Componente

Gruppo

Nome

Proprietà

Text

Width

Button

Basic

bChiamaTutti

Chiama tutti

Fill parent

Label

Basic

lNumeroInChiamata

88888

Fill parent

PhoneCall

Social

PhoneCall

Clock

Basic

Clock

Come dovrebbero presentarsi la pagina Design e l’Emulatore:
Aprire Blocks Editor
Viene creata una variabile di nome Lista_Numeri.
Nella variabile Lista_Numeri viene assemblata una lista utilizzando il blocco make a list.
La lista, che prende il nome della variabile Lista_Numeri, viene popolata utilizzando blocchi text.
La lista è pronta, utilizzando il blocco Initialize, viene fermata la lettura del clock perché le telefonate non partano all’avvio. Stabilito l’intervallo di lettura del clock (quando è attivo) è vuotata la Label dove sarà visibile, di volta in volta, il numero in chiamata.

Vengono assemblati i blocchi per chiamare il numero.
Prima di tutto viene dichiarata una Procedura alla quale vien dato il nome Avvia_Chiamata.

  • PhoneCall.PhoneNumber: è la proprietà dove deve essere inserito il numero da chiamare.
    • Select list item: seleziona una voce della lista Lista_Numeri.
      • Lista_Numeri: è la lista dei numeri telefonici.
      • random integer: rende un numero casuale da from a to.
        • number 1: dalla prima voce della lista.
        • lenght list: Lista_Numeri: alla lunghezza della lista (tutti i numeri).
  • iNumeroInChiamata.Txt: label il cui contenuto viene mostrato a video
    • numero corrente in chiamata: blocco testo editabile
      • join: lega i due blocchi e li inserisce in lNumeroInChiamata
      • PhoneCall.PhoneNumber: numero che viene chiamato
  • PhoneCall.MakeCall:Metodo che chiama effettivamente il numero
Blocco che va in esecuzione quando la lettura del tempo è attiva e chiama la funzione Avvia_Chiamata.
Pulsante al cui evento click si avviano o arrestano le telefonate.