locked How are JTAlertX users getting information to their smart phones?


John Holmes W9ILY
 

Laurie,
I've been trying to get BLAT.exe working for alerts but with no success. Is there a newer, simpler way to generate alerts with calls identified?
Thanks.
John W9ILY


Laurie, VK3AMA
 

On 26/07/2021 5:53 am, John Holmes W9ILY wrote:
I've been trying to get BLAT.exe working for alerts but with no success. Is there a newer, simpler way to generate alerts with calls identified?
Thanks.
John W9ILY
Interesting you mention Blat. I recently went looking for an alternative as it has some serious shortcomings working in modern Email environments requiring SSL/TLS to access SMTP servers. I found CMail which enabled my emails to TLS enabled email accounts to work, which was not possible with Blat. I have produced an update sample batch file utilizing CMail for the next JTAlert release. It is included below.

de Laurie VK3AMA

@echo off
::==================================================================================
:: Description: Sample alert emailer batch file for use with JTAlert External Alert.
:: Requires: CMail command-line emailer. See https://www.inveigle.net/cmail
:: Version: 2.0, 21-Jul-2021
:: Author: VK3AMA
::==================================================================================

::***********************************************
:: setup variables for CMail. See https://www.inveigle.net/cmail
::
set cmaildir=
set smtpsender=
set smtpserver=
set smtpport=
set smtpuser=
set smtppwd=
set mailto=
set priority=1
set timeout=5
::***********************************************

setlocal enabledelayedexpansion
set argCount=0
for %%x in (%*) do (
   set /A argCount+=1
   set "argVec[!argCount!]=%%~x"
)
echo.
echo Number of passed arguments: %argCount%
echo.
for /L %%i in (1,1,%argCount%) do echo %%%%i ^: "!argVec[%%i]!"
echo -------------------------------------------------
echo.
echo JTAlert set environment variables
echo.
echo      %%JTAlert_AlertNo%% ^: %JTAlert_AlertNo%
echo    %%JTAlert_AlertType%% ^: %JTAlert_AlertType%
echo %%JTAlert_AlertTrigger%% ^: %JTAlert_AlertTrigger%
echo       %%JTAlert_Decode%% ^: %JTAlert_Decode%
echo         %%JTAlert_Call%% ^: %JTAlert_Call%
echo         %%JTAlert_Date%% ^: %JTAlert_Date%
echo         %%JTAlert_Time%% ^: %JTAlert_Time%
echo         %%JTAlert_Band%% ^: %JTAlert_Band%
echo         %%JTAlert_Mode%% ^: %JTAlert_Mode%
echo          %%JTAlert_QRG%% ^: %JTAlert_QRG%
echo           %%JTAlert_DF%% ^: %JTAlert_DF%
echo           %%JTAlert_DB%% ^: %JTAlert_DB%
echo         %%JTAlert_Dxcc%% ^: %JTAlert_Dxcc%
echo      %%JTAlert_Country%% ^: %JTAlert_Country%
echo %%JTAlert_MthonCountry%% ^: %JTAlert_MthonCountry%
echo       %%JTAlert_CQZone%% ^: %JTAlert_CQZone%
echo    %%JTAlert_Continent%% ^: %JTAlert_Continent%
echo        %%JTAlert_State%% ^: %JTAlert_State%
echo         %%JTAlert_Grid%% ^: %JTAlert_Grid%
echo   %%JTAlert_IsFFMAGrid%% ^: %JTAlert_IsFFMAGrid%
echo       %%JTAlert_Prefix%% ^: %JTAlert_Prefix%
echo      %%JTAlert_Bearing%% ^: %JTAlert_Bearing%
echo     %%JTAlert_Distance%% ^: %JTAlert_Distance%
echo         %%JTAlert_Eqsl%% ^: %JTAlert_Eqsl%
echo         %%JTAlert_Lotw%% ^: %JTAlert_Lotw%
echo     %%JTAlert_LotwDate%% ^: %JTAlert_LotwDate%
echo -------------------------------------------------
echo.
:: Setup email
::
set line=^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
set line1=JTAlert generated an alert
set line2=        Alert No ^: %JTAlert_AlertNo%
set line3=      Alert Type ^: %JTAlert_AlertType%
set line4=   Alert Trigger ^: %JTAlert_AlertTrigger%
set line5=     Decode Text ^: %JTAlert_Decode%
set line6=        Callsign ^: %JTAlert_Call%
set line7=      Date (UTC) ^: %JTAlert_Date%  (yyyy-mm-dd)
set line8=      Time (UTC) ^: %JTAlert_Time%
set line9=            Band ^: %JTAlert_Band%
set line10=            Mode ^: %JTAlert_Mode%
set line11=             QRG ^: %JTAlert_QRG%
set line12=              DF ^: %JTAlert_DF%
set line13=              DB ^: %JTAlert_DB%
set line14=          DXCC # ^: %JTAlert_Dxcc%
set line15=         Country ^: %JTAlert_Country%
set line16=Marathon Country ^: %JTAlert_MthonCountry%
set line17=         CQ Zone ^: %JTAlert_CQZone%
set line18=       Continent ^: %JTAlert_Continent%
set line19=           State ^: %JTAlert_State%
set line20=     VE Province ^: %JTAlert_Province%
set line21=            Grid ^: %JTAlert_Grid%
set line22=    Is FFMA Grid ^: %JTAlert_IsFFMAGrid%
set line23=          Prefix ^: %JTAlert_Prefix%
set line24=         Bearing ^: %JTAlert_Bearing%
set line25=        Distance ^: %JTAlert_Distance%
set line26=     eQSL member ^: %JTAlert_Eqsl%
set line27=     LoTW member ^: %JTAlert_Lotw%
set line28=       LoTW Date ^: %JTAlert_LotwDate%  (yyyy-mm-dd)

set body="%line1%\n%line%\n%line2%\n%line3%\n%line4%\n%line5%\n%line6%\n%line7%\n%line8%\n%line9%\n%line10%\n%line11%\n%line12%\n%line13%\n%line14%\n%line15%\n%line16%\n%line17%\n%line18%\n%line19%\n%line20%\n%line21%\n%line22%\n%line23%\n%line24%\n%line25%\n%line26%\n%line27%\n%line28%\n%line%\n\n"

set subject="JTAlert generated an alert (%JTAlert_Band% %JTAlert_Mode%, %JTAlert_AlertType% - %JTAlert_AlertTrigger%)"

:: Run CMail
"%cmaildir%\cmail.exe" -starttls -host:%smtpuser%:%smtppwd%@%smtpserver%:%smtpport% -to:%mailto% -from:%smtpsender% -subject:%subject% -body:%body% -timeout:%timeout% -priority:%priority% -d

echo.
echo ErrorLevel returned from CMail == %ERRORLEVEL%
echo.

IF ERRORLEVEL=0 goto :NOERROR

:: If we get here a non-zero errorlevel returned by cmail
echo.
echo *** ERROR CMail returned error code %ERRORLEVEL% ***
echo.
goto :EXITWithPause


:NOERROR
:: Any additional batch processing goes here
goto :EXITNOpause

:EXITWithPause
pause

:EXITNOpause
:: End of batch file herepause


Michael Black
 

And if you don't want to load a 3rd party application I have a powershell script on my QRZ page that should work on Windows 10

Here's a direct link.



Mike W9MDB

On Sunday, July 25, 2021, 03:38:03 PM CDT, Laurie, VK3AMA <hamapps.support@...> wrote:




On 26/07/2021 5:53 am, John Holmes W9ILY wrote:
> I've been trying to get BLAT.exe working for alerts but with no
> success. Is there a newer, simpler way to generate alerts with calls
> identified?
> Thanks.
> John W9ILY

Interesting you mention Blat. I recently went looking for an alternative
as it has some serious shortcomings working in modern Email environments
requiring SSL/TLS to access SMTP servers. I found CMail which enabled my
emails to TLS enabled email accounts to work, which was not possible
with Blat. I have produced an update sample batch file utilizing CMail
for the next JTAlert release. It is included below.

