diff --git a/source/API_Documents/OTA/Header OTA.rst b/source/API_Documents/OTA/Header OTA.rst new file mode 100644 index 0000000..b95c6db --- /dev/null +++ b/source/API_Documents/OTA/Header OTA.rst @@ -0,0 +1,67 @@ +Header OTA +========== + +.. contents:: + :local: + :depth: 2 + +**OTA Header** +-------------- + +**Description** +~~~~~~~~~~~~~~~ + +A header file for OTA API. + +**Syntax** +~~~~~~~~~~ + +NA + +**Members** +~~~~~~~~~~~ + ++-----------------------------------+----------------------------------+ +| **Public Constructors** | | ++===================================+==================================+ +| NA | NA | +| | | +| | | ++-----------------------------------+----------------------------------+ +| **Public Methods** | | ++-----------------------------------+----------------------------------+ +| start_OTA_threads | To begin threading tasks for OTA | +| | firmware update. | ++-----------------------------------+----------------------------------+ + +**start_OTA_threads** +--------------------- + +**Description** +~~~~~~~~~~~~~~~ + +To begin threading tasks for OTA firmware update. + +**Syntax** +~~~~~~~~~~ + +.. code-block:: c++ + + void start_OTA_threads(); + +**Parameters** +~~~~~~~~~~~~~~ + +NA + +**Returns** +~~~~~~~~~~~ + +NA + +**Example Code** +~~~~~~~~~~~~~~~~ + +Example: `OTA `_ + +.. note :: “ota_thread.h” must be included to use the function. \ No newline at end of file diff --git a/source/API_Documents/OTA/index.rst b/source/API_Documents/OTA/index.rst new file mode 100644 index 0000000..16920d2 --- /dev/null +++ b/source/API_Documents/OTA/index.rst @@ -0,0 +1,7 @@ +OTA +=== + +.. toctree:: + :maxdepth: 1 + + Header OTA \ No newline at end of file diff --git a/source/API_Documents/index.rst b/source/API_Documents/index.rst index cba7799..3e1f6e8 100644 --- a/source/API_Documents/index.rst +++ b/source/API_Documents/index.rst @@ -9,6 +9,7 @@ API Documents Multimedia/index NeuralNetwork/index NTPClient/index + OTA/index USB/index Watchdog/index WiFi/index diff --git a/source/Example_Guides/HTTP/HTTP Post Image and MP4.rst b/source/Example_Guides/HTTP/HTTP Post Image and MP4.rst new file mode 100644 index 0000000..f72e0d9 --- /dev/null +++ b/source/Example_Guides/HTTP/HTTP Post Image and MP4.rst @@ -0,0 +1,46 @@ +HTTP Post Image and MP4 +======================= + +.. contents:: + :local: + :depth: 2 + +Materials +--------- + +- `AMB82-mini `_ x 1 + +- PushButton x1 + +- 220 ohm resistor x1 + +Example +------- + +In this example, we are doing a Post request with image and recorded audio file together to LLM Server. This example does not contain integration to the LLM server but integration to the HTTP server. + +Then open “File” -> “Examples” -> “AmebaHttp” -> “Capture_Image_HTTP_Post_Image_Llava_Server” + +|image01| + +Connect the pushbutton and resistor to AMB82 Mini as shown below. + +|image02| + +Compile and run the example. + +Set up the HTTP server by locating the python script called whisper_server_test_2_endpoints.py. Go to command prompt and go to the src folder. Execute this command python3 whisper_server_test_2_endpoints.py. + +Please note that this server can only be run on Linux OS. Mac OS and Windows have not been supported yet. + +Press button for 2s when you wish to take a snapshot and speak into the mic for the prompt to ask the Visual Language Model (VLM). + +If the HTTP Post image and audio file is successful, the image and audio file will be saved at the location where this script is being run at. + +.. |image01| image:: ../../_static/Example_Guides/HTTP/HTTP_Post_Image_and_MP4/image01.png + :width: 1032 px + :height: 645 px + +.. |image02| image:: ../../_static/Example_Guides/HTTP/HTTP_Post_Image_and_MP4/image02.png + :width: 988 px + :height: 802 px diff --git a/source/Example_Guides/HTTP/HTTP Post MP4.rst b/source/Example_Guides/HTTP/HTTP Post MP4.rst new file mode 100644 index 0000000..ec86142 --- /dev/null +++ b/source/Example_Guides/HTTP/HTTP Post MP4.rst @@ -0,0 +1,66 @@ +HTTP Post MP4 +============= + +.. contents:: + :local: + :depth: 2 + +Materials +--------- + +- `AMB82-mini `_ x 1 + +- PushButton x1 + +- 220 ohm resistor x1 + +Example +------- + +These examples illustrate how to send HTTP Post request of MP4 audio file to a HTTP server. + +This guide will be relevant to 2 examples: + +1) HTTP_Post_MP4_Whisper_Server + +2) RecordMP4_HTTP_Post_Whisper_Server + +The difference between these 2 examples is that for HTTP_Post_MP4_Whisper_Server.ino, one is expected to have an MP4 file already saved inside the SD card. Whereas for the RecordMP4_HTTP_Post_Whisper_Server.ino, it is not necessary to have a MP4 file inside the SD card. + +This is the block diagram for the example flow. + +|image01| + +Connect the pushbutton and resistor to AMB82 Mini as shown below. + +|image02| + +Open “File”-> “Examples” -> “AmebaHTTP” -> “HTTP_Post_MP4_Whisper_Server” OR “RecordMP4_HTTP_Post_Whisper_Server”. + +|image03| + +Compile and run the code. + +Set up the http server by locating the python script called “whisper_llm_server.py” in src folder. Go to command prompt and go to the src folder and execute this command: python3 whisper_llm_server.py. Follow the readme in the python script. + +Press the push button for 2s to trigger the recording. Speak into the microphone to ask the AI. This should be the expected output on the terminal that was running the python script. Please note that if you are +to use a more powerful model such as MediaTek 7B model, you will need a +PC with a powerful GPU to test. Purely CPU will not be able to run that +model. + +Please note that this server can only be run on Linux OS. Mac OS and Windows have not been supported yet. + +|image04| + +.. |image01| image:: ../../_static/Example_Guides/HTTP/HTTP_Post_MP4/image01.png + :width: 722 px + :height: 255 px +.. |image02| image:: ../../_static/Example_Guides/HTTP/HTTP_Post_MP4/image02.png + :width: 988 px + :height: 802 px +.. |image03| image:: ../../_static/Example_Guides/HTTP/HTTP_Post_MP4/image03.png + :width: 1032 px + :height: 645 px +.. |image04| image:: ../../_static/Example_Guides/HTTP/HTTP_Post_MP4/image04.png + :width: 1157 px + :height: 234 px diff --git a/source/Example_Guides/HTTP/Retrieve HTTP webs.rst b/source/Example_Guides/HTTP/Retrieve HTTP webs.rst new file mode 100644 index 0000000..86e8b37 --- /dev/null +++ b/source/Example_Guides/HTTP/Retrieve HTTP webs.rst @@ -0,0 +1,58 @@ +Retrieve HTTP webs +================== + +.. contents:: + :local: + :depth: 2 + +Materials +--------- + +- `AMB82-mini `_ x 1 + +Example +------- + +| In this example, the HttpClient library is used to retrieve a webpage using the HTTP protocol. +| First, make sure that the correct Ameba development board is selected in “Tools” -> “Board”. + +Then open “File” -> “Examples” -> “AmebaHttp” -> “RetrieveHttpWebs”. + +|image01| + +In the sample code, modify the highlighted section to enter the information required (ssid, password, key index) to connect to your WiFi network. + +|image02| + +Upload the code and press the reset button on Ameba once the upload is finished. Open the serial monitor in the Arduino IDE and you can see the information retrieved from the website. + +|image03| + +Code Reference +-------------- + +| Use WiFi.begin() to establish WiFi connection: +| https://www.arduino.cc/en/Reference/WiFiBegin +| To get the information of a WiFi connection: +| Use WiFi.SSID() to get SSID of the current connected network. +| https://www.arduino.cc/en/Reference/WiFiSSID +| Use WiFi.RSSI() to get the signal strength of the connection. +| https://www.arduino.cc/en/Reference/WiFiRSSI +| Use WiFi.localIP() to get the IP address of Ameba. +| https://www.arduino.cc/en/Reference/WiFiLocalIP +| Use WiFiClient to create a client to handle the WiFi connection. +| https://www.arduino.cc/en/Reference/WiFiClient +| Use HTTPClient to create a client to handle the HTTP connection. + +Use http.get() to send a GET request to the website. + + +.. |image01| image:: ../../_static/Example_Guides/HTTP/Retrieve_HTTP_webs/image01.png + :width: 602 px + :height: 833 px +.. |image02| image:: ../../_static/Example_Guides/HTTP/Retrieve_HTTP_webs/image02.png + :width: 568 px + :height: 565 px +.. |image03| image:: ../../_static/Example_Guides/HTTP/Retrieve_HTTP_webs/image03.png + :width: 752 px + :height: 496 px diff --git a/source/Example_Guides/HTTP/Use IFTTT for Web Service.rst b/source/Example_Guides/HTTP/Use IFTTT for Web Service.rst new file mode 100644 index 0000000..f1c89a9 --- /dev/null +++ b/source/Example_Guides/HTTP/Use IFTTT for Web Service.rst @@ -0,0 +1,230 @@ +Use IFTTT for Web Service +========================= + +.. contents:: + :local: + :depth: 2 + +Introduction to IFTTT +--------------------- + +IFTTT, known as If This Then That, is a website and mobile app and free web-based service to create the applets, or the chains of simple +conditional statements. The applet is triggered by changes that occur +within other web services such as Gmail, Facebook, Telegram, Instagram, +Pinterest etc. + +Preparation +----------- + +- `AMB82-mini `_ x 1 + +- An account from https://ifttt.com/, to access IFTTT service\* + +|image01| + +\*Note: Upon log in, there are several cloud and online services that +are integrated with IFTTT platforms. Some IFTTT services may require +IFTTT Pro+, that is an online billing service. + +Example +------- + +- Generate Applet from IFTTT + +In this example, we obtain an example of IFTTT Applet to send email to specified recipient. + +To run the example, HTTP POST feature of the Ameba is used to post a simple webhook service that is received by IFTTT platform and in turn be used to trigger a response (sending an email). + +After logging in https://ifttt.com/, click **Create** from the top bar. + +|image02| + +Click “Add” to add the trigger. + +|image03| + +Choose Webhooks service as shown below. Alternatively, search the service by typing into the search bar. + +|image04| + +After that, the available triggers will appear. Choose “Receive a Web request”. + +|image05| + +Next, an Event Name is required to identify the trigger successfully. In this example, set the Event name as “test_event”. + +|image06| + +Next, click Add in Then That field to create the action service taken in response to the last trigger. + +|image07| + +Choose Email as the action service. + +|image08| + +Click on Send me an email. + +|image09| + +Under the template of Send me an Email, the contents of the email, such as subject and body is editable. Click Create Action to complete the +action. Take note that Email service is offered to the email address registered under IFTTT account. + +|image10| + +- Post the Trigger via Ameba + +| Once the Applet is ready in the IFTTT dashboard, the example program can be flashed onto the Ameba board to post the HTTP request. +| Open the example code in “File” -> “Examples” -> “AmebaHttp” -> “HTTP_IFTTT_Post”. + +|image11| + +In the example program, edit the following 3 items inside the code to make the program work. + +1. The WiFi credentials to connect to the Wi-Fi hotspot or access point of desirable choice. + +2. Under the Host name field, enter the host name of the IFTTT service “maker.ifttt.com”. + +3. Under the Path name field, enter the “Event name” and key field “/trigger/Event name/with/key/Key Field”. + +- Event name: The event name should be the same as the one specified in the IFTTT applet. In this example, the event name is “test_event”. + +- Key Field: Available under webhook service in individual IFTTT account. See the next step for the steps to obtain the Key Field. + +|image12| + +To obtain a key from documentation tab of the Webhooks, find the webhook service in the Explore tab. + +|image13| + +On the Webhooks service page, click on the “Documentation” tab. + +|image14| + +The key can be found in the documentation page. Also, information on how HTTP request can be used. + +|image15| + +| Once the example is ready, Connect the Ameba board via USB cable. +| On the Arduino IDE, compile the code and upload the code onto Ameba + and press the reset button. After the event has been successfully + fired, “Congratulations! You have fired the test_event event” can be + seen on the serial monitor and an email reminder for this event will + be delivered. + +|image16| + +Thereafter an email is sent to recipient email account registered at +IFTTT Applet and an email will be received. + +|image17| + +- IFTTT Line Notify + +Alternatively, an example to send a message with the LINE messaging app +on iPhone or Android using IFTTT Applet is available. It can be achieved +by modifying the “Then That” settings. + +You may follow the same steps previously in “Generate Applet from IFTTT” +section to create a Webhooks service as the trigger. The Event Name +required to identify the trigger will remain as “test_event”. Next, +click the “Add” button in “Then That” field to create the action service +taken in response to the last trigger. + +|image18| + +Choose Line as the action service. + +|image19| + +Click on “Send message”. + +|image20| + +Click on “Connect” and login to your Line Account. + +|image21| + +Select LINE account, set the Recipient to “1-on-1 chat with LINE Notify” +which means the message triggered by IFTTT will directly send to your +chats. Next, input your desired message in the input box under +“Message”. For sending images, you can insert a link to your photo in +the input box under “Photo URL”. + +|image22| + +On the Arduino IDE, compile the code and upload the code onto Ameba and +press the reset button. After the event has been successfully fired, you +will receive a message from “LINE Notify” on your Mobile devices or PC. + +|image23| + +.. |image01| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image01.png + :width: 940 px + :height: 511 px +.. |image02| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image02.png + :width: 752 px + :height: 109 px +.. |image03| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image03.png + :width: 525 px + :height: 418 px +.. |image04| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image04.png + :width: 602 px + :height: 328 px +.. |image05| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image05.png + :width: 602 px + :height: 500 px +.. |image06| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image06.png + :width: 752 px + :height: 601 px +.. |image07| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image07.png + :width: 752 px + :height: 581 px +.. |image08| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image08.png + :width: 752 px + :height: 452 px +.. |image09| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image09.png + :width: 602 px + :height: 422 px +.. |image10| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image10.png + :width: 602 px + :height: 670 px +.. |image11| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image11.png + :width: 752 px + :height: 690 px +.. |image12| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image12.png + :width: 602 px + :height: 668 px +.. |image13| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image13.png + :width: 752 px + :height: 345 px +.. |image14| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image14.png + :width: 752 px + :height: 388 px +.. |image15| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image15.png + :width: 664 px + :height: 305 px +.. |image16| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image16.png + :width: 602 px + :height: 590 px +.. |image17| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image17.png + :width: 598 px + :height: 513 px +.. |image18| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image18.png + :width: 752 px + :height: 581 px +.. |image19| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image19.png + :width: 602 px + :height: 356 px +.. |image20| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image20.png + :width: 602 px + :height: 424 px +.. |image21| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image21.png + :width: 467 px + :height: 450 px +.. |image22| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image22.png + :width: 602 px + :height: 652 px +.. |image23| image:: ../../_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image23.png + :width: 535 px + :height: 1058 px diff --git a/source/Example_Guides/HTTP/index.rst b/source/Example_Guides/HTTP/index.rst new file mode 100644 index 0000000..a06fc16 --- /dev/null +++ b/source/Example_Guides/HTTP/index.rst @@ -0,0 +1,10 @@ +HTTP +==== + +.. toctree:: + :maxdepth: 1 + + HTTP Post Image and MP4 + HTTP Post MP4 + Retrieve HTTP webs + Use IFTTT for Web Service diff --git a/source/Example_Guides/index.rst b/source/Example_Guides/index.rst index f581d35..09169c4 100644 --- a/source/Example_Guides/index.rst +++ b/source/Example_Guides/index.rst @@ -8,14 +8,15 @@ Example Guides Flash Memory/index GPIO/index GTimer/index + HTTP/index MQTT/index Multimedia/index - QR Code Scanner/index Neural Network/index NTP/index OTA/index PowerMode/index PWM/index + QR Code Scanner/index RTC/index SPI/index USB/index diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/01.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image01.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/01.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image01.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/02.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image02.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/02.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image02.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/03.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image03.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/03.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image03.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/04.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image04.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/04.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image04.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/05.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image05.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/05.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image05.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/06.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image06.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/06.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image06.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/07.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image07.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/07.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image07.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/08.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image08.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/08.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image08.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/09.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image09.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/09.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image09.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/11.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image10.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/11.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image10.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/10.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image11.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/10.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image11.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/12.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image12.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/12.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image12.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/13.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image13.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/13.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image13.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/14.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image14.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/14.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image14.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/15.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image15.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/15.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image15.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/16.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image16.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/16.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image16.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/17.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image17.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/17.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image17.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/18.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image18.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/18.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image18.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/19.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image19.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/19.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image19.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/20.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image20.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/20.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image20.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/21.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image21.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/21.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image21.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/22.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image22.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/22.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image22.png diff --git a/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/23.png b/source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image23.png similarity index 100% rename from source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/23.png rename to source/_static/Example_Guides/HTTP/Use_IFTTT_for_Web_Service/image23.png