Hur man styr arduino med ett mail (2 / 3 steg)
Steg 2: Konfigurera programvaran
Ardulink Mail har två konfigurationsfiler. De är belägna i conf mapp i Ardulink fördelning.
ardulinkmail-conf.properties
I denna fil kan du konfigurera:
- E-postkonto du vill använda med Ardulink Mail. Faktiskt det är testad och fungerar bra med ett Google Mail konto.
- Två säkerhetsparametrar. Du kan aktivera eller inaktivera en lista med e-postadresser som Ardulink Mail kan ta emot meddelanden. Du kan också aktivera eller inaktivera post innehåll lösenord. Om aktiverad Ardulink Mail kontroller om detta lösenord ingår i posten eller inte.
ArdulinkMailConfiguration.xml
XML-filen innehåller information om länkar, anslutningar och e-hanterare som Ardulink Mail har att hantera. Så kan du definiera en anslutning med ett XML-fragment som denna:
< aconnections >
< className > org.zu.ardulink.connection.serial.SerialConnection < / className >
< constructorParameters >
< typ > java.lang.String < / typ >
< värde > seriell anslutning ID < / värde >
< / constructorParameters >
< constructorParameters >
< typ > int < / typ >
< värde > 255 < / värde >
< / constructorParameters >
< namn > SERIEANSLUTNING < / namn >
< / aconnections >
Se Ardulink API att förstå anslutningar: http://www.ardulink.org/javadoc/ardulink-core/index.html och sedan kan du definiera en länk med ett XML-fragment som denna:
< alinks >
< connectParameters >
< typ > java.lang.String < / typ >
< värde > COM5 < / värde >
< / connectParameters >
< defaultLink > true < / defaultLink >
< namn > länk 1 < / namn >
< waitSecondsAfterConnection > 10 < / waitSecondsAfterConnection >
< / alinks >
eller såhär:
< alinks >
< aConnectionName > SERIEANSLUTNING < / aConnectionName >
< connectParameters >
< typ > java.lang.String < / typ >
< värde > COM6 < / värde >
< / connectParameters >
< connectParameters >
< typ > int < / typ >
< värde > 115200 < / värde >
< / connectParameters >
< defaultLink > falskt < / defaultLink >
< namn > länk 2 < / namn >
< protocolName > ArdulinkProtocol < / protocolName >
< waitSecondsAfterConnection > 10 < / waitSecondsAfterConnection >
< / alinks >
Se Ardulink API att förstå länkar: http://www.ardulink.org/javadoc/ardulink-core/index.html
Nu kan du definiera kommandon som exekvera kod när en post är inkommande. Ett kommando som används i videon ovan är detta:
< abefallningar >
< aLinkNames > länk 1 < / aLinkNames >
< className > org.zu.ardulink.mail.server.contentmanagement.SimpleContentManager < / className >
< mailContentHooks > accendi < / mailContentHooks >
< mailContentHooks > Aktivera < / mailContentHooks >
< namn > ACCENDI LED 26 e 27 < / namn >
< värden > alp://ppsw/26/1 < / värden >
< värden > alp://ppsw/27/1 < / värden >
< / abefallningar >
Du kan välja en implementering av content manager i taggen className.
Ardulink Mail har faktiskt två implementering av content manager. Först i exemplet ovan Sök efter en post innehåll krok (definieras i taggen mailContentHooks) in i inkommande e-kroppen. Om en innehåll krok är att hitta (sträng "Aktivera" eller dess italienska översättning "accendi") då alla värden skickas till alla länknamn (i exemplet bara en: länk 1). Så i exempel oavsett skickas länkens protokoll två strängar. Dessa strängar är två ALProtocol meddelanden och sedan PIN 26 och PIN 27 är satt till hög.
Det finns en annan implementering av content manager. Tyvärr har detta genomförande en bugg i v0.6.0. Fix blir allmänt tillgänglig i nästa utgåva. Se här för mer information.
Obs:
Sedan logik på när en content manager har att göra något och logik på vad en content manager har att göra är delegerat till content manager, kan du implementera en content manager som gör vad du vill när en rätt inkommande e-post läses av Ardulink Mail. Även om du innehåll manager inte använda en länk för att skicka meddelanden till en Arduino. Så Ardulink Mail kan användas som en generisk postbehandlare.