de Laurie VK3AMA

> @echo off
> ::==================================================================================
> :: Description: Sample alert emailer batch file for use with JTAlert
> External Alert.
> :: Requires: CMail command-line emailer. See
> https://www.inveigle.net/cmail
> :: Version: 2.0, 21-Jul-2021
> :: Author: VK3AMA
> ::==================================================================================
>
> ::***********************************************
> :: setup variables for CMail. See https://www.inveigle.net/cmail
> ::
> set cmaildir=
> set smtpsender=
> set smtpserver=
> set smtpport=
> set smtpuser=
> set smtppwd=
> set mailto=
> set priority=1
> set timeout=5
> ::***********************************************
>
> setlocal enabledelayedexpansion
> set argCount=0
> for %%x in (%*) do (
>    set /A argCount+=1
>    set "argVec[!argCount!]=%%~x"
> )
> echo.
> echo Number of passed arguments: %argCount%
> echo.
> for /L %%i in (1,1,%argCount%) do echo %%%%i ^: "!argVec[%%i]!"
> echo -------------------------------------------------
> echo.
> echo JTAlert set environment variables
> echo.
> echo      %%JTAlert_AlertNo%% ^: %JTAlert_AlertNo%
> echo    %%JTAlert_AlertType%% ^: %JTAlert_AlertType%
> echo %%JTAlert_AlertTrigger%% ^: %JTAlert_AlertTrigger%
> echo       %%JTAlert_Decode%% ^: %JTAlert_Decode%
> echo         %%JTAlert_Call%% ^: %JTAlert_Call%
> echo         %%JTAlert_Date%% ^: %JTAlert_Date%
> echo         %%JTAlert_Time%% ^: %JTAlert_Time%
> echo         %%JTAlert_Band%% ^: %JTAlert_Band%
> echo         %%JTAlert_Mode%% ^: %JTAlert_Mode%
> echo          %%JTAlert_QRG%% ^: %JTAlert_QRG%
> echo           %%JTAlert_DF%% ^: %JTAlert_DF%
> echo           %%JTAlert_DB%% ^: %JTAlert_DB%
> echo         %%JTAlert_Dxcc%% ^: %JTAlert_Dxcc%
> echo      %%JTAlert_Country%% ^: %JTAlert_Country%
> echo %%JTAlert_MthonCountry%% ^: %JTAlert_MthonCountry%
> echo       %%JTAlert_CQZone%% ^: %JTAlert_CQZone%
> echo    %%JTAlert_Continent%% ^: %JTAlert_Continent%
> echo        %%JTAlert_State%% ^: %JTAlert_State%
> echo         %%JTAlert_Grid%% ^: %JTAlert_Grid%
> echo   %%JTAlert_IsFFMAGrid%% ^: %JTAlert_IsFFMAGrid%
> echo       %%JTAlert_Prefix%% ^: %JTAlert_Prefix%
> echo      %%JTAlert_Bearing%% ^: %JTAlert_Bearing%
> echo     %%JTAlert_Distance%% ^: %JTAlert_Distance%
> echo         %%JTAlert_Eqsl%% ^: %JTAlert_Eqsl%
> echo         %%JTAlert_Lotw%% ^: %JTAlert_Lotw%
> echo     %%JTAlert_LotwDate%% ^: %JTAlert_LotwDate%
> echo -------------------------------------------------
> echo.
> :: Setup email
> ::
> set
> line=^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
> set line1=JTAlert generated an alert
> set line2=        Alert No ^: %JTAlert_AlertNo%
> set line3=      Alert Type ^: %JTAlert_AlertType%
> set line4=   Alert Trigger ^: %JTAlert_AlertTrigger%
> set line5=     Decode Text ^: %JTAlert_Decode%
> set line6=        Callsign ^: %JTAlert_Call%
> set line7=      Date (UTC) ^: %JTAlert_Date%  (yyyy-mm-dd)
> set line8=      Time (UTC) ^: %JTAlert_Time%
> set line9=            Band ^: %JTAlert_Band%
> set line10=            Mode ^: %JTAlert_Mode%
> set line11=             QRG ^: %JTAlert_QRG%
> set line12=              DF ^: %JTAlert_DF%
> set line13=              DB ^: %JTAlert_DB%
> set line14=          DXCC # ^: %JTAlert_Dxcc%
> set line15=         Country ^: %JTAlert_Country%
> set line16=Marathon Country ^: %JTAlert_MthonCountry%
> set line17=         CQ Zone ^: %JTAlert_CQZone%
> set line18=       Continent ^: %JTAlert_Continent%
> set line19=           State ^: %JTAlert_State%
> set line20=     VE Province ^: %JTAlert_Province%
> set line21=            Grid ^: %JTAlert_Grid%
> set line22=    Is FFMA Grid ^: %JTAlert_IsFFMAGrid%
> set line23=          Prefix ^: %JTAlert_Prefix%
> set line24=         Bearing ^: %JTAlert_Bearing%
> set line25=        Distance ^: %JTAlert_Distance%
> set line26=     eQSL member ^: %JTAlert_Eqsl%
> set line27=     LoTW member ^: %JTAlert_Lotw%
> set line28=       LoTW Date ^: %JTAlert_LotwDate%  (yyyy-mm-dd)
>
> set
> body="%line1%\n%line%\n%line2%\n%line3%\n%line4%\n%line5%\n%line6%\n%line7%\n%line8%\n%line9%\n%line10%\n%line11%\n%line12%\n%line13%\n%line14%\n%line15%\n%line16%\n%line17%\n%line18%\n%line19%\n%line20%\n%line21%\n%line22%\n%line23%\n%line24%\n%line25%\n%line26%\n%line27%\n%line28%\n%line%\n\n"
>
> set subject="JTAlert generated an alert (%JTAlert_Band%
> %JTAlert_Mode%, %JTAlert_AlertType% - %JTAlert_AlertTrigger%)"
>
> :: Run CMail
> "%cmaildir%\cmail.exe" -starttls
> -host:%smtpuser%:%smtppwd%@%smtpserver%:%smtpport% -to:%mailto%
> -from:%smtpsender% -subject:%subject% -body:%body% -timeout:%timeout%
> -priority:%priority% -d
>
> echo.
> echo ErrorLevel returned from CMail == %ERRORLEVEL%
> echo.
>
> IF ERRORLEVEL=0 goto :NOERROR
>
> :: If we get here a non-zero errorlevel returned by cmail
> echo.
> echo *** ERROR CMail returned error code %ERRORLEVEL% ***
> echo.
> goto :EXITWithPause
>
>
> :NOERROR
> :: Any additional batch processing goes here
> goto :EXITNOpause
>
> :EXITWithPause
> pause
>
> :EXITNOpause
> :: End of batch file herepause







John Holmes W9ILY
 

Hi Mike.
I currently have an alert being sent to me iPhone thanks to your powershell script. One question, though. I receive a single alert on the phone even though the same call is alerted by JTAlert multiple times. Is this correct and, if so, can it be modified?
Thanks for your help!
73,
John W9ILY


HamApps Support (VK3AMA)
 

On 27/07/2021 6:34 am, John Holmes W9ILY wrote:
I currently have an alert being sent to me iPhone thanks to your powershell script. One question, though. I receive a single alert on the phone even though the same call is alerted by JTAlert multiple times. Is this correct and, if so, can it be modified?
Thanks for your help!
73,
John W9ILY

JTAlert deliberately avoids repeating the User Alert for the same Callsign/Decode. The repeat interval can be set as low as 15 minutes so that the same Callsign/Decode will only trigger the Alert, that is sending you a phone message, once every 15 minutes. That is done to avoid spamming the Alert. Not much point getting a phone message or email every 30 seconds (FT8) or 15 seconds (FT4) for the same Callsign/Decode.

Perhaps the minimum 15 minutes could be lowered. I have never had a request to alter it.

de Laurie VK3AMA


John Holmes W9ILY
 

Thanks, Laurie. Lowering that time isn't what I had in mind. A single alert is perfect.
John