peony3000

Gadgeteer Cellular SMS

Apr 3rd, 2012
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 10.47 KB | None | 0 0
  1. using System;
  2. using Microsoft.SPOT;
  3. using Microsoft.SPOT.Presentation;
  4. using Microsoft.SPOT.Presentation.Controls;
  5. using Microsoft.SPOT.Presentation.Media;
  6. using System.Threading;
  7. using GT = Gadgeteer;
  8. using GTM = Gadgeteer.Modules;
  9. using Gadgeteer.Modules.GHIElectronics;
  10. using Gadgeteer.Modules.Seeed;
  11.  
  12. namespace Gadgeteer_Cellular_01
  13. {
  14.     public partial class Program
  15.     {
  16.         //CellularRadio cellularRadio = new CellularRadio(4);
  17.         void ProgramStarted()
  18.         {
  19.  
  20.             /******************************************************************************************
  21.             Access modules defined in the designer by typing their name:                            
  22.            
  23.             e.g.  button
  24.                   camera1
  25.  
  26.             Initialize event handlers here.
  27.             e.g. button.ButtonPressed += new GTM.MSR.Button.ButtonEventHandler(button_ButtonPressed);            
  28.             ***************************************************************************************** */
  29.  
  30.             // Do one-time tasks here
  31.             Debug.Print("Program Started");
  32.  
  33.             //cellularRadio = new GTM.Seeed.CellularRadio(4);
  34.             cellularRadio.DebugPrintEnabled = true;
  35.             cellularRadio.PowerOn(5);
  36.             //button.ButtonPressed += new Button.ButtonEventHandler(button_ButtonPressed);
  37.             button.TurnLEDOff();
  38.             button.ButtonPressed += new Button.ButtonEventHandler(resetButton_ButtonPressed);
  39.  
  40.             //cellularRadio.PINStateReceived += new CellularRadio.PINStateReceivedHandler(cellularRadio_PINEvent);
  41.             //cellularRadio.NetworkRegistrationReceived += new CellularRadio.NetworkRegistrationReceivedHandler(cellularRadio_NetworkRegistrationEvent);
  42.             cellularRadio.SmsReceived += new CellularRadio.SmsReceivedHandler(cellularRadio_NewSMSEvent);
  43.             //cellularRadio.IncomingCall += new CellularRadio.IncomingCallHandler(cellularRadio_IncomingCall);
  44.             cellularRadio.SmsRetrieved += new CellularRadio.SmsRetrievedHandler(cellularRadio_SMSReady);
  45.             //cellularRadio.PhoneActivityReceived += new CellularRadio.PhoneActivityReceivedHandler(cellularRadio_PhoneActivityReady);
  46.             //cellularRadio.ContactOpen += new CellularRadio.ContactOpenHandler(cellularRadio_ContactReady);
  47.             //cellularRadio.ClockReceived += new CellularRadio.ClockReceivedHandler(cellularRadio_ClockReady);
  48.             //cellularRadio.SignalStrengthReceived += new CellularRadio.SignalStrengthReceivedHandler(cellularRadio_SignalStrengthReady);
  49.             //cellularRadio.OperatorReceived += new CellularRadio.OperatorReceivedHandler(cellularRadio_OperatorReady);
  50.             //cellularRadio.SMSListReceived += new CellularRadio.SMSListReceivedHandler(cellularRadio_SMSListReady);
  51.             //cellularRadio.ConnectedLineEvent += new CellularRadio.ConnectedLineEventHandler(cellularRadio_ConnectedLineEvent);
  52.             //cellularRadio.NoCarrier += new CellularRadio.NoCarrierHandler(cellularRadio_NoCarrierEvent);
  53.             cellularRadio.ModuleInitialized += new CellularRadio.ModuleInitializedHandler(cellularRadio_ModuleInitialized);
  54.         }
  55.  
  56.         void cellularRadio_ModuleInitialized(CellularRadio sender)
  57.         {
  58.             Debug.Print("MODULE INITIALIZED");
  59.         }
  60.  
  61.         void cellularRadio_NoCarrierEvent(CellularRadio sender)
  62.         {
  63.             Debug.Print("NO CARRIER EVENT");
  64.         }
  65.  
  66.         void cellularRadio_ConnectedLineEvent(CellularRadio sender, string number)
  67.         {
  68.             Debug.Print("CONNECTED: " + number);
  69.         }
  70.  
  71.         void cellularRadio_SMSListReady(CellularRadio sender, System.Collections.ArrayList smsList)
  72.         {
  73.             if (smsList != null)
  74.             {
  75.                 Debug.Print("SMS LIST");
  76.                 foreach (GTM.Seeed.CellularRadio.Sms message in smsList)
  77.                 {
  78.                     Debug.Print("FROM: " + message.TelephoneNumber);
  79.                     Debug.Print("MSG: " + message.TextMessage);
  80.                     Debug.Print("WHEN: " + message.Timestamp);
  81.                     Debug.Print("STATUS: " + message.Status + "\n");
  82.                     Debug.Print("POS:" + message.Index);
  83.                 }
  84.             }
  85.         }
  86.  
  87.         void cellularRadio_OperatorReady(CellularRadio sender, string operatorName)
  88.         {
  89.             if (operatorName != null)
  90.                 Debug.Print("OPERATOR: " + operatorName);
  91.             else
  92.                 Debug.Print("NO OPERATOR WAS FOUND");
  93.         }
  94.  
  95.         void cellularRadio_SignalStrengthReady(CellularRadio sender, CellularRadio.SignalStrengthType signalStrength)
  96.         {
  97.             Debug.Print("SIGNAL STRENGTH: " + signalStrength);
  98.         }
  99.  
  100.         void cellularRadio_ClockReady(CellularRadio sender, DateTime clock)
  101.         {
  102.             Debug.Print("CLOCK: " + clock.ToString("r"));
  103.         }
  104.  
  105.         void cellularRadio_ContactReady(CellularRadio sender, CellularRadio.Contact contact)
  106.         {
  107.             Debug.Print("NAME: " + contact.name);
  108.             Debug.Print("TEL: " + contact.telephoneNumber);
  109.         }
  110.  
  111.         void cellularRadio_PhoneActivityReady(CellularRadio sender, CellularRadio.PhoneActivityType activity)
  112.         {
  113.             Debug.Print("Phone Activtiy: " + activity);
  114.         }
  115.  
  116.         void resetButton_ButtonPressed(Button sender, Button.ButtonState state)
  117.         {
  118.             if (cellularRadio.SendSms("14157430***", "HELLO from Robot Land") != GTM.Seeed.CellularRadio.ReturnedState.OK)
  119.             {
  120.                 Debug.Print("Retrieve clock failed");
  121.             }
  122.         }
  123.  
  124.         void cellularRadio_SMSReady(CellularRadio sender, CellularRadio.Sms message)
  125.         {
  126.             if (message != null)
  127.             {
  128.                 Debug.Print("RETRIEVED");
  129.                 Debug.Print("FROM: " + message.TelephoneNumber);
  130.                 Debug.Print("MSG: " + message.TextMessage);
  131.                 Debug.Print("WHEN: " + message.Timestamp);
  132.                 Debug.Print("STATUS: " + message.Status);
  133.                 Debug.Print("POS:" + message.Index);
  134.             }
  135.         }
  136.  
  137.         void cellularRadio_IncomingCall(CellularRadio sender, string caller)
  138.         {
  139.             Debug.Print("NEW CALL: " + caller);
  140.         }
  141.  
  142.         void cellularRadio_NewSMSEvent(CellularRadio sender, CellularRadio.Sms message)
  143.         {
  144.             if (message != null)
  145.             {
  146.                 Debug.Print("NEW SMS");
  147.                 Debug.Print("FROM: " + message.TelephoneNumber);
  148.                 Debug.Print("MSG: " + message.TextMessage);
  149.                 Debug.Print("WHEN: " + message.Timestamp);
  150.                 Debug.Print("STATUS: " + message.Status);
  151.                 Debug.Print("POS:" + message.Index);
  152.             }
  153.         }
  154.  
  155.         void cellularRadio_NetworkRegistrationEvent(CellularRadio sender, CellularRadio.NetworkRegistrationState networkState)
  156.         {
  157.             Debug.Print("NETWORK EVENT " + networkState);
  158.         }
  159.  
  160.         void button_ButtonPressed(Button sender, Button.ButtonState state)
  161.         {
  162.             Debug.Print("BUTTON BEGIN");
  163.  
  164.             /*
  165.              * Power ON test
  166.              */
  167.             //cellularRadio.PowerOn = false;
  168.             //cellularRadio.PowerOn = false;
  169.             // cellularRadio.PowerOn = true;
  170.             // cellularRadio.PowerOn = true;
  171.  
  172.             /*
  173.              * PIN Event Test
  174.              */
  175.             cellularRadio.SendATCommand("AT+CPIN?");
  176.  
  177.             /*
  178.              * Network Event Test
  179.              */
  180.             cellularRadio.SendATCommand("AT+CREG?");
  181.  
  182.             /*
  183.              * SMS Test
  184.              */
  185.             //cellularRadio.SendSms("15919192620", "HELLO");
  186.             //cellularRadio.SendSms("447801881396", "HELLO");
  187.  
  188.             /*
  189.              * Receive Voice Call Test
  190.              */
  191.             //if (!button.IsLedOn)
  192.             //{
  193.             //    cellularRadio.PickUp();
  194.             //    button.TurnLEDOn();
  195.             //}
  196.             //else
  197.             //{
  198.             //    cellularRadio.HangUp();
  199.             //    button.TurnLEDOff();
  200.             //}
  201.  
  202.             /*
  203.              * Make voice call Test
  204.              */
  205.  
  206.             cellularRadio.Dial("14157430***");
  207.  
  208.  
  209.             /*
  210.              * Read SMS Test
  211.              */
  212.             //cellularRadio.RetrieveSms(1,true);
  213.  
  214.             /*
  215.              * Delete SMS Test
  216.              */
  217.             //cellularRadio.DeleteSMS(1);
  218.  
  219.             /*
  220.              * Redial Test
  221.              */
  222.             //cellularRadio.Dial("159919620");
  223.             //Thread.Sleep(3000);
  224.             //cellularRadio.HangUp();
  225.             //Thread.Sleep(3000);
  226.             //cellularRadio.Redial();
  227.  
  228.             /*
  229.              * Phone Activity Test
  230.              */
  231.             //cellularRadio.RequestPhoneActivity();
  232.  
  233.             /*
  234.              * Phonebook Test
  235.              */
  236.             //cellularRadio.SaveContact( 1,"447527202098", "Eduardo");
  237.             //Thread.Sleep(1000);
  238.             //cellularRadio.RequestContact(1);
  239.  
  240.             /*
  241.              * Clock test
  242.              */
  243.             //cellularRadio.RequestClock();
  244.  
  245.             /*
  246.              * IMEI test
  247.              */
  248.             //if (cellularRadio.RetrieveImei() != GTM.Seeed.CellularRadio.ReturnedState.OK)
  249.             //{
  250.             //    Debug.Print("Retrieve IMEI failed");
  251.             //}
  252.  
  253.             /*
  254.              * Signal Strength Test
  255.              */
  256.             //cellularRadio.RequestSignalStrength();
  257.  
  258.             /*
  259.              * Operator Test
  260.              */
  261.             //cellularRadio.RequestOperator();
  262.  
  263.             /*
  264.              * Get unread test
  265.              */
  266.             //cellularRadio.RequestSMSList(GTM.Seeed.CellularRadio.SMSState.All);
  267.  
  268.             /*
  269.              * Attach GPRS Test
  270.              */
  271.             //cellularRadio.AttachGPRS("orangeinternet", "", "");
  272.             //cellularRadio.SendATCommand("AT+CIPSTATUS");
  273.  
  274.             /*
  275.              * Delete all sms test
  276.              */
  277.             //cellularRadio.RetrieveSmsList(CellularRadio.SmsState.All);
  278.             //Thread.Sleep(1000);
  279.             //cellularRadio.DeleteAllSms();
  280.             //Thread.Sleep(1000);
  281.             //cellularRadio.RetrieveSmsList(CellularRadio.SmsState.All);
  282.  
  283.  
  284.             Debug.Print("BUTTON END");
  285.         }
  286.  
  287.         void cellularRadio_PINEvent(CellularRadio sender, CellularRadio.PINState pinState)
  288.         {
  289.             Debug.Print("PIN: " + pinState);
  290.         }
  291.     }
  292. }
Advertisement
Add Comment
Please, Sign In to add comment