Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections;
- using System.Threading;
- using Microsoft.SPOT;
- using Microsoft.SPOT.Presentation;
- using Microsoft.SPOT.Presentation.Controls;
- using Microsoft.SPOT.Presentation.Media;
- using Microsoft.SPOT.Touch;
- using Gadgeteer.Networking;
- using GT = Gadgeteer;
- using GTM = Gadgeteer.Modules;
- using Gadgeteer.Modules.GHIElectronics;
- namespace JCgoogleCamera2
- {
- public partial class Program
- {
- string WIFINETWORK = _wifinetwork;
- string WIFIPASSWORD = _wifipassword;
- string phpsavefileURL = _phpsavefileURL;
- string phpcurlimgURL = _phpcurlimgURL;
- int counter = 0;
- void ProgramStarted()
- {
- Debug.Print("Program Started");
- button.ButtonPressed += new Button.ButtonEventHandler(button_ButtonPressed);
- camera.PictureCaptured += new Camera.PictureCapturedEventHandler(camera_PictureCaptured);
- camera.CameraConnected += new Camera.CameraConnectedEventHandler(camera_CameraConnected);
- startWifi();
- Debug.Print("end of Program Started");
- }
- void camera_CameraConnected(Camera sender)
- {
- if (camera.CameraReady) { Debug.Print("camera ready."); }
- }
- void button_ButtonPressed(Button sender, Button.ButtonState state)
- {
- Debug.Print("button pressed");
- //multicolorLed.TurnBlue();
- Debug.Print("camera is ready: " + camera.CameraReady);
- if (camera.CameraReady)
- {
- Debug.Print("starting to take picture");
- camera.TakePicture();
- }
- else { Debug.Print("camera not ready"); }
- Debug.Print("end of button pressed");
- }
- void camera_PictureCaptured(Camera sender, GT.Picture picture)
- {
- Debug.Print("picture captured");
- //multicolorLed.TurnGreen();
- display_T35.SimpleGraphics.DisplayImage(picture, 0, 0);
- postPictureToWeb(picture);
- }
- void postPictureToWeb(GT.Picture picture)
- {
- GT.Networking.POSTContent postcontent = new POSTContent();
- postcontent = GT.Networking.POSTContent.CreateBinaryBasedContent(picture.PictureData);
- Debug.Print("posting");
- try
- {
- GT.Networking.HttpRequest postreq = HttpHelper.CreateHttpPostRequest(phpsavefileURL, postcontent, "image/bmp");
- postreq.ResponseReceived += new HttpRequest.ResponseHandler(postreq_ResponseReceived);
- postreq.SendRequest();
- }
- catch (System.Net.Sockets.SocketException e)
- {
- Debug.Print("socket exception: " + e.ErrorCode);
- }
- catch (Exception e)
- {
- Debug.Print("exception: " + e.Message);
- }
- }
- void postreq_ResponseReceived(HttpRequest sender, HttpResponse response)
- {
- Debug.Print("Response Received");
- string filename = response.Text;
- Debug.Print(filename);
- Debug.Print(response.StatusCode);
- sendCurlToWeb(filename);
- }
- void sendCurlToWeb(string filename)
- {
- Debug.Print("curling");
- string phpadd = phpcurlimgURL + filename;
- Debug.Print("sending curl req to: " + phpadd);
- GT.Networking.HttpRequest curlreq = WebClient.GetFromWeb(phpadd);
- curlreq.ResponseReceived += new HttpRequest.ResponseHandler(curlreq_ResponseReceived);
- curlreq.SendRequest();
- }
- void curlreq_ResponseReceived(HttpRequest sender, HttpResponse response)
- {
- Debug.Print("curl response received");
- string curlresponsetxt = response.Text;
- Debug.Print(curlresponsetxt);
- }
- void startWifi()
- {
- Debug.Print("Starting Wifi");
- GHI.Premium.Net.NetworkInterfaceExtension.AssignNetworkingStackTo(null);
- wifi_RS21.Interface.Open();
- wifi_RS21.Interface.NetworkInterface.EnableDhcp();
- GHI.Premium.Net.NetworkInterfaceExtension.AssignNetworkingStackTo(wifi_RS21.Interface);
- wifi_RS21.Interface.WirelessConnectivityChanged += new GHI.Premium.Net.WiFiRS9110.WirelessConnectivityChangedEventHandler(Interface_WirelessConnectivityChanged);
- try
- {
- Debug.Print("scanning for network");
- GHI.Premium.Net.WiFiNetworkInfo[] ScanResp = wifi_RS21.Interface.Scan(WIFINETWORK);
- if (ScanResp != null && ScanResp.Length > 0)
- {
- Debug.Print("connecting...");
- wifi_RS21.Interface.Join(ScanResp[0], WIFIPASSWORD);
- //multicolorLed.BlinkRepeatedly(GT.Color.Orange);
- }
- else
- {
- //multicolorLed.BlinkRepeatedly(GT.Color.Red);
- Debug.Print("failed");
- }
- }
- catch (Exception e)
- {
- counter++;
- Debug.Print("unable to find network. trying attempt # " + counter + ", " + e.Message);
- //startWifi();
- //multicolorLed.BlinkRepeatedly(GT.Color.Purple);
- }
- }
- void Interface_WirelessConnectivityChanged(object sender, GHI.Premium.Net.WiFiRS9110.WirelessConnectivityEventArgs e)
- {
- if (e.IsConnected)
- {
- //multicolorLed.TurnGreen();
- Debug.Print("wifi connected");
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment